Build Information
Successful build of CIMISKit, reference main (484f6f
), with Swift 6.1 for macOS (SPM) on 28 Apr 2025 21:39:33 UTC.
Swift 6 data race errors: 0
Build Command
env DEVELOPER_DIR=/Applications/Xcode-16.3.0.app xcrun swift build --arch arm64 -Xswiftc -Xfrontend -Xswiftc -stats-output-dir -Xswiftc -Xfrontend -Xswiftc .stats -Xswiftc -strict-concurrency=complete -Xswiftc -enable-upcoming-feature -Xswiftc StrictConcurrency -Xswiftc -enable-upcoming-feature -Xswiftc DisableOutwardActorInference -Xswiftc -enable-upcoming-feature -Xswiftc GlobalActorIsolatedTypesUsability -Xswiftc -enable-upcoming-feature -Xswiftc InferSendableFromCaptures
Build Log
========================================
RunAll
========================================
Builder version: 4.61.0
Interrupt handler set up.
========================================
Checkout
========================================
Clone URL: https://github.com/dl-alexandre/CIMISKit.git
Reference: main
Initialized empty Git repository in /Users/admin/builder/spi-builder-workspace/.git/
From https://github.com/dl-alexandre/CIMISKit
* branch main -> FETCH_HEAD
* [new branch] main -> origin/main
HEAD is now at 484f6fa update README
Cloned https://github.com/dl-alexandre/CIMISKit.git
Revision (git rev-parse @):
484f6fa122050d2f0a3d1404e0819f53ef3417df
SUCCESS checkout https://github.com/dl-alexandre/CIMISKit.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": "cimiskit",
"name": "CIMISKit",
"url": "https://github.com/dl-alexandre/CIMISKit.git",
"version": "unspecified",
"path": "/Users/admin/builder/spi-builder-workspace/.resolve-product-dependencies/.build/checkouts/CIMISKit",
"dependencies": [
]
}
]
}
Fetching https://github.com/dl-alexandre/CIMISKit.git
[10/485] Fetching cimiskit
Fetched https://github.com/dl-alexandre/CIMISKit.git from cache (0.84s)
Creating working copy for https://github.com/dl-alexandre/CIMISKit.git
Working copy of https://github.com/dl-alexandre/CIMISKit.git resolved at main (484f6fa)
warning: '.resolve-product-dependencies': dependency 'cimiskit' 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/dl-alexandre/CIMISKit.git
https://github.com/dl-alexandre/CIMISKit.git
{
"dependencies" : [
],
"manifest_display_name" : "CIMISKit",
"name" : "CIMISKit",
"path" : "/Users/admin/builder/spi-builder-workspace",
"platforms" : [
{
"name" : "ios",
"version" : "17.0"
},
{
"name" : "macos",
"version" : "14.0"
}
],
"products" : [
{
"name" : "CIMISKit",
"targets" : [
"CIMISKit"
],
"type" : {
"library" : [
"automatic"
]
}
}
],
"targets" : [
{
"c99name" : "CIMISKitTests",
"module_type" : "SwiftTarget",
"name" : "CIMISKitTests",
"path" : "Tests/CIMISKitTests",
"sources" : [
"CIMISKitTests.swift"
],
"target_dependencies" : [
"CIMISKit"
],
"type" : "test"
},
{
"c99name" : "CIMISKit",
"module_type" : "SwiftTarget",
"name" : "CIMISKit",
"path" : "Sources/CIMISKit",
"product_memberships" : [
"CIMISKit"
],
"sources" : [
"Fetchers/Precip/AnnualPrecipFetcher.swift",
"Fetchers/Precip/HourlyPrecipFetcher.swift",
"Fetchers/Precip/MonthlyPrecipFetcher.swift",
"Fetchers/Precip/WeeklyPrecipFetcher.swift",
"Fetchers/StationFetcher.swift",
"Fetchers/WeatherFetcher.swift",
"Fetchers/ZipCodeFetcher.swift",
"Network/APIService.swift",
"Network/APIServiceProtocol.swift",
"Network/AppState.swift",
"Network/Errors.swift",
"Standard/Climate/Models/Data/HourlyModelData.swift",
"Standard/Climate/Models/Data/PrecipModelData.swift",
"Standard/Climate/Models/Data/Providers/HourlyModelProvider.swift",
"Standard/Climate/Models/Data/Providers/PrecipModelProvider.swift",
"Standard/Climate/Models/Data/Providers/Records/Extra/Measurement.swift",
"Standard/Climate/Models/Data/Providers/Records/Extra/Scope.swift",
"Standard/Climate/Models/Data/Providers/Records/Extra/Unit.swift",
"Standard/Climate/Models/Data/Providers/Records/HourlyModelRecord.swift",
"Standard/Climate/Models/Data/Providers/Records/PrecipModelRecord.swift",
"Standard/Climate/Models/Data/Providers/Records/SoilModelRecord.swift",
"Standard/Climate/Models/Data/Providers/Records/StandardModelRecord.swift",
"Standard/Climate/Models/Data/Providers/SoilModelProvider.swift",
"Standard/Climate/Models/Data/Providers/StandardModelProvider.swift",
"Standard/Climate/Models/Data/SoilModelData.swift",
"Standard/Climate/Models/Data/StandardModelData.swift",
"Standard/Climate/Models/HourlyModel.swift",
"Standard/Climate/Models/PrecipModel.swift",
"Standard/Climate/Models/SoilModel.swift",
"Standard/Climate/Models/StandardModel.swift",
"Standard/Station/Extra/GroundCover.swift",
"Standard/Station/Extra/Is.swift",
"Standard/Station/Extra/RegionalOffice.swift",
"Standard/Station/Station.swift",
"Standard/Station/StationModel.swift",
"Standard/ZipCodes/ZipCode.swift",
"Standard/ZipCodes/ZipCodeModel.swift",
"Views/Charts/Evapotranspiration/CIMISEvapotranspirationChart.swift",
"Views/Charts/Evapotranspiration/DayEvapotranspirationChart.swift",
"Views/Charts/Humidity/CIMISHumidityChart.swift",
"Views/Charts/Humidity/DayHumidityChart.swift",
"Views/Charts/Precipitation/CIMISPrecipitationChart.swift",
"Views/Charts/Precipitation/DayPrecipitationChart.swift",
"Views/Charts/SoilTemp/CIMISTemperatureChart.swift",
"Views/Charts/SoilTemp/DayTemperatureChart.swift",
"Views/Charts/SolarRadiation/CIMISRadiationChart.swift",
"Views/Charts/SolarRadiation/DayNetRadiationChart.swift",
"Views/Charts/VaporPressure/CIMISVaporPressureChart.swift",
"Views/Charts/VaporPressure/DayVaporPressureChart.swift",
"Views/Charts/WindDirection/CIMISWindRunChart.swift",
"Views/Charts/WindDirection/DayWindDirectionChart.swift",
"Views/Charts/WindSpeed/CIMISWindSpeedChart.swift",
"Views/Charts/WindSpeed/DayWindSpeedChart.swift",
"Views/GroundCoverView.swift",
"Views/UnitView.swift"
],
"type" : "library"
}
],
"tools_version" : "5.10"
}
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/53] Emitting module CIMISKit
[4/58] Compiling CIMISKit SoilModelData.swift
[5/58] Compiling CIMISKit StandardModelData.swift
[6/58] Compiling CIMISKit HourlyModel.swift
[7/58] Compiling CIMISKit PrecipModel.swift
[8/58] Compiling CIMISKit SoilModel.swift
[9/58] Compiling CIMISKit StandardModel.swift
[10/58] Compiling CIMISKit GroundCover.swift
[11/58] Compiling CIMISKit Is.swift
[12/58] Compiling CIMISKit RegionalOffice.swift
[13/58] Compiling CIMISKit Station.swift
[14/58] Compiling CIMISKit StationModel.swift
[15/58] Compiling CIMISKit AnnualPrecipFetcher.swift
/Users/admin/builder/spi-builder-workspace/Sources/CIMISKit/Fetchers/StationFetcher.swift:117:8: warning: reference to property 'isLoading' in closure requires explicit use of 'self' to make capture semantics explicit; this is an error in the Swift 6 language mode
114 |
115 | service.fetchStations(url: endpoint) { [unowned self] result in
116 | DispatchQueue.main.async {
| `- note: capture 'self' explicitly to enable implicit 'self' in this closure
117 | isLoading = false
| |- warning: reference to property 'isLoading' in closure requires explicit use of 'self' to make capture semantics explicit; this is an error in the Swift 6 language mode
| `- note: reference 'self.' explicitly
118 | switch result {
119 | case .failure(let error): self.errorMessage = error.localizedDescription
[16/58] Compiling CIMISKit HourlyPrecipFetcher.swift
/Users/admin/builder/spi-builder-workspace/Sources/CIMISKit/Fetchers/StationFetcher.swift:117:8: warning: reference to property 'isLoading' in closure requires explicit use of 'self' to make capture semantics explicit; this is an error in the Swift 6 language mode
114 |
115 | service.fetchStations(url: endpoint) { [unowned self] result in
116 | DispatchQueue.main.async {
| `- note: capture 'self' explicitly to enable implicit 'self' in this closure
117 | isLoading = false
| |- warning: reference to property 'isLoading' in closure requires explicit use of 'self' to make capture semantics explicit; this is an error in the Swift 6 language mode
| `- note: reference 'self.' explicitly
118 | switch result {
119 | case .failure(let error): self.errorMessage = error.localizedDescription
[17/58] Compiling CIMISKit MonthlyPrecipFetcher.swift
/Users/admin/builder/spi-builder-workspace/Sources/CIMISKit/Fetchers/StationFetcher.swift:117:8: warning: reference to property 'isLoading' in closure requires explicit use of 'self' to make capture semantics explicit; this is an error in the Swift 6 language mode
114 |
115 | service.fetchStations(url: endpoint) { [unowned self] result in
116 | DispatchQueue.main.async {
| `- note: capture 'self' explicitly to enable implicit 'self' in this closure
117 | isLoading = false
| |- warning: reference to property 'isLoading' in closure requires explicit use of 'self' to make capture semantics explicit; this is an error in the Swift 6 language mode
| `- note: reference 'self.' explicitly
118 | switch result {
119 | case .failure(let error): self.errorMessage = error.localizedDescription
[18/58] Compiling CIMISKit WeeklyPrecipFetcher.swift
/Users/admin/builder/spi-builder-workspace/Sources/CIMISKit/Fetchers/StationFetcher.swift:117:8: warning: reference to property 'isLoading' in closure requires explicit use of 'self' to make capture semantics explicit; this is an error in the Swift 6 language mode
114 |
115 | service.fetchStations(url: endpoint) { [unowned self] result in
116 | DispatchQueue.main.async {
| `- note: capture 'self' explicitly to enable implicit 'self' in this closure
117 | isLoading = false
| |- warning: reference to property 'isLoading' in closure requires explicit use of 'self' to make capture semantics explicit; this is an error in the Swift 6 language mode
| `- note: reference 'self.' explicitly
118 | switch result {
119 | case .failure(let error): self.errorMessage = error.localizedDescription
[19/58] Compiling CIMISKit StationFetcher.swift
/Users/admin/builder/spi-builder-workspace/Sources/CIMISKit/Fetchers/StationFetcher.swift:117:8: warning: reference to property 'isLoading' in closure requires explicit use of 'self' to make capture semantics explicit; this is an error in the Swift 6 language mode
114 |
115 | service.fetchStations(url: endpoint) { [unowned self] result in
116 | DispatchQueue.main.async {
| `- note: capture 'self' explicitly to enable implicit 'self' in this closure
117 | isLoading = false
| |- warning: reference to property 'isLoading' in closure requires explicit use of 'self' to make capture semantics explicit; this is an error in the Swift 6 language mode
| `- note: reference 'self.' explicitly
118 | switch result {
119 | case .failure(let error): self.errorMessage = error.localizedDescription
[20/58] Compiling CIMISKit WeatherFetcher.swift
/Users/admin/builder/spi-builder-workspace/Sources/CIMISKit/Fetchers/StationFetcher.swift:117:8: warning: reference to property 'isLoading' in closure requires explicit use of 'self' to make capture semantics explicit; this is an error in the Swift 6 language mode
114 |
115 | service.fetchStations(url: endpoint) { [unowned self] result in
116 | DispatchQueue.main.async {
| `- note: capture 'self' explicitly to enable implicit 'self' in this closure
117 | isLoading = false
| |- warning: reference to property 'isLoading' in closure requires explicit use of 'self' to make capture semantics explicit; this is an error in the Swift 6 language mode
| `- note: reference 'self.' explicitly
118 | switch result {
119 | case .failure(let error): self.errorMessage = error.localizedDescription
[21/58] Compiling CIMISKit DayWindDirectionChart.swift
[22/58] Compiling CIMISKit CIMISWindSpeedChart.swift
[23/58] Compiling CIMISKit DayWindSpeedChart.swift
[24/58] Compiling CIMISKit GroundCoverView.swift
[25/58] Compiling CIMISKit UnitView.swift
[26/58] Compiling CIMISKit ZipCodeFetcher.swift
/Users/admin/builder/spi-builder-workspace/Sources/CIMISKit/Network/APIService.swift:22:17: warning: capture of 'completion' with non-sendable type '(Result<StationModel, CIMISError>) -> Void' in a '@Sendable' closure
20 |
21 | if let error = error as? URLError {
22 | completion(Result.failure(CIMISError.url(error)))
| |- warning: capture of 'completion' with non-sendable type '(Result<StationModel, CIMISError>) -> Void' in a '@Sendable' closure
| `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
23 | }
24 |
/Users/admin/builder/spi-builder-workspace/Sources/CIMISKit/Network/APIService.swift:67:17: warning: capture of 'completion' with non-sendable type '(Result<ZipCodeModel, CIMISError>) -> Void' in a '@Sendable' closure
65 |
66 | if let error = error as? URLError {
67 | completion(Result.failure(CIMISError.url(error)))
| |- warning: capture of 'completion' with non-sendable type '(Result<ZipCodeModel, CIMISError>) -> Void' in a '@Sendable' closure
| `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
68 | }
69 |
/Users/admin/builder/spi-builder-workspace/Sources/CIMISKit/Network/APIService.swift:112:17: warning: capture of 'completion' with non-sendable type '(Result<WeatherPrecipModel, CIMISError>) -> Void' in a '@Sendable' closure
110 |
111 | if let error = error as? URLError {
112 | completion(Result.failure(CIMISError.url(error)))
| |- warning: capture of 'completion' with non-sendable type '(Result<WeatherPrecipModel, CIMISError>) -> Void' in a '@Sendable' closure
| `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
113 | }
114 |
/Users/admin/builder/spi-builder-workspace/Sources/CIMISKit/Network/APIService.swift:157:17: warning: capture of 'completion' with non-sendable type '(Result<HrlyWeatherModel, CIMISError>) -> Void' in a '@Sendable' closure
155 |
156 | if let error = error as? URLError {
157 | completion(Result.failure(CIMISError.url(error)))
| |- warning: capture of 'completion' with non-sendable type '(Result<HrlyWeatherModel, CIMISError>) -> Void' in a '@Sendable' closure
| `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
158 | }
159 |
/Users/admin/builder/spi-builder-workspace/Sources/CIMISKit/Network/APIService.swift:203:17: warning: capture of 'completion' with non-sendable type '(Result<T, CIMISError>) -> Void' in a '@Sendable' closure
201 |
202 | if let error = error as? URLError {
203 | completion(Result.failure(CIMISError.url(error)))
| |- warning: capture of 'completion' with non-sendable type '(Result<T, CIMISError>) -> Void' in a '@Sendable' closure
| `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
204 | } else if let response = response as? HTTPURLResponse, !(200...299).contains(response.statusCode) {
205 | completion(Result.failure(CIMISError.invalidResponse(statusCode: response.statusCode)))
[27/58] Compiling CIMISKit APIService.swift
/Users/admin/builder/spi-builder-workspace/Sources/CIMISKit/Network/APIService.swift:22:17: warning: capture of 'completion' with non-sendable type '(Result<StationModel, CIMISError>) -> Void' in a '@Sendable' closure
20 |
21 | if let error = error as? URLError {
22 | completion(Result.failure(CIMISError.url(error)))
| |- warning: capture of 'completion' with non-sendable type '(Result<StationModel, CIMISError>) -> Void' in a '@Sendable' closure
| `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
23 | }
24 |
/Users/admin/builder/spi-builder-workspace/Sources/CIMISKit/Network/APIService.swift:67:17: warning: capture of 'completion' with non-sendable type '(Result<ZipCodeModel, CIMISError>) -> Void' in a '@Sendable' closure
65 |
66 | if let error = error as? URLError {
67 | completion(Result.failure(CIMISError.url(error)))
| |- warning: capture of 'completion' with non-sendable type '(Result<ZipCodeModel, CIMISError>) -> Void' in a '@Sendable' closure
| `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
68 | }
69 |
/Users/admin/builder/spi-builder-workspace/Sources/CIMISKit/Network/APIService.swift:112:17: warning: capture of 'completion' with non-sendable type '(Result<WeatherPrecipModel, CIMISError>) -> Void' in a '@Sendable' closure
110 |
111 | if let error = error as? URLError {
112 | completion(Result.failure(CIMISError.url(error)))
| |- warning: capture of 'completion' with non-sendable type '(Result<WeatherPrecipModel, CIMISError>) -> Void' in a '@Sendable' closure
| `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
113 | }
114 |
/Users/admin/builder/spi-builder-workspace/Sources/CIMISKit/Network/APIService.swift:157:17: warning: capture of 'completion' with non-sendable type '(Result<HrlyWeatherModel, CIMISError>) -> Void' in a '@Sendable' closure
155 |
156 | if let error = error as? URLError {
157 | completion(Result.failure(CIMISError.url(error)))
| |- warning: capture of 'completion' with non-sendable type '(Result<HrlyWeatherModel, CIMISError>) -> Void' in a '@Sendable' closure
| `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
158 | }
159 |
/Users/admin/builder/spi-builder-workspace/Sources/CIMISKit/Network/APIService.swift:203:17: warning: capture of 'completion' with non-sendable type '(Result<T, CIMISError>) -> Void' in a '@Sendable' closure
201 |
202 | if let error = error as? URLError {
203 | completion(Result.failure(CIMISError.url(error)))
| |- warning: capture of 'completion' with non-sendable type '(Result<T, CIMISError>) -> Void' in a '@Sendable' closure
| `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
204 | } else if let response = response as? HTTPURLResponse, !(200...299).contains(response.statusCode) {
205 | completion(Result.failure(CIMISError.invalidResponse(statusCode: response.statusCode)))
[28/58] Compiling CIMISKit APIServiceProtocol.swift
/Users/admin/builder/spi-builder-workspace/Sources/CIMISKit/Network/APIService.swift:22:17: warning: capture of 'completion' with non-sendable type '(Result<StationModel, CIMISError>) -> Void' in a '@Sendable' closure
20 |
21 | if let error = error as? URLError {
22 | completion(Result.failure(CIMISError.url(error)))
| |- warning: capture of 'completion' with non-sendable type '(Result<StationModel, CIMISError>) -> Void' in a '@Sendable' closure
| `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
23 | }
24 |
/Users/admin/builder/spi-builder-workspace/Sources/CIMISKit/Network/APIService.swift:67:17: warning: capture of 'completion' with non-sendable type '(Result<ZipCodeModel, CIMISError>) -> Void' in a '@Sendable' closure
65 |
66 | if let error = error as? URLError {
67 | completion(Result.failure(CIMISError.url(error)))
| |- warning: capture of 'completion' with non-sendable type '(Result<ZipCodeModel, CIMISError>) -> Void' in a '@Sendable' closure
| `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
68 | }
69 |
/Users/admin/builder/spi-builder-workspace/Sources/CIMISKit/Network/APIService.swift:112:17: warning: capture of 'completion' with non-sendable type '(Result<WeatherPrecipModel, CIMISError>) -> Void' in a '@Sendable' closure
110 |
111 | if let error = error as? URLError {
112 | completion(Result.failure(CIMISError.url(error)))
| |- warning: capture of 'completion' with non-sendable type '(Result<WeatherPrecipModel, CIMISError>) -> Void' in a '@Sendable' closure
| `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
113 | }
114 |
/Users/admin/builder/spi-builder-workspace/Sources/CIMISKit/Network/APIService.swift:157:17: warning: capture of 'completion' with non-sendable type '(Result<HrlyWeatherModel, CIMISError>) -> Void' in a '@Sendable' closure
155 |
156 | if let error = error as? URLError {
157 | completion(Result.failure(CIMISError.url(error)))
| |- warning: capture of 'completion' with non-sendable type '(Result<HrlyWeatherModel, CIMISError>) -> Void' in a '@Sendable' closure
| `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
158 | }
159 |
/Users/admin/builder/spi-builder-workspace/Sources/CIMISKit/Network/APIService.swift:203:17: warning: capture of 'completion' with non-sendable type '(Result<T, CIMISError>) -> Void' in a '@Sendable' closure
201 |
202 | if let error = error as? URLError {
203 | completion(Result.failure(CIMISError.url(error)))
| |- warning: capture of 'completion' with non-sendable type '(Result<T, CIMISError>) -> Void' in a '@Sendable' closure
| `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
204 | } else if let response = response as? HTTPURLResponse, !(200...299).contains(response.statusCode) {
205 | completion(Result.failure(CIMISError.invalidResponse(statusCode: response.statusCode)))
[29/58] Compiling CIMISKit AppState.swift
/Users/admin/builder/spi-builder-workspace/Sources/CIMISKit/Network/APIService.swift:22:17: warning: capture of 'completion' with non-sendable type '(Result<StationModel, CIMISError>) -> Void' in a '@Sendable' closure
20 |
21 | if let error = error as? URLError {
22 | completion(Result.failure(CIMISError.url(error)))
| |- warning: capture of 'completion' with non-sendable type '(Result<StationModel, CIMISError>) -> Void' in a '@Sendable' closure
| `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
23 | }
24 |
/Users/admin/builder/spi-builder-workspace/Sources/CIMISKit/Network/APIService.swift:67:17: warning: capture of 'completion' with non-sendable type '(Result<ZipCodeModel, CIMISError>) -> Void' in a '@Sendable' closure
65 |
66 | if let error = error as? URLError {
67 | completion(Result.failure(CIMISError.url(error)))
| |- warning: capture of 'completion' with non-sendable type '(Result<ZipCodeModel, CIMISError>) -> Void' in a '@Sendable' closure
| `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
68 | }
69 |
/Users/admin/builder/spi-builder-workspace/Sources/CIMISKit/Network/APIService.swift:112:17: warning: capture of 'completion' with non-sendable type '(Result<WeatherPrecipModel, CIMISError>) -> Void' in a '@Sendable' closure
110 |
111 | if let error = error as? URLError {
112 | completion(Result.failure(CIMISError.url(error)))
| |- warning: capture of 'completion' with non-sendable type '(Result<WeatherPrecipModel, CIMISError>) -> Void' in a '@Sendable' closure
| `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
113 | }
114 |
/Users/admin/builder/spi-builder-workspace/Sources/CIMISKit/Network/APIService.swift:157:17: warning: capture of 'completion' with non-sendable type '(Result<HrlyWeatherModel, CIMISError>) -> Void' in a '@Sendable' closure
155 |
156 | if let error = error as? URLError {
157 | completion(Result.failure(CIMISError.url(error)))
| |- warning: capture of 'completion' with non-sendable type '(Result<HrlyWeatherModel, CIMISError>) -> Void' in a '@Sendable' closure
| `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
158 | }
159 |
/Users/admin/builder/spi-builder-workspace/Sources/CIMISKit/Network/APIService.swift:203:17: warning: capture of 'completion' with non-sendable type '(Result<T, CIMISError>) -> Void' in a '@Sendable' closure
201 |
202 | if let error = error as? URLError {
203 | completion(Result.failure(CIMISError.url(error)))
| |- warning: capture of 'completion' with non-sendable type '(Result<T, CIMISError>) -> Void' in a '@Sendable' closure
| `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
204 | } else if let response = response as? HTTPURLResponse, !(200...299).contains(response.statusCode) {
205 | completion(Result.failure(CIMISError.invalidResponse(statusCode: response.statusCode)))
[30/58] Compiling CIMISKit Errors.swift
/Users/admin/builder/spi-builder-workspace/Sources/CIMISKit/Network/APIService.swift:22:17: warning: capture of 'completion' with non-sendable type '(Result<StationModel, CIMISError>) -> Void' in a '@Sendable' closure
20 |
21 | if let error = error as? URLError {
22 | completion(Result.failure(CIMISError.url(error)))
| |- warning: capture of 'completion' with non-sendable type '(Result<StationModel, CIMISError>) -> Void' in a '@Sendable' closure
| `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
23 | }
24 |
/Users/admin/builder/spi-builder-workspace/Sources/CIMISKit/Network/APIService.swift:67:17: warning: capture of 'completion' with non-sendable type '(Result<ZipCodeModel, CIMISError>) -> Void' in a '@Sendable' closure
65 |
66 | if let error = error as? URLError {
67 | completion(Result.failure(CIMISError.url(error)))
| |- warning: capture of 'completion' with non-sendable type '(Result<ZipCodeModel, CIMISError>) -> Void' in a '@Sendable' closure
| `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
68 | }
69 |
/Users/admin/builder/spi-builder-workspace/Sources/CIMISKit/Network/APIService.swift:112:17: warning: capture of 'completion' with non-sendable type '(Result<WeatherPrecipModel, CIMISError>) -> Void' in a '@Sendable' closure
110 |
111 | if let error = error as? URLError {
112 | completion(Result.failure(CIMISError.url(error)))
| |- warning: capture of 'completion' with non-sendable type '(Result<WeatherPrecipModel, CIMISError>) -> Void' in a '@Sendable' closure
| `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
113 | }
114 |
/Users/admin/builder/spi-builder-workspace/Sources/CIMISKit/Network/APIService.swift:157:17: warning: capture of 'completion' with non-sendable type '(Result<HrlyWeatherModel, CIMISError>) -> Void' in a '@Sendable' closure
155 |
156 | if let error = error as? URLError {
157 | completion(Result.failure(CIMISError.url(error)))
| |- warning: capture of 'completion' with non-sendable type '(Result<HrlyWeatherModel, CIMISError>) -> Void' in a '@Sendable' closure
| `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
158 | }
159 |
/Users/admin/builder/spi-builder-workspace/Sources/CIMISKit/Network/APIService.swift:203:17: warning: capture of 'completion' with non-sendable type '(Result<T, CIMISError>) -> Void' in a '@Sendable' closure
201 |
202 | if let error = error as? URLError {
203 | completion(Result.failure(CIMISError.url(error)))
| |- warning: capture of 'completion' with non-sendable type '(Result<T, CIMISError>) -> Void' in a '@Sendable' closure
| `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
204 | } else if let response = response as? HTTPURLResponse, !(200...299).contains(response.statusCode) {
205 | completion(Result.failure(CIMISError.invalidResponse(statusCode: response.statusCode)))
[31/58] Compiling CIMISKit HourlyModelData.swift
/Users/admin/builder/spi-builder-workspace/Sources/CIMISKit/Network/APIService.swift:22:17: warning: capture of 'completion' with non-sendable type '(Result<StationModel, CIMISError>) -> Void' in a '@Sendable' closure
20 |
21 | if let error = error as? URLError {
22 | completion(Result.failure(CIMISError.url(error)))
| |- warning: capture of 'completion' with non-sendable type '(Result<StationModel, CIMISError>) -> Void' in a '@Sendable' closure
| `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
23 | }
24 |
/Users/admin/builder/spi-builder-workspace/Sources/CIMISKit/Network/APIService.swift:67:17: warning: capture of 'completion' with non-sendable type '(Result<ZipCodeModel, CIMISError>) -> Void' in a '@Sendable' closure
65 |
66 | if let error = error as? URLError {
67 | completion(Result.failure(CIMISError.url(error)))
| |- warning: capture of 'completion' with non-sendable type '(Result<ZipCodeModel, CIMISError>) -> Void' in a '@Sendable' closure
| `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
68 | }
69 |
/Users/admin/builder/spi-builder-workspace/Sources/CIMISKit/Network/APIService.swift:112:17: warning: capture of 'completion' with non-sendable type '(Result<WeatherPrecipModel, CIMISError>) -> Void' in a '@Sendable' closure
110 |
111 | if let error = error as? URLError {
112 | completion(Result.failure(CIMISError.url(error)))
| |- warning: capture of 'completion' with non-sendable type '(Result<WeatherPrecipModel, CIMISError>) -> Void' in a '@Sendable' closure
| `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
113 | }
114 |
/Users/admin/builder/spi-builder-workspace/Sources/CIMISKit/Network/APIService.swift:157:17: warning: capture of 'completion' with non-sendable type '(Result<HrlyWeatherModel, CIMISError>) -> Void' in a '@Sendable' closure
155 |
156 | if let error = error as? URLError {
157 | completion(Result.failure(CIMISError.url(error)))
| |- warning: capture of 'completion' with non-sendable type '(Result<HrlyWeatherModel, CIMISError>) -> Void' in a '@Sendable' closure
| `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
158 | }
159 |
/Users/admin/builder/spi-builder-workspace/Sources/CIMISKit/Network/APIService.swift:203:17: warning: capture of 'completion' with non-sendable type '(Result<T, CIMISError>) -> Void' in a '@Sendable' closure
201 |
202 | if let error = error as? URLError {
203 | completion(Result.failure(CIMISError.url(error)))
| |- warning: capture of 'completion' with non-sendable type '(Result<T, CIMISError>) -> Void' in a '@Sendable' closure
| `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
204 | } else if let response = response as? HTTPURLResponse, !(200...299).contains(response.statusCode) {
205 | completion(Result.failure(CIMISError.invalidResponse(statusCode: response.statusCode)))
[32/58] Compiling CIMISKit HourlyModelRecord.swift
[33/58] Compiling CIMISKit PrecipModelRecord.swift
[34/58] Compiling CIMISKit SoilModelRecord.swift
[35/58] Compiling CIMISKit StandardModelRecord.swift
[36/58] Compiling CIMISKit SoilModelProvider.swift
[37/58] Compiling CIMISKit StandardModelProvider.swift
[38/58] Compiling CIMISKit CIMISRadiationChart.swift
[39/58] Compiling CIMISKit DayNetRadiationChart.swift
[40/58] Compiling CIMISKit CIMISVaporPressureChart.swift
[41/58] Compiling CIMISKit DayVaporPressureChart.swift
[42/58] Compiling CIMISKit CIMISWindRunChart.swift
[43/58] Compiling CIMISKit PrecipModelData.swift
[44/58] Compiling CIMISKit HourlyModelProvider.swift
[45/58] Compiling CIMISKit PrecipModelProvider.swift
[46/58] Compiling CIMISKit Measurement.swift
[47/58] Compiling CIMISKit Scope.swift
[48/58] Compiling CIMISKit Unit.swift
[49/58] Compiling CIMISKit ZipCode.swift
[50/58] Compiling CIMISKit ZipCodeModel.swift
[51/58] Compiling CIMISKit CIMISEvapotranspirationChart.swift
[52/58] Compiling CIMISKit DayEvapotranspirationChart.swift
[53/58] Compiling CIMISKit CIMISHumidityChart.swift
[54/58] Compiling CIMISKit DayHumidityChart.swift
[55/58] Compiling CIMISKit CIMISPrecipitationChart.swift
[56/58] Compiling CIMISKit DayPrecipitationChart.swift
[57/58] Compiling CIMISKit CIMISTemperatureChart.swift
[58/58] Compiling CIMISKit DayTemperatureChart.swift
Build complete! (22.43s)
warning: 'spi-builder-workspace': found 6 file(s) which are unhandled; explicitly declare them as resources or exclude from the target
/Users/admin/builder/spi-builder-workspace/Sources/CIMISKit/Resources/stations.json
/Users/admin/builder/spi-builder-workspace/Sources/CIMISKit/Resources/weather.json
/Users/admin/builder/spi-builder-workspace/Sources/CIMISKit/Resources/hrlysepsecond.json
/Users/admin/builder/spi-builder-workspace/Sources/CIMISKit/Resources/hrlysepthird.json
/Users/admin/builder/spi-builder-workspace/Sources/CIMISKit/Resources/hrlysepfirst.json
/Users/admin/builder/spi-builder-workspace/Sources/CIMISKit/Resources/hrlyweather.json
Build complete.
{
"dependencies" : [
],
"manifest_display_name" : "CIMISKit",
"name" : "CIMISKit",
"path" : "/Users/admin/builder/spi-builder-workspace",
"platforms" : [
{
"name" : "ios",
"version" : "17.0"
},
{
"name" : "macos",
"version" : "14.0"
}
],
"products" : [
{
"name" : "CIMISKit",
"targets" : [
"CIMISKit"
],
"type" : {
"library" : [
"automatic"
]
}
}
],
"targets" : [
{
"c99name" : "CIMISKitTests",
"module_type" : "SwiftTarget",
"name" : "CIMISKitTests",
"path" : "Tests/CIMISKitTests",
"sources" : [
"CIMISKitTests.swift"
],
"target_dependencies" : [
"CIMISKit"
],
"type" : "test"
},
{
"c99name" : "CIMISKit",
"module_type" : "SwiftTarget",
"name" : "CIMISKit",
"path" : "Sources/CIMISKit",
"product_memberships" : [
"CIMISKit"
],
"sources" : [
"Fetchers/Precip/AnnualPrecipFetcher.swift",
"Fetchers/Precip/HourlyPrecipFetcher.swift",
"Fetchers/Precip/MonthlyPrecipFetcher.swift",
"Fetchers/Precip/WeeklyPrecipFetcher.swift",
"Fetchers/StationFetcher.swift",
"Fetchers/WeatherFetcher.swift",
"Fetchers/ZipCodeFetcher.swift",
"Network/APIService.swift",
"Network/APIServiceProtocol.swift",
"Network/AppState.swift",
"Network/Errors.swift",
"Standard/Climate/Models/Data/HourlyModelData.swift",
"Standard/Climate/Models/Data/PrecipModelData.swift",
"Standard/Climate/Models/Data/Providers/HourlyModelProvider.swift",
"Standard/Climate/Models/Data/Providers/PrecipModelProvider.swift",
"Standard/Climate/Models/Data/Providers/Records/Extra/Measurement.swift",
"Standard/Climate/Models/Data/Providers/Records/Extra/Scope.swift",
"Standard/Climate/Models/Data/Providers/Records/Extra/Unit.swift",
"Standard/Climate/Models/Data/Providers/Records/HourlyModelRecord.swift",
"Standard/Climate/Models/Data/Providers/Records/PrecipModelRecord.swift",
"Standard/Climate/Models/Data/Providers/Records/SoilModelRecord.swift",
"Standard/Climate/Models/Data/Providers/Records/StandardModelRecord.swift",
"Standard/Climate/Models/Data/Providers/SoilModelProvider.swift",
"Standard/Climate/Models/Data/Providers/StandardModelProvider.swift",
"Standard/Climate/Models/Data/SoilModelData.swift",
"Standard/Climate/Models/Data/StandardModelData.swift",
"Standard/Climate/Models/HourlyModel.swift",
"Standard/Climate/Models/PrecipModel.swift",
"Standard/Climate/Models/SoilModel.swift",
"Standard/Climate/Models/StandardModel.swift",
"Standard/Station/Extra/GroundCover.swift",
"Standard/Station/Extra/Is.swift",
"Standard/Station/Extra/RegionalOffice.swift",
"Standard/Station/Station.swift",
"Standard/Station/StationModel.swift",
"Standard/ZipCodes/ZipCode.swift",
"Standard/ZipCodes/ZipCodeModel.swift",
"Views/Charts/Evapotranspiration/CIMISEvapotranspirationChart.swift",
"Views/Charts/Evapotranspiration/DayEvapotranspirationChart.swift",
"Views/Charts/Humidity/CIMISHumidityChart.swift",
"Views/Charts/Humidity/DayHumidityChart.swift",
"Views/Charts/Precipitation/CIMISPrecipitationChart.swift",
"Views/Charts/Precipitation/DayPrecipitationChart.swift",
"Views/Charts/SoilTemp/CIMISTemperatureChart.swift",
"Views/Charts/SoilTemp/DayTemperatureChart.swift",
"Views/Charts/SolarRadiation/CIMISRadiationChart.swift",
"Views/Charts/SolarRadiation/DayNetRadiationChart.swift",
"Views/Charts/VaporPressure/CIMISVaporPressureChart.swift",
"Views/Charts/VaporPressure/DayVaporPressureChart.swift",
"Views/Charts/WindDirection/CIMISWindRunChart.swift",
"Views/Charts/WindDirection/DayWindDirectionChart.swift",
"Views/Charts/WindSpeed/CIMISWindSpeedChart.swift",
"Views/Charts/WindSpeed/DayWindSpeedChart.swift",
"Views/GroundCoverView.swift",
"Views/UnitView.swift"
],
"type" : "library"
}
],
"tools_version" : "5.10"
}
Done.