The Swift Package Index logo.Swift Package Index

Track the adoption of Swift 6 strict concurrency checks for data race safety. How many packages are Ready for Swift 6?

Build Information

Failed to build open-weather-kit, reference main (c7f742), with Swift 6.0 for macOS (SPM) on 4 Nov 2024 06:25:07 UTC.

Build Command

env DEVELOPER_DIR=/Applications/Xcode-16.1.0.app xcrun swift build --arch arm64 -Xswiftc -Xfrontend -Xswiftc -stats-output-dir -Xswiftc -Xfrontend -Xswiftc .stats -Xswiftc -strict-concurrency=complete

Build Log

========================================
RunAll
========================================
Builder version: 4.56.0
Interrupt handler set up.
========================================
Checkout
========================================
Clone URL: https://github.com/jagreenwood/open-weather-kit.git
Reference: main
Initialized empty Git repository in /Users/admin/builder/spi-builder-workspace/.git/
From https://github.com/jagreenwood/open-weather-kit
 * branch            main       -> FETCH_HEAD
 * [new branch]      main       -> origin/main
HEAD is now at c7f7420 Update `async-http-client` Package (#31)
Cloned https://github.com/jagreenwood/open-weather-kit.git
Revision (git rev-parse @):
c7f7420fac8d7eef8041c39d9db6ba79302fa984
SPI manifest file found: $PWD/.spi.yml
SUCCESS checkout https://github.com/jagreenwood/open-weather-kit.git at main
========================================
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": "open-weather-kit",
      "name": "open-weather-kit",
      "url": "https://github.com/jagreenwood/open-weather-kit.git",
      "version": "unspecified",
      "path": "/Users/admin/builder/spi-builder-workspace/.resolve-product-dependencies/.build/checkouts/open-weather-kit",
      "dependencies": [
      ]
    }
  ]
}
Fetching https://github.com/jagreenwood/open-weather-kit.git
[1/959] Fetching open-weather-kit
Fetched https://github.com/jagreenwood/open-weather-kit.git from cache (0.97s)
Creating working copy for https://github.com/jagreenwood/open-weather-kit.git
Working copy of https://github.com/jagreenwood/open-weather-kit.git resolved at main (c7f7420)
warning: '.resolve-product-dependencies': dependency 'open-weather-kit' is not used by any target
Found 0 product dependencies
========================================
Build
========================================
Selected platform:         macosSpm
Swift version:             6.0
Building package at path:  $PWD
https://github.com/jagreenwood/open-weather-kit.git
Running build ...
env DEVELOPER_DIR=/Applications/Xcode-16.1.0.app xcrun swift build --arch arm64 -Xswiftc -Xfrontend -Xswiftc -stats-output-dir -Xswiftc -Xfrontend -Xswiftc .stats -Xswiftc -strict-concurrency=complete
Building for debugging...
[0/4] Write sources
[1/4] Copying Info.plist
[2/4] Copying Localizable.strings
[3/4] Write swift-version--7754E27361AE5C74.txt
[5/53] Emitting module OpenWeatherKit
/Users/admin/builder/spi-builder-workspace/Sources/OpenWeatherKit/Internal/Extensions/WeatherQuery+QueryItems.swift:10:5: warning: let 'isoFormatter' is not concurrency-safe because non-'Sendable' type 'ISO8601DateFormatter' may have shared mutable state; this is an error in the Swift 6 language mode
 8 | import Foundation
 9 |
10 | let isoFormatter: ISO8601DateFormatter = {
   |     |- warning: let 'isoFormatter' is not concurrency-safe because non-'Sendable' type 'ISO8601DateFormatter' may have shared mutable state; this is an error in the Swift 6 language mode
   |     |- note: annotate 'isoFormatter' with '@MainActor' if property should only be accessed from the main actor
   |     `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
11 |     let formatter = ISO8601DateFormatter()
12 |     formatter.formatOptions = [.withInternetDateTime]
Foundation.ISO8601DateFormatter:2:12: note: class 'ISO8601DateFormatter' does not conform to the 'Sendable' protocol
 1 | @available(macOS 10.12, *)
 2 | open class ISO8601DateFormatter : Formatter, NSSecureCoding {
   |            `- note: class 'ISO8601DateFormatter' does not conform to the 'Sendable' protocol
 3 |     open var timeZone: TimeZone! { get set }
 4 |     open var formatOptions: ISO8601DateFormatter.Options { get set }
/Users/admin/builder/spi-builder-workspace/Sources/OpenWeatherKit/Internal/WeatherProxy.swift:48:16: warning: static property 'empty' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
46 |
47 | extension WeatherProxy {
48 |     static var empty: Self = WeatherProxy(
   |                |- warning: static property 'empty' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
   |                |- note: convert 'empty' to a 'let' constant to make 'Sendable' shared state immutable
   |                |- note: annotate 'empty' with '@MainActor' if property should only be accessed from the main actor
   |                `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
49 |         availability: nil,
50 |         currentWeather: nil,
/Users/admin/builder/spi-builder-workspace/Sources/OpenWeatherKit/Public/WeatherService.swift:61:16: warning: static property 'configuration' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
 59 |
 60 |     @usableFromInline
 61 |     static var configuration: Configuration = Configuration(
    |                |- warning: static property 'configuration' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
    |                |- note: convert 'configuration' to a 'let' constant to make 'Sendable' shared state immutable
    |                |- note: annotate 'configuration' with '@MainActor' if property should only be accessed from the main actor
    |                `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 62 |         jwt: { preconditionFailure("Configuration must first be set by calling WeatherService.configure(_:).") }
 63 |     )
[6/58] Compiling OpenWeatherKit Query.swift
/Users/admin/builder/spi-builder-workspace/Sources/OpenWeatherKit/Internal/WeatherProxy.swift:48:16: warning: static property 'empty' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
46 |
47 | extension WeatherProxy {
48 |     static var empty: Self = WeatherProxy(
   |                |- warning: static property 'empty' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
   |                |- note: convert 'empty' to a 'let' constant to make 'Sendable' shared state immutable
   |                |- note: annotate 'empty' with '@MainActor' if property should only be accessed from the main actor
   |                `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
49 |         availability: nil,
50 |         currentWeather: nil,
[7/58] Compiling OpenWeatherKit Route.swift
/Users/admin/builder/spi-builder-workspace/Sources/OpenWeatherKit/Internal/WeatherProxy.swift:48:16: warning: static property 'empty' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
46 |
47 | extension WeatherProxy {
48 |     static var empty: Self = WeatherProxy(
   |                |- warning: static property 'empty' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
   |                |- note: convert 'empty' to a 'let' constant to make 'Sendable' shared state immutable
   |                |- note: annotate 'empty' with '@MainActor' if property should only be accessed from the main actor
   |                `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
49 |         availability: nil,
50 |         currentWeather: nil,
[8/58] Compiling OpenWeatherKit WeatherProxy.swift
/Users/admin/builder/spi-builder-workspace/Sources/OpenWeatherKit/Internal/WeatherProxy.swift:48:16: warning: static property 'empty' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
46 |
47 | extension WeatherProxy {
48 |     static var empty: Self = WeatherProxy(
   |                |- warning: static property 'empty' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
   |                |- note: convert 'empty' to a 'let' constant to make 'Sendable' shared state immutable
   |                |- note: annotate 'empty' with '@MainActor' if property should only be accessed from the main actor
   |                `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
49 |         availability: nil,
50 |         currentWeather: nil,
[9/58] Compiling OpenWeatherKit MoonEvents.swift
/Users/admin/builder/spi-builder-workspace/Sources/OpenWeatherKit/Internal/WeatherProxy.swift:48:16: warning: static property 'empty' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
46 |
47 | extension WeatherProxy {
48 |     static var empty: Self = WeatherProxy(
   |                |- warning: static property 'empty' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
   |                |- note: convert 'empty' to a 'let' constant to make 'Sendable' shared state immutable
   |                |- note: annotate 'empty' with '@MainActor' if property should only be accessed from the main actor
   |                `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
49 |         availability: nil,
50 |         currentWeather: nil,
[10/58] Compiling OpenWeatherKit MoonPhase.swift
/Users/admin/builder/spi-builder-workspace/Sources/OpenWeatherKit/Internal/WeatherProxy.swift:48:16: warning: static property 'empty' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
46 |
47 | extension WeatherProxy {
48 |     static var empty: Self = WeatherProxy(
   |                |- warning: static property 'empty' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
   |                |- note: convert 'empty' to a 'let' constant to make 'Sendable' shared state immutable
   |                |- note: annotate 'empty' with '@MainActor' if property should only be accessed from the main actor
   |                `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
49 |         availability: nil,
50 |         currentWeather: nil,
[11/58] Compiling OpenWeatherKit APIWeather.swift
/Users/admin/builder/spi-builder-workspace/Sources/OpenWeatherKit/Internal/NetworkClient.swift:44:19: warning: type 'WeatherProxy' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
 42 |         jwt: String
 43 |     ) async throws -> WeatherProxy {
 44 |         try await withThrowingTaskGroup(of: WeatherProxy.self) { group in
    |                   `- warning: type 'WeatherProxy' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
 45 |             var _queries = queries
 46 |
/Users/admin/builder/spi-builder-workspace/Sources/OpenWeatherKit/Internal/WeatherProxy.swift:11:8: note: consider making struct 'WeatherProxy' conform to the 'Sendable' protocol
 9 |
10 | @usableFromInline
11 | struct WeatherProxy {
   |        `- note: consider making struct 'WeatherProxy' conform to the 'Sendable' protocol
12 |     init(
13 |         availability: WeatherAvailability?,
/Users/admin/builder/spi-builder-workspace/Sources/OpenWeatherKit/Internal/NetworkClient.swift:44:64: warning: type 'WeatherProxy' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
 42 |         jwt: String
 43 |     ) async throws -> WeatherProxy {
 44 |         try await withThrowingTaskGroup(of: WeatherProxy.self) { group in
    |                                                                `- warning: type 'WeatherProxy' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
 45 |             var _queries = queries
 46 |
/Users/admin/builder/spi-builder-workspace/Sources/OpenWeatherKit/Internal/WeatherProxy.swift:11:8: note: consider making struct 'WeatherProxy' conform to the 'Sendable' protocol
 9 |
10 | @usableFromInline
11 | struct WeatherProxy {
   |        `- note: consider making struct 'WeatherProxy' conform to the 'Sendable' protocol
12 |     init(
13 |         availability: WeatherAvailability?,
/Users/admin/builder/spi-builder-workspace/Sources/OpenWeatherKit/Internal/NetworkClient.swift:52:23: warning: type 'WeatherProxy' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
 50 |                 }
 51 |
 52 |                 group.addTask {
    |                       `- warning: type 'WeatherProxy' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
 53 |                     let availability: [APIWeatherAvailability] = try await fetchAvailability(
 54 |                         location: location,
/Users/admin/builder/spi-builder-workspace/Sources/OpenWeatherKit/Internal/WeatherProxy.swift:11:8: note: consider making struct 'WeatherProxy' conform to the 'Sendable' protocol
 9 |
10 | @usableFromInline
11 | struct WeatherProxy {
   |        `- note: consider making struct 'WeatherProxy' conform to the 'Sendable' protocol
12 |     init(
13 |         availability: WeatherAvailability?,
/Users/admin/builder/spi-builder-workspace/Sources/OpenWeatherKit/Internal/NetworkClient.swift:66:23: warning: type 'WeatherProxy' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
 64 |             if !_queries.isEmpty {
 65 |                 let queryItems = _queries.queryItems
 66 |                 group.addTask {
    |                       `- warning: type 'WeatherProxy' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
 67 |                     let weather: APIWeather = try await get(
 68 |                         .weather(language, location),
/Users/admin/builder/spi-builder-workspace/Sources/OpenWeatherKit/Internal/WeatherProxy.swift:11:8: note: consider making struct 'WeatherProxy' conform to the 'Sendable' protocol
 9 |
10 | @usableFromInline
11 | struct WeatherProxy {
   |        `- note: consider making struct 'WeatherProxy' conform to the 'Sendable' protocol
12 |     init(
13 |         availability: WeatherAvailability?,
/Users/admin/builder/spi-builder-workspace/Sources/OpenWeatherKit/Internal/WeatherProxy.swift:48:16: warning: static property 'empty' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
46 |
47 | extension WeatherProxy {
48 |     static var empty: Self = WeatherProxy(
   |                |- warning: static property 'empty' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
   |                |- note: convert 'empty' to a 'let' constant to make 'Sendable' shared state immutable
   |                |- note: annotate 'empty' with '@MainActor' if property should only be accessed from the main actor
   |                `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
49 |         availability: nil,
50 |         currentWeather: nil,
[12/58] Compiling OpenWeatherKit APIWeatherAlerts.swift
/Users/admin/builder/spi-builder-workspace/Sources/OpenWeatherKit/Internal/NetworkClient.swift:44:19: warning: type 'WeatherProxy' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
 42 |         jwt: String
 43 |     ) async throws -> WeatherProxy {
 44 |         try await withThrowingTaskGroup(of: WeatherProxy.self) { group in
    |                   `- warning: type 'WeatherProxy' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
 45 |             var _queries = queries
 46 |
/Users/admin/builder/spi-builder-workspace/Sources/OpenWeatherKit/Internal/WeatherProxy.swift:11:8: note: consider making struct 'WeatherProxy' conform to the 'Sendable' protocol
 9 |
10 | @usableFromInline
11 | struct WeatherProxy {
   |        `- note: consider making struct 'WeatherProxy' conform to the 'Sendable' protocol
12 |     init(
13 |         availability: WeatherAvailability?,
/Users/admin/builder/spi-builder-workspace/Sources/OpenWeatherKit/Internal/NetworkClient.swift:44:64: warning: type 'WeatherProxy' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
 42 |         jwt: String
 43 |     ) async throws -> WeatherProxy {
 44 |         try await withThrowingTaskGroup(of: WeatherProxy.self) { group in
    |                                                                `- warning: type 'WeatherProxy' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
 45 |             var _queries = queries
 46 |
/Users/admin/builder/spi-builder-workspace/Sources/OpenWeatherKit/Internal/WeatherProxy.swift:11:8: note: consider making struct 'WeatherProxy' conform to the 'Sendable' protocol
 9 |
10 | @usableFromInline
11 | struct WeatherProxy {
   |        `- note: consider making struct 'WeatherProxy' conform to the 'Sendable' protocol
12 |     init(
13 |         availability: WeatherAvailability?,
/Users/admin/builder/spi-builder-workspace/Sources/OpenWeatherKit/Internal/NetworkClient.swift:52:23: warning: type 'WeatherProxy' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
 50 |                 }
 51 |
 52 |                 group.addTask {
    |                       `- warning: type 'WeatherProxy' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
 53 |                     let availability: [APIWeatherAvailability] = try await fetchAvailability(
 54 |                         location: location,
/Users/admin/builder/spi-builder-workspace/Sources/OpenWeatherKit/Internal/WeatherProxy.swift:11:8: note: consider making struct 'WeatherProxy' conform to the 'Sendable' protocol
 9 |
10 | @usableFromInline
11 | struct WeatherProxy {
   |        `- note: consider making struct 'WeatherProxy' conform to the 'Sendable' protocol
12 |     init(
13 |         availability: WeatherAvailability?,
/Users/admin/builder/spi-builder-workspace/Sources/OpenWeatherKit/Internal/NetworkClient.swift:66:23: warning: type 'WeatherProxy' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
 64 |             if !_queries.isEmpty {
 65 |                 let queryItems = _queries.queryItems
 66 |                 group.addTask {
    |                       `- warning: type 'WeatherProxy' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
 67 |                     let weather: APIWeather = try await get(
 68 |                         .weather(language, location),
/Users/admin/builder/spi-builder-workspace/Sources/OpenWeatherKit/Internal/WeatherProxy.swift:11:8: note: consider making struct 'WeatherProxy' conform to the 'Sendable' protocol
 9 |
10 | @usableFromInline
11 | struct WeatherProxy {
   |        `- note: consider making struct 'WeatherProxy' conform to the 'Sendable' protocol
12 |     init(
13 |         availability: WeatherAvailability?,
/Users/admin/builder/spi-builder-workspace/Sources/OpenWeatherKit/Internal/WeatherProxy.swift:48:16: warning: static property 'empty' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
46 |
47 | extension WeatherProxy {
48 |     static var empty: Self = WeatherProxy(
   |                |- warning: static property 'empty' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
   |                |- note: convert 'empty' to a 'let' constant to make 'Sendable' shared state immutable
   |                |- note: annotate 'empty' with '@MainActor' if property should only be accessed from the main actor
   |                `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
49 |         availability: nil,
50 |         currentWeather: nil,
[13/58] Compiling OpenWeatherKit APIWeatherAvailability.swift
/Users/admin/builder/spi-builder-workspace/Sources/OpenWeatherKit/Internal/NetworkClient.swift:44:19: warning: type 'WeatherProxy' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
 42 |         jwt: String
 43 |     ) async throws -> WeatherProxy {
 44 |         try await withThrowingTaskGroup(of: WeatherProxy.self) { group in
    |                   `- warning: type 'WeatherProxy' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
 45 |             var _queries = queries
 46 |
/Users/admin/builder/spi-builder-workspace/Sources/OpenWeatherKit/Internal/WeatherProxy.swift:11:8: note: consider making struct 'WeatherProxy' conform to the 'Sendable' protocol
 9 |
10 | @usableFromInline
11 | struct WeatherProxy {
   |        `- note: consider making struct 'WeatherProxy' conform to the 'Sendable' protocol
12 |     init(
13 |         availability: WeatherAvailability?,
/Users/admin/builder/spi-builder-workspace/Sources/OpenWeatherKit/Internal/NetworkClient.swift:44:64: warning: type 'WeatherProxy' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
 42 |         jwt: String
 43 |     ) async throws -> WeatherProxy {
 44 |         try await withThrowingTaskGroup(of: WeatherProxy.self) { group in
    |                                                                `- warning: type 'WeatherProxy' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
 45 |             var _queries = queries
 46 |
/Users/admin/builder/spi-builder-workspace/Sources/OpenWeatherKit/Internal/WeatherProxy.swift:11:8: note: consider making struct 'WeatherProxy' conform to the 'Sendable' protocol
 9 |
10 | @usableFromInline
11 | struct WeatherProxy {
   |        `- note: consider making struct 'WeatherProxy' conform to the 'Sendable' protocol
12 |     init(
13 |         availability: WeatherAvailability?,
/Users/admin/builder/spi-builder-workspace/Sources/OpenWeatherKit/Internal/NetworkClient.swift:52:23: warning: type 'WeatherProxy' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
 50 |                 }
 51 |
 52 |                 group.addTask {
    |                       `- warning: type 'WeatherProxy' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
 53 |                     let availability: [APIWeatherAvailability] = try await fetchAvailability(
 54 |                         location: location,
/Users/admin/builder/spi-builder-workspace/Sources/OpenWeatherKit/Internal/WeatherProxy.swift:11:8: note: consider making struct 'WeatherProxy' conform to the 'Sendable' protocol
 9 |
10 | @usableFromInline
11 | struct WeatherProxy {
   |        `- note: consider making struct 'WeatherProxy' conform to the 'Sendable' protocol
12 |     init(
13 |         availability: WeatherAvailability?,
/Users/admin/builder/spi-builder-workspace/Sources/OpenWeatherKit/Internal/NetworkClient.swift:66:23: warning: type 'WeatherProxy' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
 64 |             if !_queries.isEmpty {
 65 |                 let queryItems = _queries.queryItems
 66 |                 group.addTask {
    |                       `- warning: type 'WeatherProxy' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
 67 |                     let weather: APIWeather = try await get(
 68 |                         .weather(language, location),
/Users/admin/builder/spi-builder-workspace/Sources/OpenWeatherKit/Internal/WeatherProxy.swift:11:8: note: consider making struct 'WeatherProxy' conform to the 'Sendable' protocol
 9 |
10 | @usableFromInline
11 | struct WeatherProxy {
   |        `- note: consider making struct 'WeatherProxy' conform to the 'Sendable' protocol
12 |     init(
13 |         availability: WeatherAvailability?,
/Users/admin/builder/spi-builder-workspace/Sources/OpenWeatherKit/Internal/WeatherProxy.swift:48:16: warning: static property 'empty' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
46 |
47 | extension WeatherProxy {
48 |     static var empty: Self = WeatherProxy(
   |                |- warning: static property 'empty' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
   |                |- note: convert 'empty' to a 'let' constant to make 'Sendable' shared state immutable
   |                |- note: annotate 'empty' with '@MainActor' if property should only be accessed from the main actor
   |                `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
49 |         availability: nil,
50 |         currentWeather: nil,
[14/58] Compiling OpenWeatherKit NetworkClient.swift
/Users/admin/builder/spi-builder-workspace/Sources/OpenWeatherKit/Internal/NetworkClient.swift:44:19: warning: type 'WeatherProxy' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
 42 |         jwt: String
 43 |     ) async throws -> WeatherProxy {
 44 |         try await withThrowingTaskGroup(of: WeatherProxy.self) { group in
    |                   `- warning: type 'WeatherProxy' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
 45 |             var _queries = queries
 46 |
/Users/admin/builder/spi-builder-workspace/Sources/OpenWeatherKit/Internal/WeatherProxy.swift:11:8: note: consider making struct 'WeatherProxy' conform to the 'Sendable' protocol
 9 |
10 | @usableFromInline
11 | struct WeatherProxy {
   |        `- note: consider making struct 'WeatherProxy' conform to the 'Sendable' protocol
12 |     init(
13 |         availability: WeatherAvailability?,
/Users/admin/builder/spi-builder-workspace/Sources/OpenWeatherKit/Internal/NetworkClient.swift:44:64: warning: type 'WeatherProxy' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
 42 |         jwt: String
 43 |     ) async throws -> WeatherProxy {
 44 |         try await withThrowingTaskGroup(of: WeatherProxy.self) { group in
    |                                                                `- warning: type 'WeatherProxy' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
 45 |             var _queries = queries
 46 |
/Users/admin/builder/spi-builder-workspace/Sources/OpenWeatherKit/Internal/WeatherProxy.swift:11:8: note: consider making struct 'WeatherProxy' conform to the 'Sendable' protocol
 9 |
10 | @usableFromInline
11 | struct WeatherProxy {
   |        `- note: consider making struct 'WeatherProxy' conform to the 'Sendable' protocol
12 |     init(
13 |         availability: WeatherAvailability?,
/Users/admin/builder/spi-builder-workspace/Sources/OpenWeatherKit/Internal/NetworkClient.swift:52:23: warning: type 'WeatherProxy' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
 50 |                 }
 51 |
 52 |                 group.addTask {
    |                       `- warning: type 'WeatherProxy' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
 53 |                     let availability: [APIWeatherAvailability] = try await fetchAvailability(
 54 |                         location: location,
/Users/admin/builder/spi-builder-workspace/Sources/OpenWeatherKit/Internal/WeatherProxy.swift:11:8: note: consider making struct 'WeatherProxy' conform to the 'Sendable' protocol
 9 |
10 | @usableFromInline
11 | struct WeatherProxy {
   |        `- note: consider making struct 'WeatherProxy' conform to the 'Sendable' protocol
12 |     init(
13 |         availability: WeatherAvailability?,
/Users/admin/builder/spi-builder-workspace/Sources/OpenWeatherKit/Internal/NetworkClient.swift:66:23: warning: type 'WeatherProxy' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
 64 |             if !_queries.isEmpty {
 65 |                 let queryItems = _queries.queryItems
 66 |                 group.addTask {
    |                       `- warning: type 'WeatherProxy' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
 67 |                     let weather: APIWeather = try await get(
 68 |                         .weather(language, location),
/Users/admin/builder/spi-builder-workspace/Sources/OpenWeatherKit/Internal/WeatherProxy.swift:11:8: note: consider making struct 'WeatherProxy' conform to the 'Sendable' protocol
 9 |
10 | @usableFromInline
11 | struct WeatherProxy {
   |        `- note: consider making struct 'WeatherProxy' conform to the 'Sendable' protocol
12 |     init(
13 |         availability: WeatherAvailability?,
/Users/admin/builder/spi-builder-workspace/Sources/OpenWeatherKit/Internal/WeatherProxy.swift:48:16: warning: static property 'empty' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
46 |
47 | extension WeatherProxy {
48 |     static var empty: Self = WeatherProxy(
   |                |- warning: static property 'empty' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
   |                |- note: convert 'empty' to a 'let' constant to make 'Sendable' shared state immutable
   |                |- note: annotate 'empty' with '@MainActor' if property should only be accessed from the main actor
   |                `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
49 |         availability: nil,
50 |         currentWeather: nil,
[15/58] Compiling OpenWeatherKit Client.swift
/Users/admin/builder/spi-builder-workspace/Sources/OpenWeatherKit/Internal/NetworkClient.swift:44:19: warning: type 'WeatherProxy' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
 42 |         jwt: String
 43 |     ) async throws -> WeatherProxy {
 44 |         try await withThrowingTaskGroup(of: WeatherProxy.self) { group in
    |                   `- warning: type 'WeatherProxy' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
 45 |             var _queries = queries
 46 |
/Users/admin/builder/spi-builder-workspace/Sources/OpenWeatherKit/Internal/WeatherProxy.swift:11:8: note: consider making struct 'WeatherProxy' conform to the 'Sendable' protocol
 9 |
10 | @usableFromInline
11 | struct WeatherProxy {
   |        `- note: consider making struct 'WeatherProxy' conform to the 'Sendable' protocol
12 |     init(
13 |         availability: WeatherAvailability?,
/Users/admin/builder/spi-builder-workspace/Sources/OpenWeatherKit/Internal/NetworkClient.swift:44:64: warning: type 'WeatherProxy' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
 42 |         jwt: String
 43 |     ) async throws -> WeatherProxy {
 44 |         try await withThrowingTaskGroup(of: WeatherProxy.self) { group in
    |                                                                `- warning: type 'WeatherProxy' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
 45 |             var _queries = queries
 46 |
/Users/admin/builder/spi-builder-workspace/Sources/OpenWeatherKit/Internal/WeatherProxy.swift:11:8: note: consider making struct 'WeatherProxy' conform to the 'Sendable' protocol
 9 |
10 | @usableFromInline
11 | struct WeatherProxy {
   |        `- note: consider making struct 'WeatherProxy' conform to the 'Sendable' protocol
12 |     init(
13 |         availability: WeatherAvailability?,
/Users/admin/builder/spi-builder-workspace/Sources/OpenWeatherKit/Internal/NetworkClient.swift:52:23: warning: type 'WeatherProxy' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
 50 |                 }
 51 |
 52 |                 group.addTask {
    |                       `- warning: type 'WeatherProxy' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
 53 |                     let availability: [APIWeatherAvailability] = try await fetchAvailability(
 54 |                         location: location,
/Users/admin/builder/spi-builder-workspace/Sources/OpenWeatherKit/Internal/WeatherProxy.swift:11:8: note: consider making struct 'WeatherProxy' conform to the 'Sendable' protocol
 9 |
10 | @usableFromInline
11 | struct WeatherProxy {
   |        `- note: consider making struct 'WeatherProxy' conform to the 'Sendable' protocol
12 |     init(
13 |         availability: WeatherAvailability?,
/Users/admin/builder/spi-builder-workspace/Sources/OpenWeatherKit/Internal/NetworkClient.swift:66:23: warning: type 'WeatherProxy' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
 64 |             if !_queries.isEmpty {
 65 |                 let queryItems = _queries.queryItems
 66 |                 group.addTask {
    |                       `- warning: type 'WeatherProxy' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
 67 |                     let weather: APIWeather = try await get(
 68 |                         .weather(language, location),
/Users/admin/builder/spi-builder-workspace/Sources/OpenWeatherKit/Internal/WeatherProxy.swift:11:8: note: consider making struct 'WeatherProxy' conform to the 'Sendable' protocol
 9 |
10 | @usableFromInline
11 | struct WeatherProxy {
   |        `- note: consider making struct 'WeatherProxy' conform to the 'Sendable' protocol
12 |     init(
13 |         availability: WeatherAvailability?,
/Users/admin/builder/spi-builder-workspace/Sources/OpenWeatherKit/Internal/WeatherProxy.swift:48:16: warning: static property 'empty' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
46 |
47 | extension WeatherProxy {
48 |     static var empty: Self = WeatherProxy(
   |                |- warning: static property 'empty' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
   |                |- note: convert 'empty' to a 'let' constant to make 'Sendable' shared state immutable
   |                |- note: annotate 'empty' with '@MainActor' if property should only be accessed from the main actor
   |                `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
49 |         availability: nil,
50 |         currentWeather: nil,
[16/58] Compiling OpenWeatherKit DayWeather.swift
[17/58] Compiling OpenWeatherKit Forecast.swift
[18/58] Compiling OpenWeatherKit HourWeather.swift
[19/58] Compiling OpenWeatherKit MinuteWeather.swift
[20/58] Compiling OpenWeatherKit WeatherAlert.swift
[21/58] Compiling OpenWeatherKit APIWeatherAlerts+Map.swift
/Users/admin/builder/spi-builder-workspace/Sources/OpenWeatherKit/Internal/Extensions/WeatherQuery+QueryItems.swift:10:5: warning: let 'isoFormatter' is not concurrency-safe because non-'Sendable' type 'ISO8601DateFormatter' may have shared mutable state; this is an error in the Swift 6 language mode
 8 | import Foundation
 9 |
10 | let isoFormatter: ISO8601DateFormatter = {
   |     |- warning: let 'isoFormatter' is not concurrency-safe because non-'Sendable' type 'ISO8601DateFormatter' may have shared mutable state; this is an error in the Swift 6 language mode
   |     |- note: annotate 'isoFormatter' with '@MainActor' if property should only be accessed from the main actor
   |     `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
11 |     let formatter = ISO8601DateFormatter()
12 |     formatter.formatOptions = [.withInternetDateTime]
Foundation.ISO8601DateFormatter:2:12: note: class 'ISO8601DateFormatter' does not conform to the 'Sendable' protocol
 1 | @available(macOS 10.12, *)
 2 | open class ISO8601DateFormatter : Formatter, NSSecureCoding {
   |            `- note: class 'ISO8601DateFormatter' does not conform to the 'Sendable' protocol
 3 |     open var timeZone: TimeZone! { get set }
 4 |     open var formatOptions: ISO8601DateFormatter.Options { get set }
[22/58] Compiling OpenWeatherKit APIWeatherAvailability+Map.swift
/Users/admin/builder/spi-builder-workspace/Sources/OpenWeatherKit/Internal/Extensions/WeatherQuery+QueryItems.swift:10:5: warning: let 'isoFormatter' is not concurrency-safe because non-'Sendable' type 'ISO8601DateFormatter' may have shared mutable state; this is an error in the Swift 6 language mode
 8 | import Foundation
 9 |
10 | let isoFormatter: ISO8601DateFormatter = {
   |     |- warning: let 'isoFormatter' is not concurrency-safe because non-'Sendable' type 'ISO8601DateFormatter' may have shared mutable state; this is an error in the Swift 6 language mode
   |     |- note: annotate 'isoFormatter' with '@MainActor' if property should only be accessed from the main actor
   |     `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
11 |     let formatter = ISO8601DateFormatter()
12 |     formatter.formatOptions = [.withInternetDateTime]
Foundation.ISO8601DateFormatter:2:12: note: class 'ISO8601DateFormatter' does not conform to the 'Sendable' protocol
 1 | @available(macOS 10.12, *)
 2 | open class ISO8601DateFormatter : Formatter, NSSecureCoding {
   |            `- note: class 'ISO8601DateFormatter' does not conform to the 'Sendable' protocol
 3 |     open var timeZone: TimeZone! { get set }
 4 |     open var formatOptions: ISO8601DateFormatter.Options { get set }
[23/58] Compiling OpenWeatherKit Date+Utils.swift
/Users/admin/builder/spi-builder-workspace/Sources/OpenWeatherKit/Internal/Extensions/WeatherQuery+QueryItems.swift:10:5: warning: let 'isoFormatter' is not concurrency-safe because non-'Sendable' type 'ISO8601DateFormatter' may have shared mutable state; this is an error in the Swift 6 language mode
 8 | import Foundation
 9 |
10 | let isoFormatter: ISO8601DateFormatter = {
   |     |- warning: let 'isoFormatter' is not concurrency-safe because non-'Sendable' type 'ISO8601DateFormatter' may have shared mutable state; this is an error in the Swift 6 language mode
   |     |- note: annotate 'isoFormatter' with '@MainActor' if property should only be accessed from the main actor
   |     `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
11 |     let formatter = ISO8601DateFormatter()
12 |     formatter.formatOptions = [.withInternetDateTime]
Foundation.ISO8601DateFormatter:2:12: note: class 'ISO8601DateFormatter' does not conform to the 'Sendable' protocol
 1 | @available(macOS 10.12, *)
 2 | open class ISO8601DateFormatter : Formatter, NSSecureCoding {
   |            `- note: class 'ISO8601DateFormatter' does not conform to the 'Sendable' protocol
 3 |     open var timeZone: TimeZone! { get set }
 4 |     open var formatOptions: ISO8601DateFormatter.Options { get set }
[24/58] Compiling OpenWeatherKit Optional+Utils.swift
/Users/admin/builder/spi-builder-workspace/Sources/OpenWeatherKit/Internal/Extensions/WeatherQuery+QueryItems.swift:10:5: warning: let 'isoFormatter' is not concurrency-safe because non-'Sendable' type 'ISO8601DateFormatter' may have shared mutable state; this is an error in the Swift 6 language mode
 8 | import Foundation
 9 |
10 | let isoFormatter: ISO8601DateFormatter = {
   |     |- warning: let 'isoFormatter' is not concurrency-safe because non-'Sendable' type 'ISO8601DateFormatter' may have shared mutable state; this is an error in the Swift 6 language mode
   |     |- note: annotate 'isoFormatter' with '@MainActor' if property should only be accessed from the main actor
   |     `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
11 |     let formatter = ISO8601DateFormatter()
12 |     formatter.formatOptions = [.withInternetDateTime]
Foundation.ISO8601DateFormatter:2:12: note: class 'ISO8601DateFormatter' does not conform to the 'Sendable' protocol
 1 | @available(macOS 10.12, *)
 2 | open class ISO8601DateFormatter : Formatter, NSSecureCoding {
   |            `- note: class 'ISO8601DateFormatter' does not conform to the 'Sendable' protocol
 3 |     open var timeZone: TimeZone! { get set }
 4 |     open var formatOptions: ISO8601DateFormatter.Options { get set }
[25/58] Compiling OpenWeatherKit Sendable+Compat.swift
/Users/admin/builder/spi-builder-workspace/Sources/OpenWeatherKit/Internal/Extensions/WeatherQuery+QueryItems.swift:10:5: warning: let 'isoFormatter' is not concurrency-safe because non-'Sendable' type 'ISO8601DateFormatter' may have shared mutable state; this is an error in the Swift 6 language mode
 8 | import Foundation
 9 |
10 | let isoFormatter: ISO8601DateFormatter = {
   |     |- warning: let 'isoFormatter' is not concurrency-safe because non-'Sendable' type 'ISO8601DateFormatter' may have shared mutable state; this is an error in the Swift 6 language mode
   |     |- note: annotate 'isoFormatter' with '@MainActor' if property should only be accessed from the main actor
   |     `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
11 |     let formatter = ISO8601DateFormatter()
12 |     formatter.formatOptions = [.withInternetDateTime]
Foundation.ISO8601DateFormatter:2:12: note: class 'ISO8601DateFormatter' does not conform to the 'Sendable' protocol
 1 | @available(macOS 10.12, *)
 2 | open class ISO8601DateFormatter : Formatter, NSSecureCoding {
   |            `- note: class 'ISO8601DateFormatter' does not conform to the 'Sendable' protocol
 3 |     open var timeZone: TimeZone! { get set }
 4 |     open var formatOptions: ISO8601DateFormatter.Options { get set }
[26/58] Compiling OpenWeatherKit WeatherQuery+QueryItems.swift
/Users/admin/builder/spi-builder-workspace/Sources/OpenWeatherKit/Internal/Extensions/WeatherQuery+QueryItems.swift:10:5: warning: let 'isoFormatter' is not concurrency-safe because non-'Sendable' type 'ISO8601DateFormatter' may have shared mutable state; this is an error in the Swift 6 language mode
 8 | import Foundation
 9 |
10 | let isoFormatter: ISO8601DateFormatter = {
   |     |- warning: let 'isoFormatter' is not concurrency-safe because non-'Sendable' type 'ISO8601DateFormatter' may have shared mutable state; this is an error in the Swift 6 language mode
   |     |- note: annotate 'isoFormatter' with '@MainActor' if property should only be accessed from the main actor
   |     `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
11 |     let formatter = ISO8601DateFormatter()
12 |     formatter.formatOptions = [.withInternetDateTime]
Foundation.ISO8601DateFormatter:2:12: note: class 'ISO8601DateFormatter' does not conform to the 'Sendable' protocol
 1 | @available(macOS 10.12, *)
 2 | open class ISO8601DateFormatter : Formatter, NSSecureCoding {
   |            `- note: class 'ISO8601DateFormatter' does not conform to the 'Sendable' protocol
 3 |     open var timeZone: TimeZone! { get set }
 4 |     open var formatOptions: ISO8601DateFormatter.Options { get set }
[27/58] Compiling OpenWeatherKit SunEvents.swift
[28/58] Compiling OpenWeatherKit AlertSummary.swift
[29/58] Compiling OpenWeatherKit AlertUrgency.swift
[30/58] Compiling OpenWeatherKit Certainty.swift
[31/58] Compiling OpenWeatherKit Precipitation.swift
[32/58] Compiling OpenWeatherKit WeatherQuery.swift
/Users/admin/builder/spi-builder-workspace/Sources/OpenWeatherKit/Public/Requests/WeatherQuery.swift:31:29: error: cannot convert value of type 'KeyPath<WeatherProxy, Forecast<MinuteWeather>?>' to expected argument type 'KeyPath<WeatherProxy, Forecast<MinuteWeather>??>'
 29 |         WeatherQuery<Forecast<MinuteWeather>?>(
 30 |             queryType: .minute(APIWeather.CodingKeys.forecastNextHour.rawValue),
 31 |             weatherKeyPath: \.minuteForecast?
    |                             |- error: cannot convert value of type 'KeyPath<WeatherProxy, Forecast<MinuteWeather>?>' to expected argument type 'KeyPath<WeatherProxy, Forecast<MinuteWeather>??>'
    |                             `- note: arguments to generic parameter 'Value' ('Forecast<MinuteWeather>?' and 'Forecast<MinuteWeather>??') are expected to be equal
 32 |         )
 33 |     }
/Users/admin/builder/spi-builder-workspace/Sources/OpenWeatherKit/Public/Requests/WeatherQuery.swift:65:29: error: cannot convert value of type 'KeyPath<WeatherProxy, [WeatherAlert]?>' to expected argument type 'KeyPath<WeatherProxy, [WeatherAlert]??>'
 63 |                 APIWeather.CodingKeys.weatherAlerts.rawValue, ""
 64 |             ),
 65 |             weatherKeyPath: \.weatherAlerts?
    |                             |- error: cannot convert value of type 'KeyPath<WeatherProxy, [WeatherAlert]?>' to expected argument type 'KeyPath<WeatherProxy, [WeatherAlert]??>'
    |                             `- note: arguments to generic parameter 'Value' ('[WeatherAlert]?' and '[WeatherAlert]??') are expected to be equal
 66 |         )
 67 |     }
/Users/admin/builder/spi-builder-workspace/Sources/OpenWeatherKit/Public/Requests/WeatherQuery.swift:120:29: error: cannot convert value of type 'KeyPath<WeatherProxy, [WeatherAlert]?>' to expected argument type 'KeyPath<WeatherProxy, [WeatherAlert]??>'
118 |                 countryCode
119 |             ),
120 |             weatherKeyPath: \.weatherAlerts?
    |                             |- error: cannot convert value of type 'KeyPath<WeatherProxy, [WeatherAlert]?>' to expected argument type 'KeyPath<WeatherProxy, [WeatherAlert]??>'
    |                             `- note: arguments to generic parameter 'Value' ('[WeatherAlert]?' and '[WeatherAlert]??') are expected to be equal
121 |         )
122 |     }
/Users/admin/builder/spi-builder-workspace/Sources/OpenWeatherKit/Public/WeatherService.swift:61:16: warning: static property 'configuration' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
 59 |
 60 |     @usableFromInline
 61 |     static var configuration: Configuration = Configuration(
    |                |- warning: static property 'configuration' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
    |                |- note: convert 'configuration' to a 'let' constant to make 'Sendable' shared state immutable
    |                |- note: annotate 'configuration' with '@MainActor' if property should only be accessed from the main actor
    |                `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 62 |         jwt: { preconditionFailure("Configuration must first be set by calling WeatherService.configure(_:).") }
 63 |     )
[33/58] Compiling OpenWeatherKit Weather.swift
/Users/admin/builder/spi-builder-workspace/Sources/OpenWeatherKit/Public/Requests/WeatherQuery.swift:31:29: error: cannot convert value of type 'KeyPath<WeatherProxy, Forecast<MinuteWeather>?>' to expected argument type 'KeyPath<WeatherProxy, Forecast<MinuteWeather>??>'
 29 |         WeatherQuery<Forecast<MinuteWeather>?>(
 30 |             queryType: .minute(APIWeather.CodingKeys.forecastNextHour.rawValue),
 31 |             weatherKeyPath: \.minuteForecast?
    |                             |- error: cannot convert value of type 'KeyPath<WeatherProxy, Forecast<MinuteWeather>?>' to expected argument type 'KeyPath<WeatherProxy, Forecast<MinuteWeather>??>'
    |                             `- note: arguments to generic parameter 'Value' ('Forecast<MinuteWeather>?' and 'Forecast<MinuteWeather>??') are expected to be equal
 32 |         )
 33 |     }
/Users/admin/builder/spi-builder-workspace/Sources/OpenWeatherKit/Public/Requests/WeatherQuery.swift:65:29: error: cannot convert value of type 'KeyPath<WeatherProxy, [WeatherAlert]?>' to expected argument type 'KeyPath<WeatherProxy, [WeatherAlert]??>'
 63 |                 APIWeather.CodingKeys.weatherAlerts.rawValue, ""
 64 |             ),
 65 |             weatherKeyPath: \.weatherAlerts?
    |                             |- error: cannot convert value of type 'KeyPath<WeatherProxy, [WeatherAlert]?>' to expected argument type 'KeyPath<WeatherProxy, [WeatherAlert]??>'
    |                             `- note: arguments to generic parameter 'Value' ('[WeatherAlert]?' and '[WeatherAlert]??') are expected to be equal
 66 |         )
 67 |     }
/Users/admin/builder/spi-builder-workspace/Sources/OpenWeatherKit/Public/Requests/WeatherQuery.swift:120:29: error: cannot convert value of type 'KeyPath<WeatherProxy, [WeatherAlert]?>' to expected argument type 'KeyPath<WeatherProxy, [WeatherAlert]??>'
118 |                 countryCode
119 |             ),
120 |             weatherKeyPath: \.weatherAlerts?
    |                             |- error: cannot convert value of type 'KeyPath<WeatherProxy, [WeatherAlert]?>' to expected argument type 'KeyPath<WeatherProxy, [WeatherAlert]??>'
    |                             `- note: arguments to generic parameter 'Value' ('[WeatherAlert]?' and '[WeatherAlert]??') are expected to be equal
121 |         )
122 |     }
/Users/admin/builder/spi-builder-workspace/Sources/OpenWeatherKit/Public/WeatherService.swift:61:16: warning: static property 'configuration' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
 59 |
 60 |     @usableFromInline
 61 |     static var configuration: Configuration = Configuration(
    |                |- warning: static property 'configuration' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
    |                |- note: convert 'configuration' to a 'let' constant to make 'Sendable' shared state immutable
    |                |- note: annotate 'configuration' with '@MainActor' if property should only be accessed from the main actor
    |                `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 62 |         jwt: { preconditionFailure("Configuration must first be set by calling WeatherService.configure(_:).") }
 63 |     )
[34/58] Compiling OpenWeatherKit WeatherError.swift
/Users/admin/builder/spi-builder-workspace/Sources/OpenWeatherKit/Public/Requests/WeatherQuery.swift:31:29: error: cannot convert value of type 'KeyPath<WeatherProxy, Forecast<MinuteWeather>?>' to expected argument type 'KeyPath<WeatherProxy, Forecast<MinuteWeather>??>'
 29 |         WeatherQuery<Forecast<MinuteWeather>?>(
 30 |             queryType: .minute(APIWeather.CodingKeys.forecastNextHour.rawValue),
 31 |             weatherKeyPath: \.minuteForecast?
    |                             |- error: cannot convert value of type 'KeyPath<WeatherProxy, Forecast<MinuteWeather>?>' to expected argument type 'KeyPath<WeatherProxy, Forecast<MinuteWeather>??>'
    |                             `- note: arguments to generic parameter 'Value' ('Forecast<MinuteWeather>?' and 'Forecast<MinuteWeather>??') are expected to be equal
 32 |         )
 33 |     }
/Users/admin/builder/spi-builder-workspace/Sources/OpenWeatherKit/Public/Requests/WeatherQuery.swift:65:29: error: cannot convert value of type 'KeyPath<WeatherProxy, [WeatherAlert]?>' to expected argument type 'KeyPath<WeatherProxy, [WeatherAlert]??>'
 63 |                 APIWeather.CodingKeys.weatherAlerts.rawValue, ""
 64 |             ),
 65 |             weatherKeyPath: \.weatherAlerts?
    |                             |- error: cannot convert value of type 'KeyPath<WeatherProxy, [WeatherAlert]?>' to expected argument type 'KeyPath<WeatherProxy, [WeatherAlert]??>'
    |                             `- note: arguments to generic parameter 'Value' ('[WeatherAlert]?' and '[WeatherAlert]??') are expected to be equal
 66 |         )
 67 |     }
/Users/admin/builder/spi-builder-workspace/Sources/OpenWeatherKit/Public/Requests/WeatherQuery.swift:120:29: error: cannot convert value of type 'KeyPath<WeatherProxy, [WeatherAlert]?>' to expected argument type 'KeyPath<WeatherProxy, [WeatherAlert]??>'
118 |                 countryCode
119 |             ),
120 |             weatherKeyPath: \.weatherAlerts?
    |                             |- error: cannot convert value of type 'KeyPath<WeatherProxy, [WeatherAlert]?>' to expected argument type 'KeyPath<WeatherProxy, [WeatherAlert]??>'
    |                             `- note: arguments to generic parameter 'Value' ('[WeatherAlert]?' and '[WeatherAlert]??') are expected to be equal
121 |         )
122 |     }
/Users/admin/builder/spi-builder-workspace/Sources/OpenWeatherKit/Public/WeatherService.swift:61:16: warning: static property 'configuration' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
 59 |
 60 |     @usableFromInline
 61 |     static var configuration: Configuration = Configuration(
    |                |- warning: static property 'configuration' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
    |                |- note: convert 'configuration' to a 'let' constant to make 'Sendable' shared state immutable
    |                |- note: annotate 'configuration' with '@MainActor' if property should only be accessed from the main actor
    |                `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 62 |         jwt: { preconditionFailure("Configuration must first be set by calling WeatherService.configure(_:).") }
 63 |     )
[35/58] Compiling OpenWeatherKit WeatherService.swift
/Users/admin/builder/spi-builder-workspace/Sources/OpenWeatherKit/Public/Requests/WeatherQuery.swift:31:29: error: cannot convert value of type 'KeyPath<WeatherProxy, Forecast<MinuteWeather>?>' to expected argument type 'KeyPath<WeatherProxy, Forecast<MinuteWeather>??>'
 29 |         WeatherQuery<Forecast<MinuteWeather>?>(
 30 |             queryType: .minute(APIWeather.CodingKeys.forecastNextHour.rawValue),
 31 |             weatherKeyPath: \.minuteForecast?
    |                             |- error: cannot convert value of type 'KeyPath<WeatherProxy, Forecast<MinuteWeather>?>' to expected argument type 'KeyPath<WeatherProxy, Forecast<MinuteWeather>??>'
    |                             `- note: arguments to generic parameter 'Value' ('Forecast<MinuteWeather>?' and 'Forecast<MinuteWeather>??') are expected to be equal
 32 |         )
 33 |     }
/Users/admin/builder/spi-builder-workspace/Sources/OpenWeatherKit/Public/Requests/WeatherQuery.swift:65:29: error: cannot convert value of type 'KeyPath<WeatherProxy, [WeatherAlert]?>' to expected argument type 'KeyPath<WeatherProxy, [WeatherAlert]??>'
 63 |                 APIWeather.CodingKeys.weatherAlerts.rawValue, ""
 64 |             ),
 65 |             weatherKeyPath: \.weatherAlerts?
    |                             |- error: cannot convert value of type 'KeyPath<WeatherProxy, [WeatherAlert]?>' to expected argument type 'KeyPath<WeatherProxy, [WeatherAlert]??>'
    |                             `- note: arguments to generic parameter 'Value' ('[WeatherAlert]?' and '[WeatherAlert]??') are expected to be equal
 66 |         )
 67 |     }
/Users/admin/builder/spi-builder-workspace/Sources/OpenWeatherKit/Public/Requests/WeatherQuery.swift:120:29: error: cannot convert value of type 'KeyPath<WeatherProxy, [WeatherAlert]?>' to expected argument type 'KeyPath<WeatherProxy, [WeatherAlert]??>'
118 |                 countryCode
119 |             ),
120 |             weatherKeyPath: \.weatherAlerts?
    |                             |- error: cannot convert value of type 'KeyPath<WeatherProxy, [WeatherAlert]?>' to expected argument type 'KeyPath<WeatherProxy, [WeatherAlert]??>'
    |                             `- note: arguments to generic parameter 'Value' ('[WeatherAlert]?' and '[WeatherAlert]??') are expected to be equal
121 |         )
122 |     }
/Users/admin/builder/spi-builder-workspace/Sources/OpenWeatherKit/Public/WeatherService.swift:61:16: warning: static property 'configuration' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
 59 |
 60 |     @usableFromInline
 61 |     static var configuration: Configuration = Configuration(
    |                |- warning: static property 'configuration' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
    |                |- note: convert 'configuration' to a 'let' constant to make 'Sendable' shared state immutable
    |                |- note: annotate 'configuration' with '@MainActor' if property should only be accessed from the main actor
    |                `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 62 |         jwt: { preconditionFailure("Configuration must first be set by calling WeatherService.configure(_:).") }
 63 |     )
[36/58] Compiling OpenWeatherKit resource_bundle_accessor.swift
/Users/admin/builder/spi-builder-workspace/Sources/OpenWeatherKit/Public/Requests/WeatherQuery.swift:31:29: error: cannot convert value of type 'KeyPath<WeatherProxy, Forecast<MinuteWeather>?>' to expected argument type 'KeyPath<WeatherProxy, Forecast<MinuteWeather>??>'
 29 |         WeatherQuery<Forecast<MinuteWeather>?>(
 30 |             queryType: .minute(APIWeather.CodingKeys.forecastNextHour.rawValue),
 31 |             weatherKeyPath: \.minuteForecast?
    |                             |- error: cannot convert value of type 'KeyPath<WeatherProxy, Forecast<MinuteWeather>?>' to expected argument type 'KeyPath<WeatherProxy, Forecast<MinuteWeather>??>'
    |                             `- note: arguments to generic parameter 'Value' ('Forecast<MinuteWeather>?' and 'Forecast<MinuteWeather>??') are expected to be equal
 32 |         )
 33 |     }
/Users/admin/builder/spi-builder-workspace/Sources/OpenWeatherKit/Public/Requests/WeatherQuery.swift:65:29: error: cannot convert value of type 'KeyPath<WeatherProxy, [WeatherAlert]?>' to expected argument type 'KeyPath<WeatherProxy, [WeatherAlert]??>'
 63 |                 APIWeather.CodingKeys.weatherAlerts.rawValue, ""
 64 |             ),
 65 |             weatherKeyPath: \.weatherAlerts?
    |                             |- error: cannot convert value of type 'KeyPath<WeatherProxy, [WeatherAlert]?>' to expected argument type 'KeyPath<WeatherProxy, [WeatherAlert]??>'
    |                             `- note: arguments to generic parameter 'Value' ('[WeatherAlert]?' and '[WeatherAlert]??') are expected to be equal
 66 |         )
 67 |     }
/Users/admin/builder/spi-builder-workspace/Sources/OpenWeatherKit/Public/Requests/WeatherQuery.swift:120:29: error: cannot convert value of type 'KeyPath<WeatherProxy, [WeatherAlert]?>' to expected argument type 'KeyPath<WeatherProxy, [WeatherAlert]??>'
118 |                 countryCode
119 |             ),
120 |             weatherKeyPath: \.weatherAlerts?
    |                             |- error: cannot convert value of type 'KeyPath<WeatherProxy, [WeatherAlert]?>' to expected argument type 'KeyPath<WeatherProxy, [WeatherAlert]??>'
    |                             `- note: arguments to generic parameter 'Value' ('[WeatherAlert]?' and '[WeatherAlert]??') are expected to be equal
121 |         )
122 |     }
/Users/admin/builder/spi-builder-workspace/Sources/OpenWeatherKit/Public/WeatherService.swift:61:16: warning: static property 'configuration' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
 59 |
 60 |     @usableFromInline
 61 |     static var configuration: Configuration = Configuration(
    |                |- warning: static property 'configuration' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
    |                |- note: convert 'configuration' to a 'let' constant to make 'Sendable' shared state immutable
    |                |- note: annotate 'configuration' with '@MainActor' if property should only be accessed from the main actor
    |                `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 62 |         jwt: { preconditionFailure("Configuration must first be set by calling WeatherService.configure(_:).") }
 63 |     )
[37/58] Compiling OpenWeatherKit WeatherAvailability.swift
[38/58] Compiling OpenWeatherKit LocationProtocol.swift
[39/58] Compiling OpenWeatherKit CurrentWeather.swift
[40/58] Compiling OpenWeatherKit WeatherAttribution.swift
[41/58] Compiling OpenWeatherKit WeatherMetadata.swift
[42/58] Compiling OpenWeatherKit APICurrentWeather+Map.swift
[43/58] Compiling OpenWeatherKit APIForecastDaily+Map.swift
[44/58] Compiling OpenWeatherKit APIForecastHourly+Map.swift
[45/58] Compiling OpenWeatherKit APIForecastNextHour+Map.swift
[46/58] Compiling OpenWeatherKit APIMetadata+Map.swift
[47/58] Compiling OpenWeatherKit APIWeather+Map.swift
[48/58] Compiling OpenWeatherKit PressureTrend.swift
[49/58] Compiling OpenWeatherKit UVIndex.swift
[50/58] Compiling OpenWeatherKit WeatherCondition.swift
[51/58] Compiling OpenWeatherKit WeatherSeverity.swift
[52/58] Compiling OpenWeatherKit Wind.swift
[53/58] Compiling OpenWeatherKit Geocoder.swift
/Users/admin/builder/spi-builder-workspace/Sources/OpenWeatherKit/Internal/Geocoder.swift:20:23: warning: capture of 'geocoder' with non-sendable type 'CLGeocoder' in a `@Sendable` closure; this is an error in the Swift 6 language mode
18 |         let geocoder = CLGeocoder()
19 |         return .init {
20 |             try await geocoder.reverseGeocodeLocation(
   |                       `- warning: capture of 'geocoder' with non-sendable type 'CLGeocoder' in a `@Sendable` closure; this is an error in the Swift 6 language mode
21 |                 CLLocation(
22 |                     latitude: $0.latitude,
CoreLocation.CLGeocoder:2:12: note: class 'CLGeocoder' does not conform to the 'Sendable' protocol
 1 | @available(macOS 10.8, *)
 2 | open class CLGeocoder : NSObject {
   |            `- note: class 'CLGeocoder' does not conform to the 'Sendable' protocol
 3 |     open var isGeocoding: Bool { get }
 4 |     @available(swift, obsoleted: 3, renamed: "isGeocoding")
/Users/admin/builder/spi-builder-workspace/Sources/OpenWeatherKit/Internal/Geocoder.swift:10:1: warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'CoreLocation'
 8 | import Foundation
 9 | #if canImport(CoreLocation)
10 | import CoreLocation
   | `- warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'CoreLocation'
11 |
12 | @usableFromInline
[54/58] Compiling OpenWeatherKit APICurrentWeather.swift
/Users/admin/builder/spi-builder-workspace/Sources/OpenWeatherKit/Internal/Geocoder.swift:20:23: warning: capture of 'geocoder' with non-sendable type 'CLGeocoder' in a `@Sendable` closure; this is an error in the Swift 6 language mode
18 |         let geocoder = CLGeocoder()
19 |         return .init {
20 |             try await geocoder.reverseGeocodeLocation(
   |                       `- warning: capture of 'geocoder' with non-sendable type 'CLGeocoder' in a `@Sendable` closure; this is an error in the Swift 6 language mode
21 |                 CLLocation(
22 |                     latitude: $0.latitude,
CoreLocation.CLGeocoder:2:12: note: class 'CLGeocoder' does not conform to the 'Sendable' protocol
 1 | @available(macOS 10.8, *)
 2 | open class CLGeocoder : NSObject {
   |            `- note: class 'CLGeocoder' does not conform to the 'Sendable' protocol
 3 |     open var isGeocoding: Bool { get }
 4 |     @available(swift, obsoleted: 3, renamed: "isGeocoding")
/Users/admin/builder/spi-builder-workspace/Sources/OpenWeatherKit/Internal/Geocoder.swift:10:1: warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'CoreLocation'
 8 | import Foundation
 9 | #if canImport(CoreLocation)
10 | import CoreLocation
   | `- warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'CoreLocation'
11 |
12 | @usableFromInline
[55/58] Compiling OpenWeatherKit APIForecastDaily.swift
/Users/admin/builder/spi-builder-workspace/Sources/OpenWeatherKit/Internal/Geocoder.swift:20:23: warning: capture of 'geocoder' with non-sendable type 'CLGeocoder' in a `@Sendable` closure; this is an error in the Swift 6 language mode
18 |         let geocoder = CLGeocoder()
19 |         return .init {
20 |             try await geocoder.reverseGeocodeLocation(
   |                       `- warning: capture of 'geocoder' with non-sendable type 'CLGeocoder' in a `@Sendable` closure; this is an error in the Swift 6 language mode
21 |                 CLLocation(
22 |                     latitude: $0.latitude,
CoreLocation.CLGeocoder:2:12: note: class 'CLGeocoder' does not conform to the 'Sendable' protocol
 1 | @available(macOS 10.8, *)
 2 | open class CLGeocoder : NSObject {
   |            `- note: class 'CLGeocoder' does not conform to the 'Sendable' protocol
 3 |     open var isGeocoding: Bool { get }
 4 |     @available(swift, obsoleted: 3, renamed: "isGeocoding")
/Users/admin/builder/spi-builder-workspace/Sources/OpenWeatherKit/Internal/Geocoder.swift:10:1: warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'CoreLocation'
 8 | import Foundation
 9 | #if canImport(CoreLocation)
10 | import CoreLocation
   | `- warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'CoreLocation'
11 |
12 | @usableFromInline
[56/58] Compiling OpenWeatherKit APIForecastHourly.swift
/Users/admin/builder/spi-builder-workspace/Sources/OpenWeatherKit/Internal/Geocoder.swift:20:23: warning: capture of 'geocoder' with non-sendable type 'CLGeocoder' in a `@Sendable` closure; this is an error in the Swift 6 language mode
18 |         let geocoder = CLGeocoder()
19 |         return .init {
20 |             try await geocoder.reverseGeocodeLocation(
   |                       `- warning: capture of 'geocoder' with non-sendable type 'CLGeocoder' in a `@Sendable` closure; this is an error in the Swift 6 language mode
21 |                 CLLocation(
22 |                     latitude: $0.latitude,
CoreLocation.CLGeocoder:2:12: note: class 'CLGeocoder' does not conform to the 'Sendable' protocol
 1 | @available(macOS 10.8, *)
 2 | open class CLGeocoder : NSObject {
   |            `- note: class 'CLGeocoder' does not conform to the 'Sendable' protocol
 3 |     open var isGeocoding: Bool { get }
 4 |     @available(swift, obsoleted: 3, renamed: "isGeocoding")
/Users/admin/builder/spi-builder-workspace/Sources/OpenWeatherKit/Internal/Geocoder.swift:10:1: warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'CoreLocation'
 8 | import Foundation
 9 | #if canImport(CoreLocation)
10 | import CoreLocation
   | `- warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'CoreLocation'
11 |
12 | @usableFromInline
[57/58] Compiling OpenWeatherKit APIForecastNextHour.swift
/Users/admin/builder/spi-builder-workspace/Sources/OpenWeatherKit/Internal/Geocoder.swift:20:23: warning: capture of 'geocoder' with non-sendable type 'CLGeocoder' in a `@Sendable` closure; this is an error in the Swift 6 language mode
18 |         let geocoder = CLGeocoder()
19 |         return .init {
20 |             try await geocoder.reverseGeocodeLocation(
   |                       `- warning: capture of 'geocoder' with non-sendable type 'CLGeocoder' in a `@Sendable` closure; this is an error in the Swift 6 language mode
21 |                 CLLocation(
22 |                     latitude: $0.latitude,
CoreLocation.CLGeocoder:2:12: note: class 'CLGeocoder' does not conform to the 'Sendable' protocol
 1 | @available(macOS 10.8, *)
 2 | open class CLGeocoder : NSObject {
   |            `- note: class 'CLGeocoder' does not conform to the 'Sendable' protocol
 3 |     open var isGeocoding: Bool { get }
 4 |     @available(swift, obsoleted: 3, renamed: "isGeocoding")
/Users/admin/builder/spi-builder-workspace/Sources/OpenWeatherKit/Internal/Geocoder.swift:10:1: warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'CoreLocation'
 8 | import Foundation
 9 | #if canImport(CoreLocation)
10 | import CoreLocation
   | `- warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'CoreLocation'
11 |
12 | @usableFromInline
[58/58] Compiling OpenWeatherKit APIMetadata.swift
/Users/admin/builder/spi-builder-workspace/Sources/OpenWeatherKit/Internal/Geocoder.swift:20:23: warning: capture of 'geocoder' with non-sendable type 'CLGeocoder' in a `@Sendable` closure; this is an error in the Swift 6 language mode
18 |         let geocoder = CLGeocoder()
19 |         return .init {
20 |             try await geocoder.reverseGeocodeLocation(
   |                       `- warning: capture of 'geocoder' with non-sendable type 'CLGeocoder' in a `@Sendable` closure; this is an error in the Swift 6 language mode
21 |                 CLLocation(
22 |                     latitude: $0.latitude,
CoreLocation.CLGeocoder:2:12: note: class 'CLGeocoder' does not conform to the 'Sendable' protocol
 1 | @available(macOS 10.8, *)
 2 | open class CLGeocoder : NSObject {
   |            `- note: class 'CLGeocoder' does not conform to the 'Sendable' protocol
 3 |     open var isGeocoding: Bool { get }
 4 |     @available(swift, obsoleted: 3, renamed: "isGeocoding")
/Users/admin/builder/spi-builder-workspace/Sources/OpenWeatherKit/Internal/Geocoder.swift:10:1: warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'CoreLocation'
 8 | import Foundation
 9 | #if canImport(CoreLocation)
10 | import CoreLocation
   | `- warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'CoreLocation'
11 |
12 | @usableFromInline
BUILD FAILURE 6.0 macosSpm