Build Information
Successful build of GeoProjector, reference main (41587f
), with Swift 6.1 for Linux on 28 Apr 2025 02:12:13 UTC.
Swift 6 data race errors: 3
Build Command
bash -c docker run --pull=always --rm -v "checkouts-4609320-2":/host -w "$PWD" registry.gitlab.com/finestructure/spi-images:basic-6.1-latest swift build --triple x86_64-unknown-linux-gnu -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 2>&1
Build Log
========================================
RunAll
========================================
Builder version: 4.61.0
Interrupt handler set up.
========================================
Checkout
========================================
Clone URL: https://github.com/maparoni/GeoProjector.git
Reference: main
Initialized empty Git repository in /host/spi-builder-workspace/.git/
hint: Using 'master' as the name for the initial branch. This default branch name
hint: is subject to change. To configure the initial branch name to use in all
hint: of your new repositories, which will suppress this warning, call:
hint:
hint: git config --global init.defaultBranch <name>
hint:
hint: Names commonly chosen instead of 'master' are 'main', 'trunk' and
hint: 'development'. The just-created branch can be renamed via this command:
hint:
hint: git branch -m <name>
From https://github.com/maparoni/GeoProjector
* branch main -> FETCH_HEAD
* [new branch] main -> origin/main
HEAD is now at 41587f7 Fix regression in GHA by building for iOS simulator instead
Cloned https://github.com/maparoni/GeoProjector.git
Revision (git rev-parse @):
41587f7cd1b00b0a8930495ab8eb9bce28073c1a
SUCCESS checkout https://github.com/maparoni/GeoProjector.git at main
========================================
Build
========================================
Selected platform: linux
Swift version: 6.1
Building package at path: $PWD
https://github.com/maparoni/GeoProjector.git
https://github.com/maparoni/GeoProjector.git
WARNING: environment variable SUPPRESS_SWIFT_6_FLAGS is not set
{
"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" : "/host/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" : "GeoDrawer",
"targets" : [
"GeoDrawer"
],
"type" : {
"library" : [
"automatic"
]
}
}
],
"targets" : [
{
"c99name" : "GeoProjectorTests",
"module_type" : "SwiftTarget",
"name" : "GeoProjectorTests",
"path" : "Tests/GeoProjectorTests",
"sources" : [
"MapBoundsTests.swift",
"ProjectionTests.swift",
"TranslationTests.swift"
],
"target_dependencies" : [
"GeoProjector"
],
"type" : "test"
},
{
"c99name" : "GeoProjector",
"module_type" : "SwiftTarget",
"name" : "GeoProjector",
"path" : "Sources/GeoProjector",
"product_dependencies" : [
"GeoJSONKit",
"GeoJSONKitTurf"
],
"product_memberships" : [
"GeoProjector",
"GeoDrawer"
],
"sources" : [
"Interpolator.swift",
"Projection.swift",
"ProjectionMode.swift",
"Projections+Azimuthal.swift",
"Projections+Cylindrical.swift",
"Projections+Orthographic.swift",
"Projections+Pseudocylindrical.swift",
"Projections.swift",
"Structs.swift"
],
"type" : "library"
},
{
"c99name" : "GeoDrawer",
"module_type" : "SwiftTarget",
"name" : "GeoDrawer",
"path" : "Sources/GeoDrawer",
"product_dependencies" : [
"Algorithms"
],
"product_memberships" : [
"GeoDrawer"
],
"sources" : [
"GeoDrawer+CoreGraphics.swift",
"GeoDrawer+Image.swift",
"GeoDrawer.swift",
"GeoJSON+Continents.swift",
"GeoMap+AppKit.swift",
"GeoMap+UIKit.swift",
"styling/GeoDrawerContent+Style.swift"
],
"target_dependencies" : [
"GeoProjector"
],
"type" : "library"
}
],
"tools_version" : "5.7"
}
Running build ...
bash -c docker run --pull=always --rm -v "checkouts-4609320-2":/host -w "$PWD" registry.gitlab.com/finestructure/spi-images:basic-6.1-latest swift build --triple x86_64-unknown-linux-gnu -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 2>&1
basic-6.1-latest: Pulling from finestructure/spi-images
Digest: sha256:3bdcac04179f4ed3e5b8e9dbd6e74bbf5ebc0f4fde48bbaad7d1e5c757e65bcb
Status: Image is up to date for registry.gitlab.com/finestructure/spi-images:basic-6.1-latest
Fetching https://github.com/maparoni/geojsonkit.git
Fetching https://github.com/apple/swift-algorithms.git
Fetching https://github.com/maparoni/geojsonkit-turf
[1/3084] Fetching geojsonkit-turf
[1574/3446] Fetching geojsonkit-turf, geojsonkit
[1933/9349] Fetching geojsonkit-turf, geojsonkit, swift-algorithms
Fetched https://github.com/apple/swift-algorithms.git from cache (0.90s)
[3446/3446] Fetching geojsonkit-turf, geojsonkit
Fetched https://github.com/maparoni/geojsonkit-turf from cache (1.07s)
Fetched https://github.com/maparoni/geojsonkit.git from cache (1.09s)
Computing version for https://github.com/apple/swift-algorithms.git
Computed https://github.com/apple/swift-algorithms.git at 1.2.1 (2.02s)
Fetching https://github.com/apple/swift-numerics.git
[1/5674] Fetching swift-numerics
Fetched https://github.com/apple/swift-numerics.git from cache (0.60s)
Computing version for https://github.com/apple/swift-numerics.git
Computed https://github.com/apple/swift-numerics.git at 1.0.3 (1.48s)
Computing version for https://github.com/maparoni/geojsonkit.git
Computed https://github.com/maparoni/geojsonkit.git at 0.6.0 (0.69s)
Computing version for https://github.com/maparoni/geojsonkit-turf
Computed https://github.com/maparoni/geojsonkit-turf at 0.4.3 (0.55s)
Fetching https://github.com/apple/swift-argument-parser
[1/14950] Fetching swift-argument-parser
Fetched https://github.com/apple/swift-argument-parser from cache (1.07s)
Computing version for https://github.com/apple/swift-argument-parser
Computed https://github.com/apple/swift-argument-parser at 1.5.0 (2.02s)
Creating working copy for https://github.com/maparoni/geojsonkit.git
Working copy of https://github.com/maparoni/geojsonkit.git resolved at 0.6.0
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/apple/swift-argument-parser
Working copy of https://github.com/apple/swift-argument-parser resolved at 1.5.0
Creating working copy for https://github.com/apple/swift-numerics.git
Working copy of https://github.com/apple/swift-numerics.git resolved at 1.0.3
Creating working copy for https://github.com/maparoni/geojsonkit-turf
Working copy of https://github.com/maparoni/geojsonkit-turf resolved at 0.4.3
[1/1] Compiling plugin GenerateManual
Building for debugging...
[1/9] Write sources
[7/9] Compiling _NumericsShims _NumericsShims.c
[8/9] Write swift-version-24593BA9C3E375BF.txt
[10/22] Emitting module RealModule
[11/22] Compiling RealModule AlgebraicField.swift
[12/22] Compiling RealModule ApproximateEquality.swift
[13/23] Compiling RealModule RealFunctions.swift
[14/23] Compiling RealModule AugmentedArithmetic.swift
[15/23] Compiling RealModule Double+Real.swift
[16/23] Compiling RealModule Float16+Real.swift
[17/23] Compiling RealModule Float80+Real.swift
[18/23] Compiling RealModule Real.swift
[19/23] Compiling RealModule ElementaryFunctions.swift
[20/23] Compiling RealModule Float+Real.swift
[22/49] Compiling Algorithms RandomSample.swift
[23/49] Compiling Algorithms Reductions.swift
[24/49] Compiling Algorithms Rotate.swift
[25/49] Compiling Algorithms Split.swift
[26/49] Compiling Algorithms Stride.swift
[27/49] Compiling Algorithms Suffix.swift
[28/52] Emitting module GeoJSONKit
[29/52] Compiling Algorithms Trim.swift
[30/52] Compiling Algorithms Unique.swift
[31/52] Compiling Algorithms Windows.swift
[32/52] Compiling Algorithms Compacted.swift
[33/52] Compiling Algorithms Cycle.swift
[34/52] Compiling Algorithms EitherSequence.swift
[35/52] Compiling Algorithms FirstNonNil.swift
[36/52] Compiling Algorithms Joined.swift
[37/52] Compiling Algorithms Keyed.swift
[38/52] Compiling Algorithms MinMax.swift
[39/52] Compiling Algorithms Partition.swift
[40/52] Compiling Algorithms Permutations.swift
[41/52] Compiling Algorithms Product.swift
[42/52] Compiling Algorithms FlattenCollection.swift
[43/52] Compiling Algorithms Grouped.swift
[44/52] Compiling Algorithms Indexed.swift
[45/52] Compiling Algorithms Intersperse.swift
[46/52] Compiling Algorithms AdjacentPairs.swift
[47/52] Compiling Algorithms Chain.swift
[48/52] Compiling Algorithms Chunked.swift
[49/52] Compiling Algorithms Combinations.swift
[50/52] Compiling GeoJSONKit GeoJSON+Codable.swift
[51/52] Compiling GeoJSONKit GeoJSON.swift
[52/53] Emitting module Algorithms
[55/71] Emitting module GeoJSONKitTurf
[56/73] Compiling GeoJSONKitTurf ClosestCoordinate.swift
[57/73] Compiling GeoJSONKitTurf ConvexHull.swift
[58/73] Compiling GeoJSONKitTurf CoreLocation.swift
[59/73] Compiling GeoJSONKitTurf RadianCoordinate2D.swift
[60/73] Compiling GeoJSONKitTurf Simplify.swift
[61/73] Compiling GeoJSONKitTurf Turf+BoundingBox.swift
[62/73] Compiling GeoJSONKitTurf Turf+GeometryObject.swift
[63/73] Compiling GeoJSONKitTurf Spline.swift
[64/73] Compiling GeoJSONKitTurf SutherlandHodgeman.swift
[65/73] Compiling GeoJSONKitTurf GeoJSON+Helpers.swift
[66/73] Compiling GeoJSONKitTurf GeoJSON+LineString+EncodedPolyline.swift
[67/73] Compiling GeoJSONKitTurf Position+Helpers.swift
[68/73] Compiling GeoJSONKitTurf DouglasPeucker.swift
[69/73] Compiling GeoJSONKitTurf MonotoneChain.swift
[70/73] Compiling GeoJSONKitTurf Turf+LineString.swift
[71/73] Compiling GeoJSONKitTurf Turf+LinearRing.swift
[72/73] Compiling GeoJSONKitTurf Turf+Polygon.swift
[73/73] Compiling GeoJSONKitTurf Turf.swift
[75/83] Compiling GeoProjector Projections.swift
[76/84] Emitting module GeoProjector
/host/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) {
/host/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) {
/host/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) {
[77/84] Compiling GeoProjector ProjectionMode.swift
[78/84] Compiling GeoProjector Interpolator.swift
[79/84] Compiling GeoProjector Projection.swift
[80/84] Compiling GeoProjector Projections+Orthographic.swift
[81/84] Compiling GeoProjector Projections+Pseudocylindrical.swift
[82/84] Compiling GeoProjector Projections+Cylindrical.swift
[83/84] Compiling GeoProjector Projections+Azimuthal.swift
[84/84] Compiling GeoProjector Structs.swift
/host/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) {
/host/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) {
/host/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) {
[86/93] Compiling GeoDrawer GeoMap+AppKit.swift
[87/93] Compiling GeoDrawer GeoMap+UIKit.swift
[88/93] Compiling GeoDrawer GeoJSON+Continents.swift
[89/93] Compiling GeoDrawer GeoDrawerContent+Style.swift
[90/93] Compiling GeoDrawer GeoDrawer+Image.swift
[91/93] Compiling GeoDrawer GeoDrawer+CoreGraphics.swift
[92/93] Emitting module GeoDrawer
[93/93] Compiling GeoDrawer GeoDrawer.swift
/host/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)
/host/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) {
/host/spi-builder-workspace/Sources/GeoDrawer/GeoDrawer.swift:246:15: warning: type 'GeoDrawer.OffsettedElement<GeoDrawer.ProjectedContent>' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
230 | }
231 |
232 | struct OffsettedElement<Element: Equatable>: Comparable, Equatable {
| `- note: consider making generic struct 'OffsettedElement' conform to the 'Sendable' protocol
233 | let offset: Int
234 | let element: Element
:
244 |
245 | func projectInParallel(_ contents: [Content]) async throws -> [ProjectedContent] {
246 | 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
247 | let chunks = Array(contents.enumerated()).chunks(ofCount: 25)
248 | for chunk in chunks {
/host/spi-builder-workspace/Sources/GeoDrawer/GeoDrawer.swift:246:84: warning: type 'GeoDrawer.OffsettedElement<GeoDrawer.ProjectedContent>' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
230 | }
231 |
232 | struct OffsettedElement<Element: Equatable>: Comparable, Equatable {
| `- note: consider making generic struct 'OffsettedElement' conform to the 'Sendable' protocol
233 | let offset: Int
234 | let element: Element
:
244 |
245 | func projectInParallel(_ contents: [Content]) async throws -> [ProjectedContent] {
246 | 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
247 | let chunks = Array(contents.enumerated()).chunks(ofCount: 25)
248 | for chunk in chunks {
/host/spi-builder-workspace/Sources/GeoDrawer/GeoDrawer.swift:249:27: warning: type 'GeoDrawer.OffsettedElement<GeoDrawer.ProjectedContent>' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
230 | }
231 |
232 | struct OffsettedElement<Element: Equatable>: Comparable, Equatable {
| `- note: consider making generic struct 'OffsettedElement' conform to the 'Sendable' protocol
233 | let offset: Int
234 | let element: Element
:
247 | let chunks = Array(contents.enumerated()).chunks(ofCount: 25)
248 | for chunk in chunks {
249 | 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
250 | await Task {
251 | return chunk.compactMap { input in
/host/spi-builder-workspace/Sources/GeoDrawer/GeoDrawer.swift:250:17: warning: type 'GeoDrawer.OffsettedElement<GeoDrawer.ProjectedContent>' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
230 | }
231 |
232 | struct OffsettedElement<Element: Equatable>: Comparable, Equatable {
| `- note: consider making generic struct 'OffsettedElement' conform to the 'Sendable' protocol
233 | let offset: Int
234 | let element: Element
:
248 | for chunk in chunks {
249 | let added = group.addTaskUnlessCancelled {
250 | 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
251 | return chunk.compactMap { input in
252 | guard !Task.isCancelled, let projected = project(input.element) else { return nil }
/host/spi-builder-workspace/Sources/GeoDrawer/GeoDrawer.swift:250:17: warning: type 'GeoDrawer.OffsettedElement<GeoDrawer.ProjectedContent>' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
230 | }
231 |
232 | struct OffsettedElement<Element: Equatable>: Comparable, Equatable {
| `- note: consider making generic struct 'OffsettedElement' conform to the 'Sendable' protocol
233 | let offset: Int
234 | let element: Element
:
248 | for chunk in chunks {
249 | let added = group.addTaskUnlessCancelled {
250 | 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
251 | return chunk.compactMap { input in
252 | guard !Task.isCancelled, let projected = project(input.element) else { return nil }
/host/spi-builder-workspace/Sources/GeoDrawer/GeoDrawer.swift:255:13: warning: type 'GeoDrawer.OffsettedElement<GeoDrawer.ProjectedContent>' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
230 | }
231 |
232 | struct OffsettedElement<Element: Equatable>: Comparable, Equatable {
| `- note: consider making generic struct 'OffsettedElement' conform to the 'Sendable' protocol
233 | let offset: Int
234 | let element: Element
:
253 | return OffsettedElement(offset: input.offset, element: projected)
254 | }
255 | }.value
| `- warning: type 'GeoDrawer.OffsettedElement<GeoDrawer.ProjectedContent>' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
256 | }
257 | if !added {
/host/spi-builder-workspace/Sources/GeoDrawer/GeoDrawer.swift:262:38: warning: type 'GeoDrawer.OffsettedElement<GeoDrawer.ProjectedContent>' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
230 | }
231 |
232 | struct OffsettedElement<Element: Equatable>: Comparable, Equatable {
| `- note: consider making generic struct 'OffsettedElement' conform to the 'Sendable' protocol
233 | let offset: Int
234 | let element: Element
:
260 | }
261 |
262 | 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
263 | return unsorted.sorted(by: <).map(\.element)
264 | }
/host/spi-builder-workspace/Sources/GeoDrawer/GeoDrawer.swift:262:55: warning: type 'GeoDrawer.OffsettedElement<GeoDrawer.ProjectedContent>' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
230 | }
231 |
232 | struct OffsettedElement<Element: Equatable>: Comparable, Equatable {
| `- note: consider making generic struct 'OffsettedElement' conform to the 'Sendable' protocol
233 | let offset: Int
234 | let element: Element
:
260 | }
261 |
262 | 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
263 | return unsorted.sorted(by: <).map(\.element)
264 | }
/host/spi-builder-workspace/Sources/GeoDrawer/GeoDrawer.swift:262:55: warning: type 'GeoDrawer.OffsettedElement<GeoDrawer.ProjectedContent>' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
230 | }
231 |
232 | struct OffsettedElement<Element: Equatable>: Comparable, Equatable {
| `- note: consider making generic struct 'OffsettedElement' conform to the 'Sendable' protocol
233 | let offset: Int
234 | let element: Element
:
260 | }
261 |
262 | 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
263 | return unsorted.sorted(by: <).map(\.element)
264 | }
/host/spi-builder-workspace/Sources/GeoDrawer/GeoDrawer.swift:249: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
247 | let chunks = Array(contents.enumerated()).chunks(ofCount: 25)
248 | for chunk in chunks {
249 | 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
250 | await Task {
251 | return chunk.compactMap { input in
| `- note: closure captures non-Sendable 'chunk'
252 | guard !Task.isCancelled, let projected = project(input.element) else { return nil }
| `- note: closure captures non-Sendable 'self'
253 | return OffsettedElement(offset: input.offset, element: projected)
254 | }
/host/spi-builder-workspace/Sources/GeoDrawer/GeoDrawer.swift:250: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
248 | for chunk in chunks {
249 | let added = group.addTaskUnlessCancelled {
250 | 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
251 | return chunk.compactMap { input in
| `- note: closure captures non-Sendable 'chunk'
252 | guard !Task.isCancelled, let projected = project(input.element) else { return nil }
| `- note: closure captures non-Sendable 'self'
253 | return OffsettedElement(offset: input.offset, element: projected)
254 | }
Build complete! (31.14s)
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" : "/host/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" : "GeoDrawer",
"targets" : [
"GeoDrawer"
],
"type" : {
"library" : [
"automatic"
]
}
}
],
"targets" : [
{
"c99name" : "GeoProjectorTests",
"module_type" : "SwiftTarget",
"name" : "GeoProjectorTests",
"path" : "Tests/GeoProjectorTests",
"sources" : [
"MapBoundsTests.swift",
"ProjectionTests.swift",
"TranslationTests.swift"
],
"target_dependencies" : [
"GeoProjector"
],
"type" : "test"
},
{
"c99name" : "GeoProjector",
"module_type" : "SwiftTarget",
"name" : "GeoProjector",
"path" : "Sources/GeoProjector",
"product_dependencies" : [
"GeoJSONKit",
"GeoJSONKitTurf"
],
"product_memberships" : [
"GeoProjector",
"GeoDrawer"
],
"sources" : [
"Interpolator.swift",
"Projection.swift",
"ProjectionMode.swift",
"Projections+Azimuthal.swift",
"Projections+Cylindrical.swift",
"Projections+Orthographic.swift",
"Projections+Pseudocylindrical.swift",
"Projections.swift",
"Structs.swift"
],
"type" : "library"
},
{
"c99name" : "GeoDrawer",
"module_type" : "SwiftTarget",
"name" : "GeoDrawer",
"path" : "Sources/GeoDrawer",
"product_dependencies" : [
"Algorithms"
],
"product_memberships" : [
"GeoDrawer"
],
"sources" : [
"GeoDrawer+CoreGraphics.swift",
"GeoDrawer+Image.swift",
"GeoDrawer.swift",
"GeoJSON+Continents.swift",
"GeoMap+AppKit.swift",
"GeoMap+UIKit.swift",
"styling/GeoDrawerContent+Style.swift"
],
"target_dependencies" : [
"GeoProjector"
],
"type" : "library"
}
],
"tools_version" : "5.7"
}
basic-6.1-latest: Pulling from finestructure/spi-images
Digest: sha256:3bdcac04179f4ed3e5b8e9dbd6e74bbf5ebc0f4fde48bbaad7d1e5c757e65bcb
Status: Image is up to date for registry.gitlab.com/finestructure/spi-images:basic-6.1-latest
Done.