The Swift Package Index logo.Swift Package Index

Build Information

Failed to build Cluster, reference master (1cb20c), with Swift 6.1 for macOS (SPM) on 8 Jul 2025 22:27:08 UTC.

Build Command

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

Build Log

========================================
RunAll
========================================
Builder version: 4.64.0
Interrupt handler set up.
========================================
Checkout
========================================
Clone URL: https://github.com/efremidze/Cluster.git
Reference: master
Initialized empty Git repository in /Users/admin/builder/spi-builder-workspace/.git/
From https://github.com/efremidze/Cluster
 * branch            master     -> FETCH_HEAD
 * [new branch]      master     -> origin/master
HEAD is now at 1cb20cb Upgrade Swift Package (#143)
Cloned https://github.com/efremidze/Cluster.git
Revision (git rev-parse @):
1cb20cb1e256c13202a9c370558c2c7ebcdb41ba
SUCCESS checkout https://github.com/efremidze/Cluster.git at master
========================================
ResolveProductDependencies
========================================
Resolving dependencies ...
{
  "identity": ".resolve-product-dependencies",
  "name": "resolve-dependencies",
  "url": "/Users/admin/builder/spi-builder-workspace/.resolve-product-dependencies",
  "version": "unspecified",
  "path": "/Users/admin/builder/spi-builder-workspace/.resolve-product-dependencies",
  "dependencies": [
    {
      "identity": "cluster",
      "name": "Cluster",
      "url": "https://github.com/efremidze/Cluster.git",
      "version": "unspecified",
      "path": "/Users/admin/builder/spi-builder-workspace/.resolve-product-dependencies/.build/checkouts/Cluster",
      "dependencies": [
      ]
    }
  ]
}
Fetching https://github.com/efremidze/Cluster.git
[1/1959] Fetching cluster
Fetched https://github.com/efremidze/Cluster.git from cache (1.11s)
Creating working copy for https://github.com/efremidze/Cluster.git
Working copy of https://github.com/efremidze/Cluster.git resolved at master (1cb20cb)
warning: '.resolve-product-dependencies': dependency 'cluster' is not used by any target
Found 0 product dependencies
========================================
Build
========================================
Selected platform:         macosSpm
Swift version:             6.1
Building package at path:  $PWD
https://github.com/efremidze/Cluster.git
https://github.com/efremidze/Cluster.git
{
  "dependencies" : [
  ],
  "manifest_display_name" : "Cluster",
  "name" : "Cluster",
  "path" : "/Users/admin/builder/spi-builder-workspace",
  "platforms" : [
    {
      "name" : "ios",
      "version" : "12.0"
    }
  ],
  "products" : [
    {
      "name" : "Cluster",
      "targets" : [
        "Cluster"
      ],
      "type" : {
        "library" : [
          "automatic"
        ]
      }
    }
  ],
  "targets" : [
    {
      "c99name" : "ClusterTests",
      "module_type" : "SwiftTarget",
      "name" : "ClusterTests",
      "path" : "Tests",
      "sources" : [
        "Tests.swift"
      ],
      "target_dependencies" : [
        "Cluster"
      ],
      "type" : "test"
    },
    {
      "c99name" : "Cluster",
      "module_type" : "SwiftTarget",
      "name" : "Cluster",
      "path" : "Sources",
      "product_memberships" : [
        "Cluster"
      ],
      "sources" : [
        "Annotation.swift",
        "Atomic.swift",
        "Cluster.swift",
        "Extensions.swift",
        "QuadTree.swift"
      ],
      "type" : "library"
    }
  ],
  "tools_version" : "5.9"
}
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
Building for debugging...
[0/2] Write sources
[1/2] Write swift-version-2F0A5646E1D333AE.txt
[3/8] Compiling Cluster QuadTree.swift
[4/8] Compiling Cluster Extensions.swift
/Users/admin/builder/spi-builder-workspace/Sources/Extensions.swift:27:1: warning: extension declares a conformance of imported type 'CLLocationCoordinate2D' to imported protocols 'Hashable', 'Equatable'; this will not behave correctly if the owners of 'CoreLocation' introduce this conformance in the future
 25 | let MKMapPointMax = MKMapPoint(CLLocationCoordinate2DMax)
 26 |
 27 | extension CLLocationCoordinate2D: Hashable {
    | |- warning: extension declares a conformance of imported type 'CLLocationCoordinate2D' to imported protocols 'Hashable', 'Equatable'; this will not behave correctly if the owners of 'CoreLocation' introduce this conformance in the future
    | `- note: add '@retroactive' to silence this warning
 28 |     public func hash(into hasher: inout Hasher) {
 29 |         hasher.combine(latitude)
/Users/admin/builder/spi-builder-workspace/Sources/Extensions.swift:108:13: warning: capture of 'block' with non-sendable type '(BlockOperation) -> Void' in a '@Sendable' closure
106 |         operation.addExecutionBlock { [weak operation] in
107 |             guard let operation = operation else { return }
108 |             block(operation)
    |             |- warning: capture of 'block' with non-sendable type '(BlockOperation) -> Void' in a '@Sendable' closure
    |             `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
109 |         }
110 |         self.addOperation(operation)
[5/8] Compiling Cluster Cluster.swift
/Users/admin/builder/spi-builder-workspace/Sources/Cluster.swift:161:13: warning: capture of 'self' with non-sendable type 'ClusterManager?' in a '@Sendable' closure
 42 | }
 43 |
 44 | open class ClusterManager {
    |            `- note: class 'ClusterManager' does not conform to the 'Sendable' protocol
 45 |
 46 |     var tree = QuadTree(rect: .world)
    :
159 |         operationQueue.cancelAllOperations()
160 |         dispatchQueue.async(flags: .barrier) { [weak self] in
161 |             self?.tree.add(annotation)
    |             `- warning: capture of 'self' with non-sendable type 'ClusterManager?' in a '@Sendable' closure
162 |         }
163 |     }
/Users/admin/builder/spi-builder-workspace/Sources/Cluster.swift:161:28: warning: capture of 'annotation' with non-sendable type 'any MKAnnotation' in a '@Sendable' closure
159 |         operationQueue.cancelAllOperations()
160 |         dispatchQueue.async(flags: .barrier) { [weak self] in
161 |             self?.tree.add(annotation)
    |                            `- warning: capture of 'annotation' with non-sendable type 'any MKAnnotation' in a '@Sendable' closure
162 |         }
163 |     }
/Applications/Xcode-16.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX15.4.sdk/System/Library/Frameworks/MapKit.framework/Headers/MKAnnotation.h:14:11: note: protocol 'MKAnnotation' does not conform to the 'Sendable' protocol
12 | NS_ASSUME_NONNULL_BEGIN
13 |
14 | @protocol MKAnnotation <NSObject>
   |           `- note: protocol 'MKAnnotation' does not conform to the 'Sendable' protocol
15 |
16 | // Center latitude and longitude of the annotation view.
/Users/admin/builder/spi-builder-workspace/Sources/Cluster.swift:10:1: warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'MapKit'
  8 |
  9 | import CoreLocation
 10 | import MapKit
    | `- warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'MapKit'
 11 |
 12 | public protocol ClusterManagerDelegate: AnyObject {
/Users/admin/builder/spi-builder-workspace/Sources/Cluster.swift:174:31: warning: capture of 'annotations' with non-sendable type '[any MKAnnotation]' in a '@Sendable' closure
172 |         operationQueue.cancelAllOperations()
173 |         dispatchQueue.async(flags: .barrier) { [weak self] in
174 |             for annotation in annotations {
    |                               `- warning: capture of 'annotations' with non-sendable type '[any MKAnnotation]' in a '@Sendable' closure
175 |                 self?.tree.add(annotation)
176 |             }
/Applications/Xcode-16.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX15.4.sdk/System/Library/Frameworks/MapKit.framework/Headers/MKAnnotation.h:14:11: note: protocol 'MKAnnotation' does not conform to the 'Sendable' protocol
12 | NS_ASSUME_NONNULL_BEGIN
13 |
14 | @protocol MKAnnotation <NSObject>
   |           `- note: protocol 'MKAnnotation' does not conform to the 'Sendable' protocol
15 |
16 | // Center latitude and longitude of the annotation view.
/Users/admin/builder/spi-builder-workspace/Sources/Cluster.swift:175:17: warning: capture of 'self' with non-sendable type 'ClusterManager?' in a '@Sendable' closure
 42 | }
 43 |
 44 | open class ClusterManager {
    |            `- note: class 'ClusterManager' does not conform to the 'Sendable' protocol
 45 |
 46 |     var tree = QuadTree(rect: .world)
    :
173 |         dispatchQueue.async(flags: .barrier) { [weak self] in
174 |             for annotation in annotations {
175 |                 self?.tree.add(annotation)
    |                 `- warning: capture of 'self' with non-sendable type 'ClusterManager?' in a '@Sendable' closure
176 |             }
177 |         }
/Users/admin/builder/spi-builder-workspace/Sources/Cluster.swift:189:13: warning: capture of 'self' with non-sendable type 'ClusterManager?' in a '@Sendable' closure
 42 | }
 43 |
 44 | open class ClusterManager {
    |            `- note: class 'ClusterManager' does not conform to the 'Sendable' protocol
 45 |
 46 |     var tree = QuadTree(rect: .world)
    :
187 |         operationQueue.cancelAllOperations()
188 |         dispatchQueue.async(flags: .barrier) { [weak self] in
189 |             self?.tree.remove(annotation)
    |             `- warning: capture of 'self' with non-sendable type 'ClusterManager?' in a '@Sendable' closure
190 |         }
191 |     }
/Users/admin/builder/spi-builder-workspace/Sources/Cluster.swift:189:31: warning: capture of 'annotation' with non-sendable type 'any MKAnnotation' in a '@Sendable' closure
187 |         operationQueue.cancelAllOperations()
188 |         dispatchQueue.async(flags: .barrier) { [weak self] in
189 |             self?.tree.remove(annotation)
    |                               `- warning: capture of 'annotation' with non-sendable type 'any MKAnnotation' in a '@Sendable' closure
190 |         }
191 |     }
/Applications/Xcode-16.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX15.4.sdk/System/Library/Frameworks/MapKit.framework/Headers/MKAnnotation.h:14:11: note: protocol 'MKAnnotation' does not conform to the 'Sendable' protocol
12 | NS_ASSUME_NONNULL_BEGIN
13 |
14 | @protocol MKAnnotation <NSObject>
   |           `- note: protocol 'MKAnnotation' does not conform to the 'Sendable' protocol
15 |
16 | // Center latitude and longitude of the annotation view.
/Users/admin/builder/spi-builder-workspace/Sources/Cluster.swift:202:31: warning: capture of 'annotations' with non-sendable type '[any MKAnnotation]' in a '@Sendable' closure
200 |         operationQueue.cancelAllOperations()
201 |         dispatchQueue.async(flags: .barrier) { [weak self] in
202 |             for annotation in annotations {
    |                               `- warning: capture of 'annotations' with non-sendable type '[any MKAnnotation]' in a '@Sendable' closure
203 |                 self?.tree.remove(annotation)
204 |             }
/Applications/Xcode-16.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX15.4.sdk/System/Library/Frameworks/MapKit.framework/Headers/MKAnnotation.h:14:11: note: protocol 'MKAnnotation' does not conform to the 'Sendable' protocol
12 | NS_ASSUME_NONNULL_BEGIN
13 |
14 | @protocol MKAnnotation <NSObject>
   |           `- note: protocol 'MKAnnotation' does not conform to the 'Sendable' protocol
15 |
16 | // Center latitude and longitude of the annotation view.
/Users/admin/builder/spi-builder-workspace/Sources/Cluster.swift:203:17: warning: capture of 'self' with non-sendable type 'ClusterManager?' in a '@Sendable' closure
 42 | }
 43 |
 44 | open class ClusterManager {
    |            `- note: class 'ClusterManager' does not conform to the 'Sendable' protocol
 45 |
 46 |     var tree = QuadTree(rect: .world)
    :
201 |         dispatchQueue.async(flags: .barrier) { [weak self] in
202 |             for annotation in annotations {
203 |                 self?.tree.remove(annotation)
    |                 `- warning: capture of 'self' with non-sendable type 'ClusterManager?' in a '@Sendable' closure
204 |             }
205 |         }
/Users/admin/builder/spi-builder-workspace/Sources/Cluster.swift:214:13: warning: capture of 'self' with non-sendable type 'ClusterManager?' in a '@Sendable' closure
 42 | }
 43 |
 44 | open class ClusterManager {
    |            `- note: class 'ClusterManager' does not conform to the 'Sendable' protocol
 45 |
 46 |     var tree = QuadTree(rect: .world)
    :
212 |         operationQueue.cancelAllOperations()
213 |         dispatchQueue.async(flags: .barrier) { [weak self] in
214 |             self?.tree = QuadTree(rect: .world)
    |             `- warning: capture of 'self' with non-sendable type 'ClusterManager?' in a '@Sendable' closure
215 |         }
216 |     }
/Users/admin/builder/spi-builder-workspace/Sources/Cluster.swift:238:33: warning: main actor-isolated property 'bounds' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
235 |         - completion: A closure to be executed when the reload finishes. The closure has no return value and takes a single Boolean argument that indicates whether or not the reload actually finished before the completion handler was called.
236 |      */
237 |     open func reload(mapView: MKMapView, completion: @escaping (Bool) -> Void = { finished in }) {
    |               `- note: add '@MainActor' to make instance method 'reload(mapView:completion:)' part of global actor 'MainActor'
238 |         let mapBounds = mapView.bounds
    |                                 `- warning: main actor-isolated property 'bounds' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
239 |         let visibleMapRect = mapView.visibleMapRect
240 |         let visibleMapRectWidth = visibleMapRect.size.width
/Applications/Xcode-16.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX15.4.sdk/System/Library/Frameworks/AppKit.framework/Headers/NSView.h:139:18: note: property declared here
137 | - (void)scaleUnitSquareToSize:(NSSize)newUnitSize;
138 | - (void)rotateByAngle:(CGFloat)angle;
139 | @property NSRect bounds;
    |                  `- note: property declared here
140 |
141 | @property (getter=isFlipped, readonly) BOOL flipped;
/Users/admin/builder/spi-builder-workspace/Sources/Cluster.swift:239:38: warning: main actor-isolated property 'visibleMapRect' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
235 |         - completion: A closure to be executed when the reload finishes. The closure has no return value and takes a single Boolean argument that indicates whether or not the reload actually finished before the completion handler was called.
236 |      */
237 |     open func reload(mapView: MKMapView, completion: @escaping (Bool) -> Void = { finished in }) {
    |               `- note: add '@MainActor' to make instance method 'reload(mapView:completion:)' part of global actor 'MainActor'
238 |         let mapBounds = mapView.bounds
239 |         let visibleMapRect = mapView.visibleMapRect
    |                                      `- warning: main actor-isolated property 'visibleMapRect' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
240 |         let visibleMapRectWidth = visibleMapRect.size.width
241 |         let zoomScale = Double(mapBounds.width) / visibleMapRectWidth
/Applications/Xcode-16.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX15.4.sdk/System/Library/Frameworks/MapKit.framework/Headers/MKMapView.h:104:33: note: property declared here
102 |
103 | // Access the visible region of the map in projected coordinates.
104 | @property (nonatomic) MKMapRect visibleMapRect;
    |                                 `- note: property declared here
105 | - (void)setVisibleMapRect:(MKMapRect)mapRect animated:(BOOL)animate;
106 |
/Users/admin/builder/spi-builder-workspace/Sources/Cluster.swift:288:13: warning: capture of 'self' with non-sendable type 'ClusterManager?' in a '@Sendable' closure
 42 | }
 43 |
 44 | open class ClusterManager {
    |            `- note: class 'ClusterManager' does not conform to the 'Sendable' protocol
 45 |
 46 |     var tree = QuadTree(rect: .world)
    :
286 |
287 |         dispatchQueue.async(flags: .barrier) { [weak self] in
288 |             self?.visibleAnnotations.subtract(toRemove)
    |             `- warning: capture of 'self' with non-sendable type 'ClusterManager?' in a '@Sendable' closure
289 |             self?.visibleAnnotations.add(toAdd)
290 |         }
/Users/admin/builder/spi-builder-workspace/Sources/Cluster.swift:288:47: warning: capture of 'toRemove' with non-sendable type '[any MKAnnotation]' in a '@Sendable' closure
286 |
287 |         dispatchQueue.async(flags: .barrier) { [weak self] in
288 |             self?.visibleAnnotations.subtract(toRemove)
    |                                               `- warning: capture of 'toRemove' with non-sendable type '[any MKAnnotation]' in a '@Sendable' closure
289 |             self?.visibleAnnotations.add(toAdd)
290 |         }
/Applications/Xcode-16.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX15.4.sdk/System/Library/Frameworks/MapKit.framework/Headers/MKAnnotation.h:14:11: note: protocol 'MKAnnotation' does not conform to the 'Sendable' protocol
12 | NS_ASSUME_NONNULL_BEGIN
13 |
14 | @protocol MKAnnotation <NSObject>
   |           `- note: protocol 'MKAnnotation' does not conform to the 'Sendable' protocol
15 |
16 | // Center latitude and longitude of the annotation view.
/Users/admin/builder/spi-builder-workspace/Sources/Cluster.swift:289:42: warning: capture of 'toAdd' with non-sendable type '[any MKAnnotation]' in a '@Sendable' closure
287 |         dispatchQueue.async(flags: .barrier) { [weak self] in
288 |             self?.visibleAnnotations.subtract(toRemove)
289 |             self?.visibleAnnotations.add(toAdd)
    |                                          `- warning: capture of 'toAdd' with non-sendable type '[any MKAnnotation]' in a '@Sendable' closure
290 |         }
291 |
/Applications/Xcode-16.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX15.4.sdk/System/Library/Frameworks/MapKit.framework/Headers/MKAnnotation.h:14:11: note: protocol 'MKAnnotation' does not conform to the 'Sendable' protocol
12 | NS_ASSUME_NONNULL_BEGIN
13 |
14 | @protocol MKAnnotation <NSObject>
   |           `- note: protocol 'MKAnnotation' does not conform to the 'Sendable' protocol
15 |
16 | // Center latitude and longitude of the annotation view.
/Users/admin/builder/spi-builder-workspace/Sources/Cluster.swift:288:47: warning: reference to captured var 'toRemove' in concurrently-executing code
286 |
287 |         dispatchQueue.async(flags: .barrier) { [weak self] in
288 |             self?.visibleAnnotations.subtract(toRemove)
    |                                               `- warning: reference to captured var 'toRemove' in concurrently-executing code
289 |             self?.visibleAnnotations.add(toAdd)
290 |         }
/Users/admin/builder/spi-builder-workspace/Sources/Cluster.swift:330:26: warning: capture of 'hash' with non-sendable type '[CLLocationCoordinate2D : [any MKAnnotation]]' in a '@Sendable' closure
328 |         let hash = Dictionary(grouping: annotations) { $0.coordinate }
329 |         dispatchQueue.async(flags: .barrier) {
330 |             for value in hash.values where value.count > 1 {
    |                          `- warning: capture of 'hash' with non-sendable type '[CLLocationCoordinate2D : [any MKAnnotation]]' in a '@Sendable' closure
331 |                 for (index, annotation) in value.enumerated() {
332 |                     tree.remove(annotation)
/Applications/Xcode-16.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX15.4.sdk/System/Library/Frameworks/MapKit.framework/Headers/MKAnnotation.h:14:11: note: protocol 'MKAnnotation' does not conform to the 'Sendable' protocol
12 | NS_ASSUME_NONNULL_BEGIN
13 |
14 | @protocol MKAnnotation <NSObject>
   |           `- note: protocol 'MKAnnotation' does not conform to the 'Sendable' protocol
15 |
16 | // Center latitude and longitude of the annotation view.
/Users/admin/builder/spi-builder-workspace/Sources/Cluster.swift:332:21: warning: capture of 'tree' with non-sendable type 'QuadTree' in a '@Sendable' closure
330 |             for value in hash.values where value.count > 1 {
331 |                 for (index, annotation) in value.enumerated() {
332 |                     tree.remove(annotation)
    |                     `- warning: capture of 'tree' with non-sendable type 'QuadTree' in a '@Sendable' closure
333 |                     let radiansBetweenAnnotations = (.pi * 2) / Double(value.count)
334 |                     let bearing = radiansBetweenAnnotations * Double(index)
/Users/admin/builder/spi-builder-workspace/Sources/QuadTree.swift:149:14: note: class 'QuadTree' does not conform to the 'Sendable' protocol
147 | }
148 |
149 | public class QuadTree: AnnotationsContainer {
    |              `- note: class 'QuadTree' does not conform to the 'Sendable' protocol
150 |
151 |     let root: QuadTreeNode
/Users/admin/builder/spi-builder-workspace/Sources/Cluster.swift:335:152: warning: capture of 'self' with non-sendable type 'ClusterManager' in a '@Sendable' closure
 42 | }
 43 |
 44 | open class ClusterManager {
    |            `- note: class 'ClusterManager' does not conform to the 'Sendable' protocol
 45 |
 46 |     var tree = QuadTree(rect: .world)
    :
333 |                     let radiansBetweenAnnotations = (.pi * 2) / Double(value.count)
334 |                     let bearing = radiansBetweenAnnotations * Double(index)
335 |                     (annotation as? MKPointAnnotation)?.coordinate = annotation.coordinate.coordinate(onBearingInRadians: bearing, atDistanceInMeters: self.distanceFromContestedLocation)
    |                                                                                                                                                        `- warning: capture of 'self' with non-sendable type 'ClusterManager' in a '@Sendable' closure
336 |                     tree.add(annotation)
337 |                 }
/Users/admin/builder/spi-builder-workspace/Sources/Cluster.swift:385:17: warning: call to main actor-isolated instance method 'removeAnnotations' in a synchronous nonisolated context; this is an error in the Swift 6 language mode
381 |     }
382 |
383 |     open func display(mapView: MKMapView, toAdd: [MKAnnotation], toRemove: [MKAnnotation]) {
    |               `- note: add '@MainActor' to make instance method 'display(mapView:toAdd:toRemove:)' part of global actor 'MainActor'
384 |         assert(Thread.isMainThread, "This function must be called from the main thread.")
385 |         mapView.removeAnnotations(toRemove)
    |                 `- warning: call to main actor-isolated instance method 'removeAnnotations' in a synchronous nonisolated context; this is an error in the Swift 6 language mode
386 |         mapView.addAnnotations(toAdd)
387 |     }
MapKit.MKMapView.removeAnnotations:2:22: note: calls to instance method 'removeAnnotations' from outside of its actor context are implicitly asynchronous
1 | class MKMapView {
2 | @MainActor open func removeAnnotations(_ annotations: [any MKAnnotation])}
  |                      |- note: calls to instance method 'removeAnnotations' from outside of its actor context are implicitly asynchronous
  |                      `- note: main actor isolation inferred from inheritance from class 'NSView'
3 |
/Users/admin/builder/spi-builder-workspace/Sources/Cluster.swift:386:17: warning: call to main actor-isolated instance method 'addAnnotations' in a synchronous nonisolated context; this is an error in the Swift 6 language mode
381 |     }
382 |
383 |     open func display(mapView: MKMapView, toAdd: [MKAnnotation], toRemove: [MKAnnotation]) {
    |               `- note: add '@MainActor' to make instance method 'display(mapView:toAdd:toRemove:)' part of global actor 'MainActor'
384 |         assert(Thread.isMainThread, "This function must be called from the main thread.")
385 |         mapView.removeAnnotations(toRemove)
386 |         mapView.addAnnotations(toAdd)
    |                 `- warning: call to main actor-isolated instance method 'addAnnotations' in a synchronous nonisolated context; this is an error in the Swift 6 language mode
387 |     }
388 |
MapKit.MKMapView.addAnnotations:2:22: note: calls to instance method 'addAnnotations' from outside of its actor context are implicitly asynchronous
1 | class MKMapView {
2 | @MainActor open func addAnnotations(_ annotations: [any MKAnnotation])}
  |                      |- note: calls to instance method 'addAnnotations' from outside of its actor context are implicitly asynchronous
  |                      `- note: main actor isolation inferred from inheritance from class 'NSView'
3 |
/Users/admin/builder/spi-builder-workspace/Sources/Annotation.swift:84:16: error: cannot find type 'UIColor' in scope
 82 |      - `radius`: The radius of the annotation circle
 83 |      */
 84 |     case color(UIColor, radius: CGFloat)
    |                `- error: cannot find type 'UIColor' in scope
 85 |
 86 |     /**
/Users/admin/builder/spi-builder-workspace/Sources/Annotation.swift:89:16: error: cannot find type 'UIImage' in scope
 87 |      Displays the annotation as an image.
 88 |      */
 89 |     case image(UIImage?)
    |                `- error: cannot find type 'UIImage' in scope
 90 | }
 91 |
/Users/admin/builder/spi-builder-workspace/Sources/Cluster.swift:248:38: warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
246 |                 let (toAdd, toRemove) = self.clusteredAnnotations(zoomScale: zoomScale, visibleMapRect: visibleMapRect, operation: operation)
247 |                 DispatchQueue.main.async { [weak self, weak mapView] in
248 |                     guard let self = self, let mapView = mapView else { return completion(false) }
    |                                      |- warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
    |                                      `- note: task-isolated 'self' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
249 |                     self.display(mapView: mapView, toAdd: toAdd, toRemove: toRemove)
250 |                     completion(true)
/Users/admin/builder/spi-builder-workspace/Sources/Cluster.swift:248:80: warning: sending 'completion' risks causing data races; this is an error in the Swift 6 language mode
246 |                 let (toAdd, toRemove) = self.clusteredAnnotations(zoomScale: zoomScale, visibleMapRect: visibleMapRect, operation: operation)
247 |                 DispatchQueue.main.async { [weak self, weak mapView] in
248 |                     guard let self = self, let mapView = mapView else { return completion(false) }
    |                                                                                |- warning: sending 'completion' risks causing data races; this is an error in the Swift 6 language mode
    |                                                                                `- note: task-isolated 'completion' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
249 |                     self.display(mapView: mapView, toAdd: toAdd, toRemove: toRemove)
250 |                     completion(true)
/Users/admin/builder/spi-builder-workspace/Sources/Cluster.swift:249:59: warning: sending 'toAdd' risks causing data races; this is an error in the Swift 6 language mode
247 |                 DispatchQueue.main.async { [weak self, weak mapView] in
248 |                     guard let self = self, let mapView = mapView else { return completion(false) }
249 |                     self.display(mapView: mapView, toAdd: toAdd, toRemove: toRemove)
    |                                                           |- warning: sending 'toAdd' risks causing data races; this is an error in the Swift 6 language mode
    |                                                           `- note: task-isolated 'toAdd' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
250 |                     completion(true)
251 |                 }
/Users/admin/builder/spi-builder-workspace/Sources/Cluster.swift:249:76: warning: sending 'toRemove' risks causing data races; this is an error in the Swift 6 language mode
247 |                 DispatchQueue.main.async { [weak self, weak mapView] in
248 |                     guard let self = self, let mapView = mapView else { return completion(false) }
249 |                     self.display(mapView: mapView, toAdd: toAdd, toRemove: toRemove)
    |                                                                            |- warning: sending 'toRemove' risks causing data races; this is an error in the Swift 6 language mode
    |                                                                            `- note: task-isolated 'toRemove' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
250 |                     completion(true)
251 |                 }
/Users/admin/builder/spi-builder-workspace/Sources/Cluster.swift:385:17: warning: sending 'toRemove._bridgeToObjectiveC' risks causing data races; this is an error in the Swift 6 language mode
383 |     open func display(mapView: MKMapView, toAdd: [MKAnnotation], toRemove: [MKAnnotation]) {
384 |         assert(Thread.isMainThread, "This function must be called from the main thread.")
385 |         mapView.removeAnnotations(toRemove)
    |                 |- warning: sending 'toRemove._bridgeToObjectiveC' risks causing data races; this is an error in the Swift 6 language mode
    |                 `- note: sending task-isolated 'toRemove._bridgeToObjectiveC' to main actor-isolated instance method 'removeAnnotations' risks causing data races between main actor-isolated and task-isolated uses
386 |         mapView.addAnnotations(toAdd)
387 |     }
/Users/admin/builder/spi-builder-workspace/Sources/Cluster.swift:386:17: warning: sending 'toAdd._bridgeToObjectiveC' risks causing data races; this is an error in the Swift 6 language mode
384 |         assert(Thread.isMainThread, "This function must be called from the main thread.")
385 |         mapView.removeAnnotations(toRemove)
386 |         mapView.addAnnotations(toAdd)
    |                 |- warning: sending 'toAdd._bridgeToObjectiveC' risks causing data races; this is an error in the Swift 6 language mode
    |                 `- note: sending task-isolated 'toAdd._bridgeToObjectiveC' to main actor-isolated instance method 'addAnnotations' risks causing data races between main actor-isolated and task-isolated uses
387 |     }
388 |
[6/8] Compiling Cluster Atomic.swift
/Users/admin/builder/spi-builder-workspace/Sources/Atomic.swift:23:46: warning: capture of 'self' with non-sendable type 'Atomic<Value>' in a '@Sendable' closure
10 |
11 | @propertyWrapper
12 | class Atomic<Value> {
   |       `- note: generic class 'Atomic' does not conform to the 'Sendable' protocol
13 |     private let queue = DispatchQueue(label: "Atomic serial queue", attributes: .concurrent)
14 |
   :
21 |     var wrappedValue: Value {
22 |         get { return queue.sync { _value } }
23 |         set { queue.async(flags: .barrier) { self._value = newValue } }
   |                                              `- warning: capture of 'self' with non-sendable type 'Atomic<Value>' in a '@Sendable' closure
24 |     }
25 | }
/Users/admin/builder/spi-builder-workspace/Sources/Atomic.swift:23:60: warning: capture of 'newValue' with non-sendable type 'Value' in a '@Sendable' closure
10 |
11 | @propertyWrapper
12 | class Atomic<Value> {
   |              `- note: consider making generic parameter 'Value' conform to the 'Sendable' protocol
13 |     private let queue = DispatchQueue(label: "Atomic serial queue", attributes: .concurrent)
14 |
   :
21 |     var wrappedValue: Value {
22 |         get { return queue.sync { _value } }
23 |         set { queue.async(flags: .barrier) { self._value = newValue } }
   |                                                            `- warning: capture of 'newValue' with non-sendable type 'Value' in a '@Sendable' closure
24 |     }
25 | }
error: emit-module command failed with exit code 1 (use -v to see invocation)
[7/8] Emitting module Cluster
/Users/admin/builder/spi-builder-workspace/Sources/Annotation.swift:47:31: error: cannot find type 'UILabel' in scope
 45 |  */
 46 | open class ClusterAnnotationView: MKAnnotationView {
 47 |     open lazy var countLabel: UILabel = {
    |                               `- error: cannot find type 'UILabel' in scope
 48 |         let label = UILabel()
 49 |         label.autoresizingMask = [.flexibleWidth, .flexibleHeight]
/Users/admin/builder/spi-builder-workspace/Sources/Annotation.swift:84:16: error: cannot find type 'UIColor' in scope
 82 |      - `radius`: The radius of the annotation circle
 83 |      */
 84 |     case color(UIColor, radius: CGFloat)
    |                `- error: cannot find type 'UIColor' in scope
 85 |
 86 |     /**
/Users/admin/builder/spi-builder-workspace/Sources/Annotation.swift:89:16: error: cannot find type 'UIImage' in scope
 87 |      Displays the annotation as an image.
 88 |      */
 89 |     case image(UIImage?)
    |                `- error: cannot find type 'UIImage' in scope
 90 | }
 91 |
/Users/admin/builder/spi-builder-workspace/Sources/Annotation.swift:145:24: error: method does not override any method from its superclass
143 |     }
144 |
145 |     override open func layoutSubviews() {
    |                        `- error: method does not override any method from its superclass
146 |         super.layoutSubviews()
147 |
/Users/admin/builder/spi-builder-workspace/Sources/Extensions.swift:27:1: warning: extension declares a conformance of imported type 'CLLocationCoordinate2D' to imported protocols 'Hashable', 'Equatable'; this will not behave correctly if the owners of 'CoreLocation' introduce this conformance in the future
 25 | let MKMapPointMax = MKMapPoint(CLLocationCoordinate2DMax)
 26 |
 27 | extension CLLocationCoordinate2D: Hashable {
    | |- warning: extension declares a conformance of imported type 'CLLocationCoordinate2D' to imported protocols 'Hashable', 'Equatable'; this will not behave correctly if the owners of 'CoreLocation' introduce this conformance in the future
    | `- note: add '@retroactive' to silence this warning
 28 |     public func hash(into hasher: inout Hasher) {
 29 |         hasher.combine(latitude)
[8/8] Compiling Cluster Annotation.swift
/Users/admin/builder/spi-builder-workspace/Sources/Annotation.swift:47:31: error: cannot find type 'UILabel' in scope
 45 |  */
 46 | open class ClusterAnnotationView: MKAnnotationView {
 47 |     open lazy var countLabel: UILabel = {
    |                               `- error: cannot find type 'UILabel' in scope
 48 |         let label = UILabel()
 49 |         label.autoresizingMask = [.flexibleWidth, .flexibleHeight]
/Users/admin/builder/spi-builder-workspace/Sources/Annotation.swift:84:16: error: cannot find type 'UIColor' in scope
 82 |      - `radius`: The radius of the annotation circle
 83 |      */
 84 |     case color(UIColor, radius: CGFloat)
    |                `- error: cannot find type 'UIColor' in scope
 85 |
 86 |     /**
/Users/admin/builder/spi-builder-workspace/Sources/Annotation.swift:89:16: error: cannot find type 'UIImage' in scope
 87 |      Displays the annotation as an image.
 88 |      */
 89 |     case image(UIImage?)
    |                `- error: cannot find type 'UIImage' in scope
 90 | }
 91 |
/Users/admin/builder/spi-builder-workspace/Sources/Annotation.swift:145:24: error: method does not override any method from its superclass
143 |     }
144 |
145 |     override open func layoutSubviews() {
    |                        `- error: method does not override any method from its superclass
146 |         super.layoutSubviews()
147 |
/Users/admin/builder/spi-builder-workspace/Sources/Annotation.swift:127:13: error: cannot find 'backgroundColor' in scope
125 |         switch style {
126 |         case let .image(image):
127 |             backgroundColor = .clear
    |             `- error: cannot find 'backgroundColor' in scope
128 |             self.image = image
129 |         case let .color(color, radius):
/Users/admin/builder/spi-builder-workspace/Sources/Annotation.swift:131:13: error: cannot find 'backgroundColor' in scope
129 |         case let .color(color, radius):
130 |             let count = annotation.annotations.count
131 |             backgroundColor = color
    |             `- error: cannot find 'backgroundColor' in scope
132 |             var diameter = radius * 2
133 |             switch count {
/Users/admin/builder/spi-builder-workspace/Sources/Annotation.swift:146:15: error: value of type 'ClusterAnnotationView' has no member 'layoutSubviews'
144 |
145 |     override open func layoutSubviews() {
146 |         super.layoutSubviews()
    |               `- error: value of type 'ClusterAnnotationView' has no member 'layoutSubviews'
147 |
148 |         if case .color = style {
/Users/admin/builder/spi-builder-workspace/Sources/Annotation.swift:149:13: error: value of optional type 'CALayer?' must be unwrapped to refer to member 'masksToBounds' of wrapped base type 'CALayer'
147 |
148 |         if case .color = style {
149 |             layer.masksToBounds = true
    |             |- error: value of optional type 'CALayer?' must be unwrapped to refer to member 'masksToBounds' of wrapped base type 'CALayer'
    |             |- note: chain the optional using '?' to access member 'masksToBounds' only for non-'nil' base values
    |             `- note: force-unwrap using '!' to abort execution if the optional value contains 'nil'
150 |             layer.cornerRadius = image == nil ? bounds.width / 2 : 0
151 |             countLabel.frame = bounds
/Users/admin/builder/spi-builder-workspace/Sources/Annotation.swift:150:13: error: value of optional type 'CALayer?' must be unwrapped to refer to member 'cornerRadius' of wrapped base type 'CALayer'
148 |         if case .color = style {
149 |             layer.masksToBounds = true
150 |             layer.cornerRadius = image == nil ? bounds.width / 2 : 0
    |             |- error: value of optional type 'CALayer?' must be unwrapped to refer to member 'cornerRadius' of wrapped base type 'CALayer'
    |             |- note: chain the optional using '?' to access member 'cornerRadius' only for non-'nil' base values
    |             `- note: force-unwrap using '!' to abort execution if the optional value contains 'nil'
151 |             countLabel.frame = bounds
152 |         }
Running build ...
env DEVELOPER_DIR=/Applications/Xcode-16.3.0.app xcrun swift build --arch arm64
[0/1] Planning build
Building for debugging...
[0/1] Write swift-version-2F0A5646E1D333AE.txt
[2/7] Compiling Cluster QuadTree.swift
[3/7] Compiling Cluster Extensions.swift
/Users/admin/builder/spi-builder-workspace/Sources/Extensions.swift:27:1: warning: extension declares a conformance of imported type 'CLLocationCoordinate2D' to imported protocols 'Hashable', 'Equatable'; this will not behave correctly if the owners of 'CoreLocation' introduce this conformance in the future
 25 | let MKMapPointMax = MKMapPoint(CLLocationCoordinate2DMax)
 26 |
 27 | extension CLLocationCoordinate2D: Hashable {
    | |- warning: extension declares a conformance of imported type 'CLLocationCoordinate2D' to imported protocols 'Hashable', 'Equatable'; this will not behave correctly if the owners of 'CoreLocation' introduce this conformance in the future
    | `- note: add '@retroactive' to silence this warning
 28 |     public func hash(into hasher: inout Hasher) {
 29 |         hasher.combine(latitude)
error: emit-module command failed with exit code 1 (use -v to see invocation)
[4/7] Compiling Cluster Atomic.swift
[5/7] Emitting module Cluster
/Users/admin/builder/spi-builder-workspace/Sources/Annotation.swift:47:31: error: cannot find type 'UILabel' in scope
 45 |  */
 46 | open class ClusterAnnotationView: MKAnnotationView {
 47 |     open lazy var countLabel: UILabel = {
    |                               `- error: cannot find type 'UILabel' in scope
 48 |         let label = UILabel()
 49 |         label.autoresizingMask = [.flexibleWidth, .flexibleHeight]
/Users/admin/builder/spi-builder-workspace/Sources/Annotation.swift:84:16: error: cannot find type 'UIColor' in scope
 82 |      - `radius`: The radius of the annotation circle
 83 |      */
 84 |     case color(UIColor, radius: CGFloat)
    |                `- error: cannot find type 'UIColor' in scope
 85 |
 86 |     /**
/Users/admin/builder/spi-builder-workspace/Sources/Annotation.swift:89:16: error: cannot find type 'UIImage' in scope
 87 |      Displays the annotation as an image.
 88 |      */
 89 |     case image(UIImage?)
    |                `- error: cannot find type 'UIImage' in scope
 90 | }
 91 |
/Users/admin/builder/spi-builder-workspace/Sources/Annotation.swift:145:24: error: method does not override any method from its superclass
143 |     }
144 |
145 |     override open func layoutSubviews() {
    |                        `- error: method does not override any method from its superclass
146 |         super.layoutSubviews()
147 |
/Users/admin/builder/spi-builder-workspace/Sources/Extensions.swift:27:1: warning: extension declares a conformance of imported type 'CLLocationCoordinate2D' to imported protocols 'Hashable', 'Equatable'; this will not behave correctly if the owners of 'CoreLocation' introduce this conformance in the future
 25 | let MKMapPointMax = MKMapPoint(CLLocationCoordinate2DMax)
 26 |
 27 | extension CLLocationCoordinate2D: Hashable {
    | |- warning: extension declares a conformance of imported type 'CLLocationCoordinate2D' to imported protocols 'Hashable', 'Equatable'; this will not behave correctly if the owners of 'CoreLocation' introduce this conformance in the future
    | `- note: add '@retroactive' to silence this warning
 28 |     public func hash(into hasher: inout Hasher) {
 29 |         hasher.combine(latitude)
[6/7] Compiling Cluster Annotation.swift
/Users/admin/builder/spi-builder-workspace/Sources/Annotation.swift:47:31: error: cannot find type 'UILabel' in scope
 45 |  */
 46 | open class ClusterAnnotationView: MKAnnotationView {
 47 |     open lazy var countLabel: UILabel = {
    |                               `- error: cannot find type 'UILabel' in scope
 48 |         let label = UILabel()
 49 |         label.autoresizingMask = [.flexibleWidth, .flexibleHeight]
/Users/admin/builder/spi-builder-workspace/Sources/Annotation.swift:84:16: error: cannot find type 'UIColor' in scope
 82 |      - `radius`: The radius of the annotation circle
 83 |      */
 84 |     case color(UIColor, radius: CGFloat)
    |                `- error: cannot find type 'UIColor' in scope
 85 |
 86 |     /**
/Users/admin/builder/spi-builder-workspace/Sources/Annotation.swift:89:16: error: cannot find type 'UIImage' in scope
 87 |      Displays the annotation as an image.
 88 |      */
 89 |     case image(UIImage?)
    |                `- error: cannot find type 'UIImage' in scope
 90 | }
 91 |
/Users/admin/builder/spi-builder-workspace/Sources/Annotation.swift:145:24: error: method does not override any method from its superclass
143 |     }
144 |
145 |     override open func layoutSubviews() {
    |                        `- error: method does not override any method from its superclass
146 |         super.layoutSubviews()
147 |
/Users/admin/builder/spi-builder-workspace/Sources/Annotation.swift:127:13: error: cannot find 'backgroundColor' in scope
125 |         switch style {
126 |         case let .image(image):
127 |             backgroundColor = .clear
    |             `- error: cannot find 'backgroundColor' in scope
128 |             self.image = image
129 |         case let .color(color, radius):
/Users/admin/builder/spi-builder-workspace/Sources/Annotation.swift:131:13: error: cannot find 'backgroundColor' in scope
129 |         case let .color(color, radius):
130 |             let count = annotation.annotations.count
131 |             backgroundColor = color
    |             `- error: cannot find 'backgroundColor' in scope
132 |             var diameter = radius * 2
133 |             switch count {
/Users/admin/builder/spi-builder-workspace/Sources/Annotation.swift:146:15: error: value of type 'ClusterAnnotationView' has no member 'layoutSubviews'
144 |
145 |     override open func layoutSubviews() {
146 |         super.layoutSubviews()
    |               `- error: value of type 'ClusterAnnotationView' has no member 'layoutSubviews'
147 |
148 |         if case .color = style {
/Users/admin/builder/spi-builder-workspace/Sources/Annotation.swift:149:13: error: value of optional type 'CALayer?' must be unwrapped to refer to member 'masksToBounds' of wrapped base type 'CALayer'
147 |
148 |         if case .color = style {
149 |             layer.masksToBounds = true
    |             |- error: value of optional type 'CALayer?' must be unwrapped to refer to member 'masksToBounds' of wrapped base type 'CALayer'
    |             |- note: chain the optional using '?' to access member 'masksToBounds' only for non-'nil' base values
    |             `- note: force-unwrap using '!' to abort execution if the optional value contains 'nil'
150 |             layer.cornerRadius = image == nil ? bounds.width / 2 : 0
151 |             countLabel.frame = bounds
/Users/admin/builder/spi-builder-workspace/Sources/Annotation.swift:150:13: error: value of optional type 'CALayer?' must be unwrapped to refer to member 'cornerRadius' of wrapped base type 'CALayer'
148 |         if case .color = style {
149 |             layer.masksToBounds = true
150 |             layer.cornerRadius = image == nil ? bounds.width / 2 : 0
    |             |- error: value of optional type 'CALayer?' must be unwrapped to refer to member 'cornerRadius' of wrapped base type 'CALayer'
    |             |- note: chain the optional using '?' to access member 'cornerRadius' only for non-'nil' base values
    |             `- note: force-unwrap using '!' to abort execution if the optional value contains 'nil'
151 |             countLabel.frame = bounds
152 |         }
[7/7] Compiling Cluster Cluster.swift
/Users/admin/builder/spi-builder-workspace/Sources/Annotation.swift:84:16: error: cannot find type 'UIColor' in scope
 82 |      - `radius`: The radius of the annotation circle
 83 |      */
 84 |     case color(UIColor, radius: CGFloat)
    |                `- error: cannot find type 'UIColor' in scope
 85 |
 86 |     /**
/Users/admin/builder/spi-builder-workspace/Sources/Annotation.swift:89:16: error: cannot find type 'UIImage' in scope
 87 |      Displays the annotation as an image.
 88 |      */
 89 |     case image(UIImage?)
    |                `- error: cannot find type 'UIImage' in scope
 90 | }
 91 |
warning: 'spi-builder-workspace': found 1 file(s) which are unhandled; explicitly declare them as resources or exclude from the target
    /Users/admin/builder/spi-builder-workspace/Tests/Info.plist
BUILD FAILURE 6.1 macosSpm