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 Geotum, reference 1.4.1 (ecd8e8), with Swift 6.1 for Linux on 25 Apr 2025 09:58:55 UTC.

Build Command

bash -c docker run --pull=always --rm -v "checkouts-4609320-2":/host -w "$PWD" registry.gitlab.com/finestructure/spi-images:basic-6.1-latest swift build --triple x86_64-unknown-linux-gnu 2>&1

Build Log

========================================
RunAll
========================================
Builder version: 4.61.0
Interrupt handler set up.
========================================
Checkout
========================================
Clone URL: https://github.com/pducks32/Geotum.git
Reference: 1.4.1
Initialized empty Git repository in /host/spi-builder-workspace/.git/
hint: Using 'master' as the name for the initial branch. This default branch name
hint: is subject to change. To configure the initial branch name to use in all
hint: of your new repositories, which will suppress this warning, call:
hint:
hint: 	git config --global init.defaultBranch <name>
hint:
hint: Names commonly chosen instead of 'master' are 'main', 'trunk' and
hint: 'development'. The just-created branch can be renamed via this command:
hint:
hint: 	git branch -m <name>
From https://github.com/pducks32/Geotum
 * tag               1.4.1      -> FETCH_HEAD
HEAD is now at ecd8e81 Bump minor
Cloned https://github.com/pducks32/Geotum.git
Revision (git rev-parse @):
ecd8e81374fe417ff3d5d56cf7bd120f06242144
SUCCESS checkout https://github.com/pducks32/Geotum.git at 1.4.1
========================================
Build
========================================
Selected platform:         linux
Swift version:             6.1
Building package at path:  $PWD
https://github.com/pducks32/Geotum.git
https://github.com/pducks32/Geotum.git
WARNING: environment variable SUPPRESS_SWIFT_6_FLAGS is not set
{
  "dependencies" : [
  ],
  "manifest_display_name" : "Geotum",
  "name" : "Geotum",
  "path" : "/host/spi-builder-workspace",
  "platforms" : [
  ],
  "products" : [
    {
      "name" : "Geotum",
      "targets" : [
        "Geotum"
      ],
      "type" : {
        "library" : [
          "automatic"
        ]
      }
    }
  ],
  "targets" : [
    {
      "c99name" : "GeotumTests",
      "module_type" : "SwiftTarget",
      "name" : "GeotumTests",
      "path" : "Tests/GeotumTests",
      "sources" : [
        "GeotumTests.swift"
      ],
      "target_dependencies" : [
        "Geotum"
      ],
      "type" : "test"
    },
    {
      "c99name" : "Geotum",
      "module_type" : "SwiftTarget",
      "name" : "Geotum",
      "path" : "Sources/Geotum",
      "product_memberships" : [
        "Geotum"
      ],
      "sources" : [
        "Geotum.swift"
      ],
      "type" : "library"
    }
  ],
  "tools_version" : "4.0"
}
Running build ...
bash -c docker run --pull=always --rm -v "checkouts-4609320-2":/host -w "$PWD" registry.gitlab.com/finestructure/spi-images:basic-6.1-latest swift build --triple x86_64-unknown-linux-gnu -Xswiftc -Xfrontend -Xswiftc -stats-output-dir -Xswiftc -Xfrontend -Xswiftc .stats -Xswiftc -strict-concurrency=complete -Xswiftc -enable-upcoming-feature -Xswiftc StrictConcurrency -Xswiftc -enable-upcoming-feature -Xswiftc DisableOutwardActorInference -Xswiftc -enable-upcoming-feature -Xswiftc GlobalActorIsolatedTypesUsability -Xswiftc -enable-upcoming-feature -Xswiftc InferSendableFromCaptures 2>&1
basic-6.1-latest: Pulling from finestructure/spi-images
Digest: sha256:3bdcac04179f4ed3e5b8e9dbd6e74bbf5ebc0f4fde48bbaad7d1e5c757e65bcb
Status: Image is up to date for registry.gitlab.com/finestructure/spi-images:basic-6.1-latest
Building for debugging...
[0/2] Write sources
[1/2] Write swift-version-24593BA9C3E375BF.txt
error: emit-module command failed with exit code 1 (use -v to see invocation)
[3/4] Emitting module Geotum
/host/spi-builder-workspace/Sources/Geotum/Geotum.swift:62:27: error: cannot find type 'Measurement' in scope
 60 | public struct LatLonCoordinate {
 61 |     public typealias Distance = LatLonCoordinate
 62 |     public let latitude : Measurement<UnitAngle>
    |                           `- error: cannot find type 'Measurement' in scope
 63 |     public let longitude : Measurement<UnitAngle>
 64 |
/host/spi-builder-workspace/Sources/Geotum/Geotum.swift:63:28: error: cannot find type 'Measurement' in scope
 61 |     public typealias Distance = LatLonCoordinate
 62 |     public let latitude : Measurement<UnitAngle>
 63 |     public let longitude : Measurement<UnitAngle>
    |                            `- error: cannot find type 'Measurement' in scope
 64 |
 65 |     public init(latitude : Measurement<UnitAngle>, longitude : Measurement<UnitAngle>) {
/host/spi-builder-workspace/Sources/Geotum/Geotum.swift:65:28: error: cannot find type 'Measurement' in scope
 63 |     public let longitude : Measurement<UnitAngle>
 64 |
 65 |     public init(latitude : Measurement<UnitAngle>, longitude : Measurement<UnitAngle>) {
    |                            `- error: cannot find type 'Measurement' in scope
 66 |         self.latitude = latitude
 67 |         self.longitude = longitude
/host/spi-builder-workspace/Sources/Geotum/Geotum.swift:65:64: error: cannot find type 'Measurement' in scope
 63 |     public let longitude : Measurement<UnitAngle>
 64 |
 65 |     public init(latitude : Measurement<UnitAngle>, longitude : Measurement<UnitAngle>) {
    |                                                                `- error: cannot find type 'Measurement' in scope
 66 |         self.latitude = latitude
 67 |         self.longitude = longitude
/host/spi-builder-workspace/Sources/Geotum/Geotum.swift:75:47: error: cannot find type 'UnitAngle' in scope
 73 |     }
 74 |
 75 |     mutating public func convert(to newUnit : UnitAngle) {
    |                                               `- error: cannot find type 'UnitAngle' in scope
 76 |         self = self.converted(to: newUnit)
 77 |     }
/host/spi-builder-workspace/Sources/Geotum/Geotum.swift:79:40: error: cannot find type 'UnitAngle' in scope
 77 |     }
 78 |
 79 |     public func converted(to newUnit : UnitAngle) -> LatLonCoordinate {
    |                                        `- error: cannot find type 'UnitAngle' in scope
 80 |         return LatLonCoordinate(latitude: latitude.converted(to: newUnit), longitude: longitude.converted(to: newUnit))
 81 |     }
/host/spi-builder-workspace/Sources/Geotum/Geotum.swift:86:23: warning: static property 'wgs84' is not concurrency-safe because non-'Sendable' type 'PlanetaryDatum' may have shared mutable state; this is an error in the Swift 6 language mode
 83 |
 84 | /// Describes a planet as an ellipsoid
 85 | public struct PlanetaryDatum {
    |               `- note: consider making struct 'PlanetaryDatum' conform to the 'Sendable' protocol
 86 |     public static let wgs84 = PlanetaryDatum(equatorialRadius: 6_378_137.0, polarRadius: 6_356_752.3)
    |                       |- warning: static property 'wgs84' is not concurrency-safe because non-'Sendable' type 'PlanetaryDatum' may have shared mutable state; this is an error in the Swift 6 language mode
    |                       |- note: add '@MainActor' to make static property 'wgs84' part of global actor 'MainActor'
    |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 87 |
 88 |     /// Radius towards the equator from center
/host/spi-builder-workspace/Sources/Geotum/Geotum.swift:168:48: error: cannot find type 'Measurement' in scope
166 | }
167 |
168 | public func abs<T : Dimension>(_ measurement : Measurement<T>) -> Measurement<T> {
    |                                                `- error: cannot find type 'Measurement' in scope
169 |     return Measurement<T>(value: abs(measurement.value), unit: measurement.unit)
170 | }
/host/spi-builder-workspace/Sources/Geotum/Geotum.swift:168:67: error: cannot find type 'Measurement' in scope
166 | }
167 |
168 | public func abs<T : Dimension>(_ measurement : Measurement<T>) -> Measurement<T> {
    |                                                                   `- error: cannot find type 'Measurement' in scope
169 |     return Measurement<T>(value: abs(measurement.value), unit: measurement.unit)
170 | }
/host/spi-builder-workspace/Sources/Geotum/Geotum.swift:168:21: error: cannot find type 'Dimension' in scope
166 | }
167 |
168 | public func abs<T : Dimension>(_ measurement : Measurement<T>) -> Measurement<T> {
    |                     `- error: cannot find type 'Dimension' in scope
169 |     return Measurement<T>(value: abs(measurement.value), unit: measurement.unit)
170 | }
/host/spi-builder-workspace/Sources/Geotum/Geotum.swift:179:54: error: cannot find type 'Measurement' in scope
177 |     }
178 |
179 |     private func centralMeridian(for zone : UInt) -> Measurement<UnitAngle> {
    |                                                      `- error: cannot find type 'Measurement' in scope
180 |         return Measurement<UnitAngle>(value: -183.0 + (Double(zone) * 6.0), unit: .degrees)
181 |     }
/host/spi-builder-workspace/Sources/Geotum/Geotum.swift:240:45: error: cannot find type 'Measurement' in scope
238 |     }
239 |
240 |     private func latitudeBand(at latitude : Measurement<UnitAngle>) -> String {
    |                                             `- error: cannot find type 'Measurement' in scope
241 |         let mgrsBands = ["C", "D", "E", "F", "G", "H", "J", "K", "L", "M", "N", "P", "Q", "R", "S", "T", "U", "V", "W", "X", "X"]
242 |         let index = Int(floor(latitude.converted(to: .degrees).value / 8 + 10))
[4/4] Compiling Geotum Geotum.swift
/host/spi-builder-workspace/Sources/Geotum/Geotum.swift:62:27: error: cannot find type 'Measurement' in scope
 60 | public struct LatLonCoordinate {
 61 |     public typealias Distance = LatLonCoordinate
 62 |     public let latitude : Measurement<UnitAngle>
    |                           `- error: cannot find type 'Measurement' in scope
 63 |     public let longitude : Measurement<UnitAngle>
 64 |
/host/spi-builder-workspace/Sources/Geotum/Geotum.swift:63:28: error: cannot find type 'Measurement' in scope
 61 |     public typealias Distance = LatLonCoordinate
 62 |     public let latitude : Measurement<UnitAngle>
 63 |     public let longitude : Measurement<UnitAngle>
    |                            `- error: cannot find type 'Measurement' in scope
 64 |
 65 |     public init(latitude : Measurement<UnitAngle>, longitude : Measurement<UnitAngle>) {
/host/spi-builder-workspace/Sources/Geotum/Geotum.swift:65:28: error: cannot find type 'Measurement' in scope
 63 |     public let longitude : Measurement<UnitAngle>
 64 |
 65 |     public init(latitude : Measurement<UnitAngle>, longitude : Measurement<UnitAngle>) {
    |                            `- error: cannot find type 'Measurement' in scope
 66 |         self.latitude = latitude
 67 |         self.longitude = longitude
/host/spi-builder-workspace/Sources/Geotum/Geotum.swift:65:64: error: cannot find type 'Measurement' in scope
 63 |     public let longitude : Measurement<UnitAngle>
 64 |
 65 |     public init(latitude : Measurement<UnitAngle>, longitude : Measurement<UnitAngle>) {
    |                                                                `- error: cannot find type 'Measurement' in scope
 66 |         self.latitude = latitude
 67 |         self.longitude = longitude
/host/spi-builder-workspace/Sources/Geotum/Geotum.swift:75:47: error: cannot find type 'UnitAngle' in scope
 73 |     }
 74 |
 75 |     mutating public func convert(to newUnit : UnitAngle) {
    |                                               `- error: cannot find type 'UnitAngle' in scope
 76 |         self = self.converted(to: newUnit)
 77 |     }
/host/spi-builder-workspace/Sources/Geotum/Geotum.swift:79:40: error: cannot find type 'UnitAngle' in scope
 77 |     }
 78 |
 79 |     public func converted(to newUnit : UnitAngle) -> LatLonCoordinate {
    |                                        `- error: cannot find type 'UnitAngle' in scope
 80 |         return LatLonCoordinate(latitude: latitude.converted(to: newUnit), longitude: longitude.converted(to: newUnit))
 81 |     }
/host/spi-builder-workspace/Sources/Geotum/Geotum.swift:86:23: warning: static property 'wgs84' is not concurrency-safe because non-'Sendable' type 'PlanetaryDatum' may have shared mutable state; this is an error in the Swift 6 language mode
 83 |
 84 | /// Describes a planet as an ellipsoid
 85 | public struct PlanetaryDatum {
    |               `- note: consider making struct 'PlanetaryDatum' conform to the 'Sendable' protocol
 86 |     public static let wgs84 = PlanetaryDatum(equatorialRadius: 6_378_137.0, polarRadius: 6_356_752.3)
    |                       |- warning: static property 'wgs84' is not concurrency-safe because non-'Sendable' type 'PlanetaryDatum' may have shared mutable state; this is an error in the Swift 6 language mode
    |                       |- note: add '@MainActor' to make static property 'wgs84' part of global actor 'MainActor'
    |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 87 |
 88 |     /// Radius towards the equator from center
/host/spi-builder-workspace/Sources/Geotum/Geotum.swift:168:48: error: cannot find type 'Measurement' in scope
166 | }
167 |
168 | public func abs<T : Dimension>(_ measurement : Measurement<T>) -> Measurement<T> {
    |                                                `- error: cannot find type 'Measurement' in scope
169 |     return Measurement<T>(value: abs(measurement.value), unit: measurement.unit)
170 | }
/host/spi-builder-workspace/Sources/Geotum/Geotum.swift:168:67: error: cannot find type 'Measurement' in scope
166 | }
167 |
168 | public func abs<T : Dimension>(_ measurement : Measurement<T>) -> Measurement<T> {
    |                                                                   `- error: cannot find type 'Measurement' in scope
169 |     return Measurement<T>(value: abs(measurement.value), unit: measurement.unit)
170 | }
/host/spi-builder-workspace/Sources/Geotum/Geotum.swift:168:21: error: cannot find type 'Dimension' in scope
166 | }
167 |
168 | public func abs<T : Dimension>(_ measurement : Measurement<T>) -> Measurement<T> {
    |                     `- error: cannot find type 'Dimension' in scope
169 |     return Measurement<T>(value: abs(measurement.value), unit: measurement.unit)
170 | }
/host/spi-builder-workspace/Sources/Geotum/Geotum.swift:179:54: error: cannot find type 'Measurement' in scope
177 |     }
178 |
179 |     private func centralMeridian(for zone : UInt) -> Measurement<UnitAngle> {
    |                                                      `- error: cannot find type 'Measurement' in scope
180 |         return Measurement<UnitAngle>(value: -183.0 + (Double(zone) * 6.0), unit: .degrees)
181 |     }
/host/spi-builder-workspace/Sources/Geotum/Geotum.swift:240:45: error: cannot find type 'Measurement' in scope
238 |     }
239 |
240 |     private func latitudeBand(at latitude : Measurement<UnitAngle>) -> String {
    |                                             `- error: cannot find type 'Measurement' in scope
241 |         let mgrsBands = ["C", "D", "E", "F", "G", "H", "J", "K", "L", "M", "N", "P", "Q", "R", "S", "T", "U", "V", "W", "X", "X"]
242 |         let index = Int(floor(latitude.converted(to: .degrees).value / 8 + 10))
/host/spi-builder-workspace/Sources/Geotum/Geotum.swift:71:25: error: cannot find 'Measurement' in scope
 69 |
 70 |     public init(latiudinalDegrees: Double, longitudinalDegrees: Double) {
 71 |         self.latitude = Measurement(value: latiudinalDegrees, unit: .degrees)
    |                         `- error: cannot find 'Measurement' in scope
 72 |         self.longitude = Measurement(value: longitudinalDegrees, unit: .degrees)
 73 |     }
/host/spi-builder-workspace/Sources/Geotum/Geotum.swift:71:70: error: cannot infer contextual base in reference to member 'degrees'
 69 |
 70 |     public init(latiudinalDegrees: Double, longitudinalDegrees: Double) {
 71 |         self.latitude = Measurement(value: latiudinalDegrees, unit: .degrees)
    |                                                                      `- error: cannot infer contextual base in reference to member 'degrees'
 72 |         self.longitude = Measurement(value: longitudinalDegrees, unit: .degrees)
 73 |     }
/host/spi-builder-workspace/Sources/Geotum/Geotum.swift:72:26: error: cannot find 'Measurement' in scope
 70 |     public init(latiudinalDegrees: Double, longitudinalDegrees: Double) {
 71 |         self.latitude = Measurement(value: latiudinalDegrees, unit: .degrees)
 72 |         self.longitude = Measurement(value: longitudinalDegrees, unit: .degrees)
    |                          `- error: cannot find 'Measurement' in scope
 73 |     }
 74 |
/host/spi-builder-workspace/Sources/Geotum/Geotum.swift:72:73: error: cannot infer contextual base in reference to member 'degrees'
 70 |     public init(latiudinalDegrees: Double, longitudinalDegrees: Double) {
 71 |         self.latitude = Measurement(value: latiudinalDegrees, unit: .degrees)
 72 |         self.longitude = Measurement(value: longitudinalDegrees, unit: .degrees)
    |                                                                         `- error: cannot infer contextual base in reference to member 'degrees'
 73 |     }
 74 |
/host/spi-builder-workspace/Sources/Geotum/Geotum.swift:80:32: error: incorrect argument labels in call (have 'latitude:longitude:', expected 'latiudinalDegrees:longitudinalDegrees:')
 78 |
 79 |     public func converted(to newUnit : UnitAngle) -> LatLonCoordinate {
 80 |         return LatLonCoordinate(latitude: latitude.converted(to: newUnit), longitude: longitude.converted(to: newUnit))
    |                                `- error: incorrect argument labels in call (have 'latitude:longitude:', expected 'latiudinalDegrees:longitudinalDegrees:')
 81 |     }
 82 | }
/host/spi-builder-workspace/Sources/Geotum/Geotum.swift:120:16: error: cannot find 'sqrt' in scope
118 |
119 |     public var eccentricity : Double {
120 |         return sqrt(inverseFlattening * (2 - inverseFlattening))
    |                `- error: cannot find 'sqrt' in scope
121 |     }
122 | }
/host/spi-builder-workspace/Sources/Geotum/Geotum.swift:187:28: error: cannot find 'Measurement' in scope
185 |         let longitude = coordinates.longitude
186 |
187 |         if abs(latitude) > Measurement(value: 84, unit: UnitAngle.degrees) {
    |                            `- error: cannot find 'Measurement' in scope
188 |             print("Oops")
189 |             fatalError("Latitude is out of range")
/host/spi-builder-workspace/Sources/Geotum/Geotum.swift:187:57: error: cannot find 'UnitAngle' in scope
185 |         let longitude = coordinates.longitude
186 |
187 |         if abs(latitude) > Measurement(value: 84, unit: UnitAngle.degrees) {
    |                                                         `- error: cannot find 'UnitAngle' in scope
188 |             print("Oops")
189 |             fatalError("Latitude is out of range")
/host/spi-builder-workspace/Sources/Geotum/Geotum.swift:192:25: error: cannot find 'floor' in scope
190 |         }
191 |
192 |         var zone = UInt(floor((longitude.converted(to: .degrees).value + 180.0) / 6) + 1)
    |                         `- error: cannot find 'floor' in scope
193 |
194 |         let band = latitudeBand(at: latitude)
/host/spi-builder-workspace/Sources/Geotum/Geotum.swift:192:57: error: cannot infer contextual base in reference to member 'degrees'
190 |         }
191 |
192 |         var zone = UInt(floor((longitude.converted(to: .degrees).value + 180.0) / 6) + 1)
    |                                                         `- error: cannot infer contextual base in reference to member 'degrees'
193 |
194 |         let band = latitudeBand(at: latitude)
/host/spi-builder-workspace/Sources/Geotum/Geotum.swift:198:31: error: cannot find 'Measurement' in scope
196 |         zone = zoneWithSvalbardCorrectionIfNeeded(zone: zone, latitudeBand: band, coordinates: coordinates)
197 |
198 |         let centralMeridian = Measurement<UnitAngle>(value: (Double(zone - 1) * 6.0) - 180.0 + 3.0, unit: .degrees)
    |                               `- error: cannot find 'Measurement' in scope
199 |         let φ = latitude.converted(to: .radians).value
200 |         let λ = longitude.converted(to: .radians).value - centralMeridian.converted(to: .radians).value
/host/spi-builder-workspace/Sources/Geotum/Geotum.swift:198:43: error: cannot find type 'UnitAngle' in scope
196 |         zone = zoneWithSvalbardCorrectionIfNeeded(zone: zone, latitudeBand: band, coordinates: coordinates)
197 |
198 |         let centralMeridian = Measurement<UnitAngle>(value: (Double(zone - 1) * 6.0) - 180.0 + 3.0, unit: .degrees)
    |                                          |`- error: cannot find type 'UnitAngle' in scope
    |                                          |- note: while parsing this '<' as a type parameter bracket
    |                                          `- note: while parsing this '<' as a type parameter bracket
199 |         let φ = latitude.converted(to: .radians).value
200 |         let λ = longitude.converted(to: .radians).value - centralMeridian.converted(to: .radians).value
/host/spi-builder-workspace/Sources/Geotum/Geotum.swift:198:108: error: cannot infer contextual base in reference to member 'degrees'
196 |         zone = zoneWithSvalbardCorrectionIfNeeded(zone: zone, latitudeBand: band, coordinates: coordinates)
197 |
198 |         let centralMeridian = Measurement<UnitAngle>(value: (Double(zone - 1) * 6.0) - 180.0 + 3.0, unit: .degrees)
    |                                                                                                            `- error: cannot infer contextual base in reference to member 'degrees'
199 |         let φ = latitude.converted(to: .radians).value
200 |         let λ = longitude.converted(to: .radians).value - centralMeridian.converted(to: .radians).value
/host/spi-builder-workspace/Sources/Geotum/Geotum.swift:199:42: error: cannot infer contextual base in reference to member 'radians'
197 |
198 |         let centralMeridian = Measurement<UnitAngle>(value: (Double(zone - 1) * 6.0) - 180.0 + 3.0, unit: .degrees)
199 |         let φ = latitude.converted(to: .radians).value
    |                                         `- error: cannot infer contextual base in reference to member 'radians'
200 |         let λ = longitude.converted(to: .radians).value - centralMeridian.converted(to: .radians).value
201 |
/host/spi-builder-workspace/Sources/Geotum/Geotum.swift:200:43: error: cannot infer contextual base in reference to member 'radians'
198 |         let centralMeridian = Measurement<UnitAngle>(value: (Double(zone - 1) * 6.0) - 180.0 + 3.0, unit: .degrees)
199 |         let φ = latitude.converted(to: .radians).value
200 |         let λ = longitude.converted(to: .radians).value - centralMeridian.converted(to: .radians).value
    |                                          `- error: cannot infer contextual base in reference to member 'radians'
201 |
202 |         let scaleFactor = 0.9996
/host/spi-builder-workspace/Sources/Geotum/Geotum.swift:200:91: error: cannot infer contextual base in reference to member 'radians'
198 |         let centralMeridian = Measurement<UnitAngle>(value: (Double(zone - 1) * 6.0) - 180.0 + 3.0, unit: .degrees)
199 |         let φ = latitude.converted(to: .radians).value
200 |         let λ = longitude.converted(to: .radians).value - centralMeridian.converted(to: .radians).value
    |                                                                                          `- error: cannot infer contextual base in reference to member 'radians'
201 |
202 |         let scaleFactor = 0.9996
/host/spi-builder-workspace/Sources/Geotum/Geotum.swift:204:21: error: cannot find 'cos' in scope
202 |         let scaleFactor = 0.9996
203 |
204 |         let cosλ = cos(λ)
    |                    `- error: cannot find 'cos' in scope
205 |         let sinλ = sin(λ)
206 |
/host/spi-builder-workspace/Sources/Geotum/Geotum.swift:205:21: error: cannot find 'sin' in scope
203 |
204 |         let cosλ = cos(λ)
205 |         let sinλ = sin(λ)
    |                    `- error: cannot find 'sin' in scope
206 |
207 |         let τ = tan(φ)
/host/spi-builder-workspace/Sources/Geotum/Geotum.swift:207:18: error: cannot find 'tan' in scope
205 |         let sinλ = sin(λ)
206 |
207 |         let τ = tan(φ)
    |                 `- error: cannot find 'tan' in scope
208 |         let σ = sinh(datum.eccentricity * atanh((datum.eccentricity * τ) / sqrt(1 + τ*τ)))
209 |         let τPrime = τ * sqrt(1 + σ*σ) - σ * sqrt(1 + τ*τ)
/host/spi-builder-workspace/Sources/Geotum/Geotum.swift:208:18: error: cannot find 'sinh' in scope
206 |
207 |         let τ = tan(φ)
208 |         let σ = sinh(datum.eccentricity * atanh((datum.eccentricity * τ) / sqrt(1 + τ*τ)))
    |                 `- error: cannot find 'sinh' in scope
209 |         let τPrime = τ * sqrt(1 + σ*σ) - σ * sqrt(1 + τ*τ)
210 |
/host/spi-builder-workspace/Sources/Geotum/Geotum.swift:208:44: error: cannot find 'atanh' in scope
206 |
207 |         let τ = tan(φ)
208 |         let σ = sinh(datum.eccentricity * atanh((datum.eccentricity * τ) / sqrt(1 + τ*τ)))
    |                                           `- error: cannot find 'atanh' in scope
209 |         let τPrime = τ * sqrt(1 + σ*σ) - σ * sqrt(1 + τ*τ)
210 |
/host/spi-builder-workspace/Sources/Geotum/Geotum.swift:208:78: error: cannot find 'sqrt' in scope
206 |
207 |         let τ = tan(φ)
208 |         let σ = sinh(datum.eccentricity * atanh((datum.eccentricity * τ) / sqrt(1 + τ*τ)))
    |                                                                            `- error: cannot find 'sqrt' in scope
209 |         let τPrime = τ * sqrt(1 + σ*σ) - σ * sqrt(1 + τ*τ)
210 |
/host/spi-builder-workspace/Sources/Geotum/Geotum.swift:209:28: error: cannot find 'sqrt' in scope
207 |         let τ = tan(φ)
208 |         let σ = sinh(datum.eccentricity * atanh((datum.eccentricity * τ) / sqrt(1 + τ*τ)))
209 |         let τPrime = τ * sqrt(1 + σ*σ) - σ * sqrt(1 + τ*τ)
    |                          `- error: cannot find 'sqrt' in scope
210 |
211 |         let ξPrime = atan2(τPrime, cosλ)
/host/spi-builder-workspace/Sources/Geotum/Geotum.swift:209:51: error: cannot find 'sqrt' in scope
207 |         let τ = tan(φ)
208 |         let σ = sinh(datum.eccentricity * atanh((datum.eccentricity * τ) / sqrt(1 + τ*τ)))
209 |         let τPrime = τ * sqrt(1 + σ*σ) - σ * sqrt(1 + τ*τ)
    |                                              `- error: cannot find 'sqrt' in scope
210 |
211 |         let ξPrime = atan2(τPrime, cosλ)
/host/spi-builder-workspace/Sources/Geotum/Geotum.swift:211:23: error: cannot find 'atan2' in scope
209 |         let τPrime = τ * sqrt(1 + σ*σ) - σ * sqrt(1 + τ*τ)
210 |
211 |         let ξPrime = atan2(τPrime, cosλ)
    |                      `- error: cannot find 'atan2' in scope
212 |         let ηPrime = asinh(sinλ / sqrt(τPrime*τPrime + cosλ*cosλ))
213 |
/host/spi-builder-workspace/Sources/Geotum/Geotum.swift:212:23: error: cannot find 'asinh' in scope
210 |
211 |         let ξPrime = atan2(τPrime, cosλ)
212 |         let ηPrime = asinh(sinλ / sqrt(τPrime*τPrime + cosλ*cosλ))
    |                      `- error: cannot find 'asinh' in scope
213 |
214 |         let krüger = KrugerForms(datum: datum)
/host/spi-builder-workspace/Sources/Geotum/Geotum.swift:212:37: error: cannot find 'sqrt' in scope
210 |
211 |         let ξPrime = atan2(τPrime, cosλ)
212 |         let ηPrime = asinh(sinλ / sqrt(τPrime*τPrime + cosλ*cosλ))
    |                                   `- error: cannot find 'sqrt' in scope
213 |
214 |         let krüger = KrugerForms(datum: datum)
/host/spi-builder-workspace/Sources/Geotum/Geotum.swift:220:43: error: cannot find 'sin' in scope
218 |         for index in 1...6 {
219 |             let properIndex = Double(2 * index)
220 |             ξ += krüger.α[index - 1] * sin(properIndex * ξPrime) * cosh(properIndex * ηPrime)
    |                                        `- error: cannot find 'sin' in scope
221 |             η += krüger.α[index - 1] * cos(properIndex * ξPrime) * sinh(properIndex * ηPrime)
222 |         }
/host/spi-builder-workspace/Sources/Geotum/Geotum.swift:220:72: error: cannot find 'cosh' in scope
218 |         for index in 1...6 {
219 |             let properIndex = Double(2 * index)
220 |             ξ += krüger.α[index - 1] * sin(properIndex * ξPrime) * cosh(properIndex * ηPrime)
    |                                                                    `- error: cannot find 'cosh' in scope
221 |             η += krüger.α[index - 1] * cos(properIndex * ξPrime) * sinh(properIndex * ηPrime)
222 |         }
/host/spi-builder-workspace/Sources/Geotum/Geotum.swift:221:43: error: cannot find 'cos' in scope
219 |             let properIndex = Double(2 * index)
220 |             ξ += krüger.α[index - 1] * sin(properIndex * ξPrime) * cosh(properIndex * ηPrime)
221 |             η += krüger.α[index - 1] * cos(properIndex * ξPrime) * sinh(properIndex * ηPrime)
    |                                        `- error: cannot find 'cos' in scope
222 |         }
223 |
/host/spi-builder-workspace/Sources/Geotum/Geotum.swift:221:72: error: cannot find 'sinh' in scope
219 |             let properIndex = Double(2 * index)
220 |             ξ += krüger.α[index - 1] * sin(properIndex * ξPrime) * cosh(properIndex * ηPrime)
221 |             η += krüger.α[index - 1] * cos(properIndex * ξPrime) * sinh(properIndex * ηPrime)
    |                                                                    `- error: cannot find 'sinh' in scope
222 |         }
223 |
/host/spi-builder-workspace/Sources/Geotum/Geotum.swift:242:25: error: cannot find 'floor' in scope
240 |     private func latitudeBand(at latitude : Measurement<UnitAngle>) -> String {
241 |         let mgrsBands = ["C", "D", "E", "F", "G", "H", "J", "K", "L", "M", "N", "P", "Q", "R", "S", "T", "U", "V", "W", "X", "X"]
242 |         let index = Int(floor(latitude.converted(to: .degrees).value / 8 + 10))
    |                         `- error: cannot find 'floor' in scope
243 |         return mgrsBands[index]
244 |     }
/host/spi-builder-workspace/Sources/Geotum/Geotum.swift:242:55: error: cannot infer contextual base in reference to member 'degrees'
240 |     private func latitudeBand(at latitude : Measurement<UnitAngle>) -> String {
241 |         let mgrsBands = ["C", "D", "E", "F", "G", "H", "J", "K", "L", "M", "N", "P", "Q", "R", "S", "T", "U", "V", "W", "X", "X"]
242 |         let index = Int(floor(latitude.converted(to: .degrees).value / 8 + 10))
    |                                                       `- error: cannot infer contextual base in reference to member 'degrees'
243 |         return mgrsBands[index]
244 |     }
/host/spi-builder-workspace/Sources/Geotum/Geotum.swift:249:40: error: cannot find 'Measurement' in scope
247 |         guard zone == 31 else { return zone }
248 |         guard latitudeBand == "V" else { return zone }
249 |         guard coordinates.longitude >= Measurement(value: 3, unit: UnitAngle.degrees) else { return zone }
    |                                        `- error: cannot find 'Measurement' in scope
250 |
251 |         return 32
/host/spi-builder-workspace/Sources/Geotum/Geotum.swift:249:68: error: cannot find 'UnitAngle' in scope
247 |         guard zone == 31 else { return zone }
248 |         guard latitudeBand == "V" else { return zone }
249 |         guard coordinates.longitude >= Measurement(value: 3, unit: UnitAngle.degrees) else { return zone }
    |                                                                    `- error: cannot find 'UnitAngle' in scope
250 |
251 |         return 32
/host/spi-builder-workspace/Sources/Geotum/Geotum.swift:258:70: error: cannot infer contextual base in reference to member 'degrees'
256 |         guard zone == 32 || zone == 34 || zone == 36 else { return zone }
257 |
258 |         let longitiudeDegrees = coordinates.longitude.converted(to: .degrees).value
    |                                                                      `- error: cannot infer contextual base in reference to member 'degrees'
259 |
260 |         if zone == 32 {
/host/spi-builder-workspace/Sources/Geotum/Geotum.swift:292:48: error: cannot find 'sin' in scope
290 |         for index in 1...6 {
291 |             let properIndex = Double(2 * index)
292 |             ξPrime -= krüger.β[index - 1] * sin(properIndex * ξ) * cosh(properIndex * η)
    |                                             `- error: cannot find 'sin' in scope
293 |             ηPrime -= krüger.β[index - 1] * cos(properIndex * ξ) * sinh(properIndex * η)
294 |         }
/host/spi-builder-workspace/Sources/Geotum/Geotum.swift:292:72: error: cannot find 'cosh' in scope
290 |         for index in 1...6 {
291 |             let properIndex = Double(2 * index)
292 |             ξPrime -= krüger.β[index - 1] * sin(properIndex * ξ) * cosh(properIndex * η)
    |                                                                    `- error: cannot find 'cosh' in scope
293 |             ηPrime -= krüger.β[index - 1] * cos(properIndex * ξ) * sinh(properIndex * η)
294 |         }
/host/spi-builder-workspace/Sources/Geotum/Geotum.swift:293:48: error: cannot find 'cos' in scope
291 |             let properIndex = Double(2 * index)
292 |             ξPrime -= krüger.β[index - 1] * sin(properIndex * ξ) * cosh(properIndex * η)
293 |             ηPrime -= krüger.β[index - 1] * cos(properIndex * ξ) * sinh(properIndex * η)
    |                                             `- error: cannot find 'cos' in scope
294 |         }
295 |
/host/spi-builder-workspace/Sources/Geotum/Geotum.swift:293:72: error: cannot find 'sinh' in scope
291 |             let properIndex = Double(2 * index)
292 |             ξPrime -= krüger.β[index - 1] * sin(properIndex * ξ) * cosh(properIndex * η)
293 |             ηPrime -= krüger.β[index - 1] * cos(properIndex * ξ) * sinh(properIndex * η)
    |                                                                    `- error: cannot find 'sinh' in scope
294 |         }
295 |
/host/spi-builder-workspace/Sources/Geotum/Geotum.swift:296:27: error: cannot find 'sinh' in scope
294 |         }
295 |
296 |         let sinhηPrime = sinh(ηPrime)
    |                          `- error: cannot find 'sinh' in scope
297 |         let sinξPrime = sin(ξPrime)
298 |         let cosξPrime = cos(ξPrime)
/host/spi-builder-workspace/Sources/Geotum/Geotum.swift:297:26: error: cannot find 'sin' in scope
295 |
296 |         let sinhηPrime = sinh(ηPrime)
297 |         let sinξPrime = sin(ξPrime)
    |                         `- error: cannot find 'sin' in scope
298 |         let cosξPrime = cos(ξPrime)
299 |
/host/spi-builder-workspace/Sources/Geotum/Geotum.swift:298:26: error: cannot find 'cos' in scope
296 |         let sinhηPrime = sinh(ηPrime)
297 |         let sinξPrime = sin(ξPrime)
298 |         let cosξPrime = cos(ξPrime)
    |                         `- error: cannot find 'cos' in scope
299 |
300 |         let τPrime = sinξPrime / sqrt(sinhηPrime*sinhηPrime + cosξPrime*cosξPrime)
/host/spi-builder-workspace/Sources/Geotum/Geotum.swift:300:36: error: cannot find 'sqrt' in scope
298 |         let cosξPrime = cos(ξPrime)
299 |
300 |         let τPrime = sinξPrime / sqrt(sinhηPrime*sinhηPrime + cosξPrime*cosξPrime)
    |                                  `- error: cannot find 'sqrt' in scope
301 |
302 |         var δτi : Double = 1.0
/host/spi-builder-workspace/Sources/Geotum/Geotum.swift:306:23: error: cannot find 'sinh' in scope
304 |         let e2 = datum.eccentricity * datum.eccentricity
305 |         while δτi > 1e-12 {
306 |             let σi = sinh(datum.eccentricity*atanh(datum.eccentricity*τi/sqrt(1+τi*τi)));
    |                      `- error: cannot find 'sinh' in scope
307 |             let τiPrime = τi * sqrt(1+σi*σi) - σi * sqrt(1+τi*τi);
308 |             δτi = (τPrime - τiPrime)/sqrt(1+τiPrime*τiPrime)
/host/spi-builder-workspace/Sources/Geotum/Geotum.swift:306:47: error: cannot find 'atanh' in scope
304 |         let e2 = datum.eccentricity * datum.eccentricity
305 |         while δτi > 1e-12 {
306 |             let σi = sinh(datum.eccentricity*atanh(datum.eccentricity*τi/sqrt(1+τi*τi)));
    |                                              `- error: cannot find 'atanh' in scope
307 |             let τiPrime = τi * sqrt(1+σi*σi) - σi * sqrt(1+τi*τi);
308 |             δτi = (τPrime - τiPrime)/sqrt(1+τiPrime*τiPrime)
/host/spi-builder-workspace/Sources/Geotum/Geotum.swift:306:76: error: cannot find 'sqrt' in scope
304 |         let e2 = datum.eccentricity * datum.eccentricity
305 |         while δτi > 1e-12 {
306 |             let σi = sinh(datum.eccentricity*atanh(datum.eccentricity*τi/sqrt(1+τi*τi)));
    |                                                                          `- error: cannot find 'sqrt' in scope
307 |             let τiPrime = τi * sqrt(1+σi*σi) - σi * sqrt(1+τi*τi);
308 |             δτi = (τPrime - τiPrime)/sqrt(1+τiPrime*τiPrime)
/host/spi-builder-workspace/Sources/Geotum/Geotum.swift:307:34: error: cannot find 'sqrt' in scope
305 |         while δτi > 1e-12 {
306 |             let σi = sinh(datum.eccentricity*atanh(datum.eccentricity*τi/sqrt(1+τi*τi)));
307 |             let τiPrime = τi * sqrt(1+σi*σi) - σi * sqrt(1+τi*τi);
    |                                `- error: cannot find 'sqrt' in scope
308 |             δτi = (τPrime - τiPrime)/sqrt(1+τiPrime*τiPrime)
309 |                 * (1 + (1 - e2)*τi*τi) / ((1-e2)*sqrt(1+τi*τi));
/host/spi-builder-workspace/Sources/Geotum/Geotum.swift:307:58: error: cannot find 'sqrt' in scope
305 |         while δτi > 1e-12 {
306 |             let σi = sinh(datum.eccentricity*atanh(datum.eccentricity*τi/sqrt(1+τi*τi)));
307 |             let τiPrime = τi * sqrt(1+σi*σi) - σi * sqrt(1+τi*τi);
    |                                                     `- error: cannot find 'sqrt' in scope
308 |             δτi = (τPrime - τiPrime)/sqrt(1+τiPrime*τiPrime)
309 |                 * (1 + (1 - e2)*τi*τi) / ((1-e2)*sqrt(1+τi*τi));
/host/spi-builder-workspace/Sources/Geotum/Geotum.swift:308:42: error: cannot find 'sqrt' in scope
306 |             let σi = sinh(datum.eccentricity*atanh(datum.eccentricity*τi/sqrt(1+τi*τi)));
307 |             let τiPrime = τi * sqrt(1+σi*σi) - σi * sqrt(1+τi*τi);
308 |             δτi = (τPrime - τiPrime)/sqrt(1+τiPrime*τiPrime)
    |                                      `- error: cannot find 'sqrt' in scope
309 |                 * (1 + (1 - e2)*τi*τi) / ((1-e2)*sqrt(1+τi*τi));
310 |             τi += δτi;
/host/spi-builder-workspace/Sources/Geotum/Geotum.swift:309:52: error: cannot find 'sqrt' in scope
307 |             let τiPrime = τi * sqrt(1+σi*σi) - σi * sqrt(1+τi*τi);
308 |             δτi = (τPrime - τiPrime)/sqrt(1+τiPrime*τiPrime)
309 |                 * (1 + (1 - e2)*τi*τi) / ((1-e2)*sqrt(1+τi*τi));
    |                                                  `- error: cannot find 'sqrt' in scope
310 |             τi += δτi;
311 |         }
/host/spi-builder-workspace/Sources/Geotum/Geotum.swift:308:41: error: binary operator '/' cannot be applied to operands of type 'UTMDistance' and 'Double'
306 |             let σi = sinh(datum.eccentricity*atanh(datum.eccentricity*τi/sqrt(1+τi*τi)));
307 |             let τiPrime = τi * sqrt(1+σi*σi) - σi * sqrt(1+τi*τi);
308 |             δτi = (τPrime - τiPrime)/sqrt(1+τiPrime*τiPrime)
    |                                     |- error: binary operator '/' cannot be applied to operands of type 'UTMDistance' and 'Double'
    |                                     `- note: overloads for '/' exist with these partially matching parameter lists: (Double, Double), (Duration, Duration)
309 |                 * (1 + (1 - e2)*τi*τi) / ((1-e2)*sqrt(1+τi*τi));
310 |             τi += δτi;
/host/spi-builder-workspace/Sources/Geotum/Geotum.swift:313:18: error: cannot find 'atan' in scope
311 |         }
312 |         let τ = τi
313 |         let φ = atan(τ)
    |                 `- error: cannot find 'atan' in scope
314 |
315 |         let centralMeridian = Measurement<UnitAngle>(value: (Double(utm.zone) - 1.0) * 6 - 180.0 + 3.0, unit: .degrees).converted(to: .radians).value
/host/spi-builder-workspace/Sources/Geotum/Geotum.swift:315:31: error: cannot find 'Measurement' in scope
313 |         let φ = atan(τ)
314 |
315 |         let centralMeridian = Measurement<UnitAngle>(value: (Double(utm.zone) - 1.0) * 6 - 180.0 + 3.0, unit: .degrees).converted(to: .radians).value
    |                               `- error: cannot find 'Measurement' in scope
316 |         let λ = atan2(sinhηPrime, cosξPrime) + centralMeridian
317 |
/host/spi-builder-workspace/Sources/Geotum/Geotum.swift:315:43: error: cannot find type 'UnitAngle' in scope
313 |         let φ = atan(τ)
314 |
315 |         let centralMeridian = Measurement<UnitAngle>(value: (Double(utm.zone) - 1.0) * 6 - 180.0 + 3.0, unit: .degrees).converted(to: .radians).value
    |                                          |`- error: cannot find type 'UnitAngle' in scope
    |                                          |- note: while parsing this '<' as a type parameter bracket
    |                                          |- note: while parsing this '<' as a type parameter bracket
    |                                          `- note: while parsing this '<' as a type parameter bracket
316 |         let λ = atan2(sinhηPrime, cosξPrime) + centralMeridian
317 |
/host/spi-builder-workspace/Sources/Geotum/Geotum.swift:315:13: error: the compiler is unable to type-check this expression in reasonable time; try breaking up the expression into distinct sub-expressions
313 |         let φ = atan(τ)
314 |
315 |         let centralMeridian = Measurement<UnitAngle>(value: (Double(utm.zone) - 1.0) * 6 - 180.0 + 3.0, unit: .degrees).converted(to: .radians).value
    |             `- error: the compiler is unable to type-check this expression in reasonable time; try breaking up the expression into distinct sub-expressions
316 |         let λ = atan2(sinhηPrime, cosξPrime) + centralMeridian
317 |
/host/spi-builder-workspace/Sources/Geotum/Geotum.swift:316:18: error: cannot find 'atan2' in scope
314 |
315 |         let centralMeridian = Measurement<UnitAngle>(value: (Double(utm.zone) - 1.0) * 6 - 180.0 + 3.0, unit: .degrees).converted(to: .radians).value
316 |         let λ = atan2(sinhηPrime, cosξPrime) + centralMeridian
    |                 `- error: cannot find 'atan2' in scope
317 |
318 |         return LatLonCoordinate(latitude: Measurement<UnitAngle>(value: φ, unit: .radians), longitude: Measurement<UnitAngle>(value: λ, unit: .radians))
/host/spi-builder-workspace/Sources/Geotum/Geotum.swift:318:43: error: cannot find 'Measurement' in scope
316 |         let λ = atan2(sinhηPrime, cosξPrime) + centralMeridian
317 |
318 |         return LatLonCoordinate(latitude: Measurement<UnitAngle>(value: φ, unit: .radians), longitude: Measurement<UnitAngle>(value: λ, unit: .radians))
    |                                           `- error: cannot find 'Measurement' in scope
319 |     }
320 | }
/host/spi-builder-workspace/Sources/Geotum/Geotum.swift:318:105: error: cannot find 'Measurement' in scope
316 |         let λ = atan2(sinhηPrime, cosξPrime) + centralMeridian
317 |
318 |         return LatLonCoordinate(latitude: Measurement<UnitAngle>(value: φ, unit: .radians), longitude: Measurement<UnitAngle>(value: λ, unit: .radians))
    |                                                                                                        `- error: cannot find 'Measurement' in scope
319 |     }
320 | }
/host/spi-builder-workspace/Sources/Geotum/Geotum.swift:318:55: error: cannot find type 'UnitAngle' in scope
316 |         let λ = atan2(sinhηPrime, cosξPrime) + centralMeridian
317 |
318 |         return LatLonCoordinate(latitude: Measurement<UnitAngle>(value: φ, unit: .radians), longitude: Measurement<UnitAngle>(value: λ, unit: .radians))
    |                                                      |`- error: cannot find type 'UnitAngle' in scope
    |                                                      `- note: while parsing this '<' as a type parameter bracket
319 |     }
320 | }
/host/spi-builder-workspace/Sources/Geotum/Geotum.swift:318:117: error: cannot find type 'UnitAngle' in scope
316 |         let λ = atan2(sinhηPrime, cosξPrime) + centralMeridian
317 |
318 |         return LatLonCoordinate(latitude: Measurement<UnitAngle>(value: φ, unit: .radians), longitude: Measurement<UnitAngle>(value: λ, unit: .radians))
    |                                                                                                                   |`- error: cannot find type 'UnitAngle' in scope
    |                                                                                                                   `- note: while parsing this '<' as a type parameter bracket
319 |     }
320 | }
/host/spi-builder-workspace/Sources/Geotum/Geotum.swift:318:32: error: incorrect argument labels in call (have 'latitude:longitude:', expected 'latiudinalDegrees:longitudinalDegrees:')
316 |         let λ = atan2(sinhηPrime, cosξPrime) + centralMeridian
317 |
318 |         return LatLonCoordinate(latitude: Measurement<UnitAngle>(value: φ, unit: .radians), longitude: Measurement<UnitAngle>(value: λ, unit: .radians))
    |                                `- error: incorrect argument labels in call (have 'latitude:longitude:', expected 'latiudinalDegrees:longitudinalDegrees:')
319 |     }
320 | }
/host/spi-builder-workspace/Sources/Geotum/Geotum.swift:318:84: error: cannot infer contextual base in reference to member 'radians'
316 |         let λ = atan2(sinhηPrime, cosξPrime) + centralMeridian
317 |
318 |         return LatLonCoordinate(latitude: Measurement<UnitAngle>(value: φ, unit: .radians), longitude: Measurement<UnitAngle>(value: λ, unit: .radians))
    |                                                                                   `- error: cannot infer contextual base in reference to member 'radians'
319 |     }
320 | }
/host/spi-builder-workspace/Sources/Geotum/Geotum.swift:318:146: error: cannot infer contextual base in reference to member 'radians'
316 |         let λ = atan2(sinhηPrime, cosξPrime) + centralMeridian
317 |
318 |         return LatLonCoordinate(latitude: Measurement<UnitAngle>(value: φ, unit: .radians), longitude: Measurement<UnitAngle>(value: λ, unit: .radians))
    |                                                                                                                                                `- error: cannot infer contextual base in reference to member 'radians'
319 |     }
320 | }
Running build ...
bash -c docker run --pull=always --rm -v "checkouts-4609320-2":/host -w "$PWD" registry.gitlab.com/finestructure/spi-images:basic-6.1-latest swift build --triple x86_64-unknown-linux-gnu 2>&1
basic-6.1-latest: Pulling from finestructure/spi-images
Digest: sha256:3bdcac04179f4ed3e5b8e9dbd6e74bbf5ebc0f4fde48bbaad7d1e5c757e65bcb
Status: Image is up to date for registry.gitlab.com/finestructure/spi-images:basic-6.1-latest
[0/1] Planning build
Building for debugging...
[0/1] Write swift-version-24593BA9C3E375BF.txt
error: emit-module command failed with exit code 1 (use -v to see invocation)
[2/3] Emitting module Geotum
/host/spi-builder-workspace/Sources/Geotum/Geotum.swift:62:27: error: cannot find type 'Measurement' in scope
 60 | public struct LatLonCoordinate {
 61 |     public typealias Distance = LatLonCoordinate
 62 |     public let latitude : Measurement<UnitAngle>
    |                           `- error: cannot find type 'Measurement' in scope
 63 |     public let longitude : Measurement<UnitAngle>
 64 |
/host/spi-builder-workspace/Sources/Geotum/Geotum.swift:63:28: error: cannot find type 'Measurement' in scope
 61 |     public typealias Distance = LatLonCoordinate
 62 |     public let latitude : Measurement<UnitAngle>
 63 |     public let longitude : Measurement<UnitAngle>
    |                            `- error: cannot find type 'Measurement' in scope
 64 |
 65 |     public init(latitude : Measurement<UnitAngle>, longitude : Measurement<UnitAngle>) {
/host/spi-builder-workspace/Sources/Geotum/Geotum.swift:65:28: error: cannot find type 'Measurement' in scope
 63 |     public let longitude : Measurement<UnitAngle>
 64 |
 65 |     public init(latitude : Measurement<UnitAngle>, longitude : Measurement<UnitAngle>) {
    |                            `- error: cannot find type 'Measurement' in scope
 66 |         self.latitude = latitude
 67 |         self.longitude = longitude
/host/spi-builder-workspace/Sources/Geotum/Geotum.swift:65:64: error: cannot find type 'Measurement' in scope
 63 |     public let longitude : Measurement<UnitAngle>
 64 |
 65 |     public init(latitude : Measurement<UnitAngle>, longitude : Measurement<UnitAngle>) {
    |                                                                `- error: cannot find type 'Measurement' in scope
 66 |         self.latitude = latitude
 67 |         self.longitude = longitude
/host/spi-builder-workspace/Sources/Geotum/Geotum.swift:75:47: error: cannot find type 'UnitAngle' in scope
 73 |     }
 74 |
 75 |     mutating public func convert(to newUnit : UnitAngle) {
    |                                               `- error: cannot find type 'UnitAngle' in scope
 76 |         self = self.converted(to: newUnit)
 77 |     }
/host/spi-builder-workspace/Sources/Geotum/Geotum.swift:79:40: error: cannot find type 'UnitAngle' in scope
 77 |     }
 78 |
 79 |     public func converted(to newUnit : UnitAngle) -> LatLonCoordinate {
    |                                        `- error: cannot find type 'UnitAngle' in scope
 80 |         return LatLonCoordinate(latitude: latitude.converted(to: newUnit), longitude: longitude.converted(to: newUnit))
 81 |     }
/host/spi-builder-workspace/Sources/Geotum/Geotum.swift:168:48: error: cannot find type 'Measurement' in scope
166 | }
167 |
168 | public func abs<T : Dimension>(_ measurement : Measurement<T>) -> Measurement<T> {
    |                                                `- error: cannot find type 'Measurement' in scope
169 |     return Measurement<T>(value: abs(measurement.value), unit: measurement.unit)
170 | }
/host/spi-builder-workspace/Sources/Geotum/Geotum.swift:168:67: error: cannot find type 'Measurement' in scope
166 | }
167 |
168 | public func abs<T : Dimension>(_ measurement : Measurement<T>) -> Measurement<T> {
    |                                                                   `- error: cannot find type 'Measurement' in scope
169 |     return Measurement<T>(value: abs(measurement.value), unit: measurement.unit)
170 | }
/host/spi-builder-workspace/Sources/Geotum/Geotum.swift:168:21: error: cannot find type 'Dimension' in scope
166 | }
167 |
168 | public func abs<T : Dimension>(_ measurement : Measurement<T>) -> Measurement<T> {
    |                     `- error: cannot find type 'Dimension' in scope
169 |     return Measurement<T>(value: abs(measurement.value), unit: measurement.unit)
170 | }
/host/spi-builder-workspace/Sources/Geotum/Geotum.swift:179:54: error: cannot find type 'Measurement' in scope
177 |     }
178 |
179 |     private func centralMeridian(for zone : UInt) -> Measurement<UnitAngle> {
    |                                                      `- error: cannot find type 'Measurement' in scope
180 |         return Measurement<UnitAngle>(value: -183.0 + (Double(zone) * 6.0), unit: .degrees)
181 |     }
/host/spi-builder-workspace/Sources/Geotum/Geotum.swift:240:45: error: cannot find type 'Measurement' in scope
238 |     }
239 |
240 |     private func latitudeBand(at latitude : Measurement<UnitAngle>) -> String {
    |                                             `- error: cannot find type 'Measurement' in scope
241 |         let mgrsBands = ["C", "D", "E", "F", "G", "H", "J", "K", "L", "M", "N", "P", "Q", "R", "S", "T", "U", "V", "W", "X", "X"]
242 |         let index = Int(floor(latitude.converted(to: .degrees).value / 8 + 10))
[3/3] Compiling Geotum Geotum.swift
/host/spi-builder-workspace/Sources/Geotum/Geotum.swift:62:27: error: cannot find type 'Measurement' in scope
 60 | public struct LatLonCoordinate {
 61 |     public typealias Distance = LatLonCoordinate
 62 |     public let latitude : Measurement<UnitAngle>
    |                           `- error: cannot find type 'Measurement' in scope
 63 |     public let longitude : Measurement<UnitAngle>
 64 |
/host/spi-builder-workspace/Sources/Geotum/Geotum.swift:63:28: error: cannot find type 'Measurement' in scope
 61 |     public typealias Distance = LatLonCoordinate
 62 |     public let latitude : Measurement<UnitAngle>
 63 |     public let longitude : Measurement<UnitAngle>
    |                            `- error: cannot find type 'Measurement' in scope
 64 |
 65 |     public init(latitude : Measurement<UnitAngle>, longitude : Measurement<UnitAngle>) {
/host/spi-builder-workspace/Sources/Geotum/Geotum.swift:65:28: error: cannot find type 'Measurement' in scope
 63 |     public let longitude : Measurement<UnitAngle>
 64 |
 65 |     public init(latitude : Measurement<UnitAngle>, longitude : Measurement<UnitAngle>) {
    |                            `- error: cannot find type 'Measurement' in scope
 66 |         self.latitude = latitude
 67 |         self.longitude = longitude
/host/spi-builder-workspace/Sources/Geotum/Geotum.swift:65:64: error: cannot find type 'Measurement' in scope
 63 |     public let longitude : Measurement<UnitAngle>
 64 |
 65 |     public init(latitude : Measurement<UnitAngle>, longitude : Measurement<UnitAngle>) {
    |                                                                `- error: cannot find type 'Measurement' in scope
 66 |         self.latitude = latitude
 67 |         self.longitude = longitude
/host/spi-builder-workspace/Sources/Geotum/Geotum.swift:75:47: error: cannot find type 'UnitAngle' in scope
 73 |     }
 74 |
 75 |     mutating public func convert(to newUnit : UnitAngle) {
    |                                               `- error: cannot find type 'UnitAngle' in scope
 76 |         self = self.converted(to: newUnit)
 77 |     }
/host/spi-builder-workspace/Sources/Geotum/Geotum.swift:79:40: error: cannot find type 'UnitAngle' in scope
 77 |     }
 78 |
 79 |     public func converted(to newUnit : UnitAngle) -> LatLonCoordinate {
    |                                        `- error: cannot find type 'UnitAngle' in scope
 80 |         return LatLonCoordinate(latitude: latitude.converted(to: newUnit), longitude: longitude.converted(to: newUnit))
 81 |     }
/host/spi-builder-workspace/Sources/Geotum/Geotum.swift:168:48: error: cannot find type 'Measurement' in scope
166 | }
167 |
168 | public func abs<T : Dimension>(_ measurement : Measurement<T>) -> Measurement<T> {
    |                                                `- error: cannot find type 'Measurement' in scope
169 |     return Measurement<T>(value: abs(measurement.value), unit: measurement.unit)
170 | }
/host/spi-builder-workspace/Sources/Geotum/Geotum.swift:168:67: error: cannot find type 'Measurement' in scope
166 | }
167 |
168 | public func abs<T : Dimension>(_ measurement : Measurement<T>) -> Measurement<T> {
    |                                                                   `- error: cannot find type 'Measurement' in scope
169 |     return Measurement<T>(value: abs(measurement.value), unit: measurement.unit)
170 | }
/host/spi-builder-workspace/Sources/Geotum/Geotum.swift:168:21: error: cannot find type 'Dimension' in scope
166 | }
167 |
168 | public func abs<T : Dimension>(_ measurement : Measurement<T>) -> Measurement<T> {
    |                     `- error: cannot find type 'Dimension' in scope
169 |     return Measurement<T>(value: abs(measurement.value), unit: measurement.unit)
170 | }
/host/spi-builder-workspace/Sources/Geotum/Geotum.swift:179:54: error: cannot find type 'Measurement' in scope
177 |     }
178 |
179 |     private func centralMeridian(for zone : UInt) -> Measurement<UnitAngle> {
    |                                                      `- error: cannot find type 'Measurement' in scope
180 |         return Measurement<UnitAngle>(value: -183.0 + (Double(zone) * 6.0), unit: .degrees)
181 |     }
/host/spi-builder-workspace/Sources/Geotum/Geotum.swift:240:45: error: cannot find type 'Measurement' in scope
238 |     }
239 |
240 |     private func latitudeBand(at latitude : Measurement<UnitAngle>) -> String {
    |                                             `- error: cannot find type 'Measurement' in scope
241 |         let mgrsBands = ["C", "D", "E", "F", "G", "H", "J", "K", "L", "M", "N", "P", "Q", "R", "S", "T", "U", "V", "W", "X", "X"]
242 |         let index = Int(floor(latitude.converted(to: .degrees).value / 8 + 10))
/host/spi-builder-workspace/Sources/Geotum/Geotum.swift:71:25: error: cannot find 'Measurement' in scope
 69 |
 70 |     public init(latiudinalDegrees: Double, longitudinalDegrees: Double) {
 71 |         self.latitude = Measurement(value: latiudinalDegrees, unit: .degrees)
    |                         `- error: cannot find 'Measurement' in scope
 72 |         self.longitude = Measurement(value: longitudinalDegrees, unit: .degrees)
 73 |     }
/host/spi-builder-workspace/Sources/Geotum/Geotum.swift:71:70: error: cannot infer contextual base in reference to member 'degrees'
 69 |
 70 |     public init(latiudinalDegrees: Double, longitudinalDegrees: Double) {
 71 |         self.latitude = Measurement(value: latiudinalDegrees, unit: .degrees)
    |                                                                      `- error: cannot infer contextual base in reference to member 'degrees'
 72 |         self.longitude = Measurement(value: longitudinalDegrees, unit: .degrees)
 73 |     }
/host/spi-builder-workspace/Sources/Geotum/Geotum.swift:72:26: error: cannot find 'Measurement' in scope
 70 |     public init(latiudinalDegrees: Double, longitudinalDegrees: Double) {
 71 |         self.latitude = Measurement(value: latiudinalDegrees, unit: .degrees)
 72 |         self.longitude = Measurement(value: longitudinalDegrees, unit: .degrees)
    |                          `- error: cannot find 'Measurement' in scope
 73 |     }
 74 |
/host/spi-builder-workspace/Sources/Geotum/Geotum.swift:72:73: error: cannot infer contextual base in reference to member 'degrees'
 70 |     public init(latiudinalDegrees: Double, longitudinalDegrees: Double) {
 71 |         self.latitude = Measurement(value: latiudinalDegrees, unit: .degrees)
 72 |         self.longitude = Measurement(value: longitudinalDegrees, unit: .degrees)
    |                                                                         `- error: cannot infer contextual base in reference to member 'degrees'
 73 |     }
 74 |
/host/spi-builder-workspace/Sources/Geotum/Geotum.swift:80:32: error: incorrect argument labels in call (have 'latitude:longitude:', expected 'latiudinalDegrees:longitudinalDegrees:')
 78 |
 79 |     public func converted(to newUnit : UnitAngle) -> LatLonCoordinate {
 80 |         return LatLonCoordinate(latitude: latitude.converted(to: newUnit), longitude: longitude.converted(to: newUnit))
    |                                `- error: incorrect argument labels in call (have 'latitude:longitude:', expected 'latiudinalDegrees:longitudinalDegrees:')
 81 |     }
 82 | }
/host/spi-builder-workspace/Sources/Geotum/Geotum.swift:120:16: error: cannot find 'sqrt' in scope
118 |
119 |     public var eccentricity : Double {
120 |         return sqrt(inverseFlattening * (2 - inverseFlattening))
    |                `- error: cannot find 'sqrt' in scope
121 |     }
122 | }
/host/spi-builder-workspace/Sources/Geotum/Geotum.swift:187:28: error: cannot find 'Measurement' in scope
185 |         let longitude = coordinates.longitude
186 |
187 |         if abs(latitude) > Measurement(value: 84, unit: UnitAngle.degrees) {
    |                            `- error: cannot find 'Measurement' in scope
188 |             print("Oops")
189 |             fatalError("Latitude is out of range")
/host/spi-builder-workspace/Sources/Geotum/Geotum.swift:187:57: error: cannot find 'UnitAngle' in scope
185 |         let longitude = coordinates.longitude
186 |
187 |         if abs(latitude) > Measurement(value: 84, unit: UnitAngle.degrees) {
    |                                                         `- error: cannot find 'UnitAngle' in scope
188 |             print("Oops")
189 |             fatalError("Latitude is out of range")
/host/spi-builder-workspace/Sources/Geotum/Geotum.swift:192:25: error: cannot find 'floor' in scope
190 |         }
191 |
192 |         var zone = UInt(floor((longitude.converted(to: .degrees).value + 180.0) / 6) + 1)
    |                         `- error: cannot find 'floor' in scope
193 |
194 |         let band = latitudeBand(at: latitude)
/host/spi-builder-workspace/Sources/Geotum/Geotum.swift:192:57: error: cannot infer contextual base in reference to member 'degrees'
190 |         }
191 |
192 |         var zone = UInt(floor((longitude.converted(to: .degrees).value + 180.0) / 6) + 1)
    |                                                         `- error: cannot infer contextual base in reference to member 'degrees'
193 |
194 |         let band = latitudeBand(at: latitude)
/host/spi-builder-workspace/Sources/Geotum/Geotum.swift:198:31: error: cannot find 'Measurement' in scope
196 |         zone = zoneWithSvalbardCorrectionIfNeeded(zone: zone, latitudeBand: band, coordinates: coordinates)
197 |
198 |         let centralMeridian = Measurement<UnitAngle>(value: (Double(zone - 1) * 6.0) - 180.0 + 3.0, unit: .degrees)
    |                               `- error: cannot find 'Measurement' in scope
199 |         let φ = latitude.converted(to: .radians).value
200 |         let λ = longitude.converted(to: .radians).value - centralMeridian.converted(to: .radians).value
/host/spi-builder-workspace/Sources/Geotum/Geotum.swift:198:43: error: cannot find type 'UnitAngle' in scope
196 |         zone = zoneWithSvalbardCorrectionIfNeeded(zone: zone, latitudeBand: band, coordinates: coordinates)
197 |
198 |         let centralMeridian = Measurement<UnitAngle>(value: (Double(zone - 1) * 6.0) - 180.0 + 3.0, unit: .degrees)
    |                                          |`- error: cannot find type 'UnitAngle' in scope
    |                                          |- note: while parsing this '<' as a type parameter bracket
    |                                          `- note: while parsing this '<' as a type parameter bracket
199 |         let φ = latitude.converted(to: .radians).value
200 |         let λ = longitude.converted(to: .radians).value - centralMeridian.converted(to: .radians).value
/host/spi-builder-workspace/Sources/Geotum/Geotum.swift:198:108: error: cannot infer contextual base in reference to member 'degrees'
196 |         zone = zoneWithSvalbardCorrectionIfNeeded(zone: zone, latitudeBand: band, coordinates: coordinates)
197 |
198 |         let centralMeridian = Measurement<UnitAngle>(value: (Double(zone - 1) * 6.0) - 180.0 + 3.0, unit: .degrees)
    |                                                                                                            `- error: cannot infer contextual base in reference to member 'degrees'
199 |         let φ = latitude.converted(to: .radians).value
200 |         let λ = longitude.converted(to: .radians).value - centralMeridian.converted(to: .radians).value
/host/spi-builder-workspace/Sources/Geotum/Geotum.swift:199:42: error: cannot infer contextual base in reference to member 'radians'
197 |
198 |         let centralMeridian = Measurement<UnitAngle>(value: (Double(zone - 1) * 6.0) - 180.0 + 3.0, unit: .degrees)
199 |         let φ = latitude.converted(to: .radians).value
    |                                         `- error: cannot infer contextual base in reference to member 'radians'
200 |         let λ = longitude.converted(to: .radians).value - centralMeridian.converted(to: .radians).value
201 |
/host/spi-builder-workspace/Sources/Geotum/Geotum.swift:200:43: error: cannot infer contextual base in reference to member 'radians'
198 |         let centralMeridian = Measurement<UnitAngle>(value: (Double(zone - 1) * 6.0) - 180.0 + 3.0, unit: .degrees)
199 |         let φ = latitude.converted(to: .radians).value
200 |         let λ = longitude.converted(to: .radians).value - centralMeridian.converted(to: .radians).value
    |                                          `- error: cannot infer contextual base in reference to member 'radians'
201 |
202 |         let scaleFactor = 0.9996
/host/spi-builder-workspace/Sources/Geotum/Geotum.swift:200:91: error: cannot infer contextual base in reference to member 'radians'
198 |         let centralMeridian = Measurement<UnitAngle>(value: (Double(zone - 1) * 6.0) - 180.0 + 3.0, unit: .degrees)
199 |         let φ = latitude.converted(to: .radians).value
200 |         let λ = longitude.converted(to: .radians).value - centralMeridian.converted(to: .radians).value
    |                                                                                          `- error: cannot infer contextual base in reference to member 'radians'
201 |
202 |         let scaleFactor = 0.9996
/host/spi-builder-workspace/Sources/Geotum/Geotum.swift:204:21: error: cannot find 'cos' in scope
202 |         let scaleFactor = 0.9996
203 |
204 |         let cosλ = cos(λ)
    |                    `- error: cannot find 'cos' in scope
205 |         let sinλ = sin(λ)
206 |
/host/spi-builder-workspace/Sources/Geotum/Geotum.swift:205:21: error: cannot find 'sin' in scope
203 |
204 |         let cosλ = cos(λ)
205 |         let sinλ = sin(λ)
    |                    `- error: cannot find 'sin' in scope
206 |
207 |         let τ = tan(φ)
/host/spi-builder-workspace/Sources/Geotum/Geotum.swift:207:18: error: cannot find 'tan' in scope
205 |         let sinλ = sin(λ)
206 |
207 |         let τ = tan(φ)
    |                 `- error: cannot find 'tan' in scope
208 |         let σ = sinh(datum.eccentricity * atanh((datum.eccentricity * τ) / sqrt(1 + τ*τ)))
209 |         let τPrime = τ * sqrt(1 + σ*σ) - σ * sqrt(1 + τ*τ)
/host/spi-builder-workspace/Sources/Geotum/Geotum.swift:208:18: error: cannot find 'sinh' in scope
206 |
207 |         let τ = tan(φ)
208 |         let σ = sinh(datum.eccentricity * atanh((datum.eccentricity * τ) / sqrt(1 + τ*τ)))
    |                 `- error: cannot find 'sinh' in scope
209 |         let τPrime = τ * sqrt(1 + σ*σ) - σ * sqrt(1 + τ*τ)
210 |
/host/spi-builder-workspace/Sources/Geotum/Geotum.swift:208:44: error: cannot find 'atanh' in scope
206 |
207 |         let τ = tan(φ)
208 |         let σ = sinh(datum.eccentricity * atanh((datum.eccentricity * τ) / sqrt(1 + τ*τ)))
    |                                           `- error: cannot find 'atanh' in scope
209 |         let τPrime = τ * sqrt(1 + σ*σ) - σ * sqrt(1 + τ*τ)
210 |
/host/spi-builder-workspace/Sources/Geotum/Geotum.swift:208:78: error: cannot find 'sqrt' in scope
206 |
207 |         let τ = tan(φ)
208 |         let σ = sinh(datum.eccentricity * atanh((datum.eccentricity * τ) / sqrt(1 + τ*τ)))
    |                                                                            `- error: cannot find 'sqrt' in scope
209 |         let τPrime = τ * sqrt(1 + σ*σ) - σ * sqrt(1 + τ*τ)
210 |
/host/spi-builder-workspace/Sources/Geotum/Geotum.swift:209:28: error: cannot find 'sqrt' in scope
207 |         let τ = tan(φ)
208 |         let σ = sinh(datum.eccentricity * atanh((datum.eccentricity * τ) / sqrt(1 + τ*τ)))
209 |         let τPrime = τ * sqrt(1 + σ*σ) - σ * sqrt(1 + τ*τ)
    |                          `- error: cannot find 'sqrt' in scope
210 |
211 |         let ξPrime = atan2(τPrime, cosλ)
/host/spi-builder-workspace/Sources/Geotum/Geotum.swift:209:51: error: cannot find 'sqrt' in scope
207 |         let τ = tan(φ)
208 |         let σ = sinh(datum.eccentricity * atanh((datum.eccentricity * τ) / sqrt(1 + τ*τ)))
209 |         let τPrime = τ * sqrt(1 + σ*σ) - σ * sqrt(1 + τ*τ)
    |                                              `- error: cannot find 'sqrt' in scope
210 |
211 |         let ξPrime = atan2(τPrime, cosλ)
/host/spi-builder-workspace/Sources/Geotum/Geotum.swift:211:23: error: cannot find 'atan2' in scope
209 |         let τPrime = τ * sqrt(1 + σ*σ) - σ * sqrt(1 + τ*τ)
210 |
211 |         let ξPrime = atan2(τPrime, cosλ)
    |                      `- error: cannot find 'atan2' in scope
212 |         let ηPrime = asinh(sinλ / sqrt(τPrime*τPrime + cosλ*cosλ))
213 |
/host/spi-builder-workspace/Sources/Geotum/Geotum.swift:212:23: error: cannot find 'asinh' in scope
210 |
211 |         let ξPrime = atan2(τPrime, cosλ)
212 |         let ηPrime = asinh(sinλ / sqrt(τPrime*τPrime + cosλ*cosλ))
    |                      `- error: cannot find 'asinh' in scope
213 |
214 |         let krüger = KrugerForms(datum: datum)
/host/spi-builder-workspace/Sources/Geotum/Geotum.swift:212:37: error: cannot find 'sqrt' in scope
210 |
211 |         let ξPrime = atan2(τPrime, cosλ)
212 |         let ηPrime = asinh(sinλ / sqrt(τPrime*τPrime + cosλ*cosλ))
    |                                   `- error: cannot find 'sqrt' in scope
213 |
214 |         let krüger = KrugerForms(datum: datum)
/host/spi-builder-workspace/Sources/Geotum/Geotum.swift:220:43: error: cannot find 'sin' in scope
218 |         for index in 1...6 {
219 |             let properIndex = Double(2 * index)
220 |             ξ += krüger.α[index - 1] * sin(properIndex * ξPrime) * cosh(properIndex * ηPrime)
    |                                        `- error: cannot find 'sin' in scope
221 |             η += krüger.α[index - 1] * cos(properIndex * ξPrime) * sinh(properIndex * ηPrime)
222 |         }
/host/spi-builder-workspace/Sources/Geotum/Geotum.swift:220:72: error: cannot find 'cosh' in scope
218 |         for index in 1...6 {
219 |             let properIndex = Double(2 * index)
220 |             ξ += krüger.α[index - 1] * sin(properIndex * ξPrime) * cosh(properIndex * ηPrime)
    |                                                                    `- error: cannot find 'cosh' in scope
221 |             η += krüger.α[index - 1] * cos(properIndex * ξPrime) * sinh(properIndex * ηPrime)
222 |         }
/host/spi-builder-workspace/Sources/Geotum/Geotum.swift:221:43: error: cannot find 'cos' in scope
219 |             let properIndex = Double(2 * index)
220 |             ξ += krüger.α[index - 1] * sin(properIndex * ξPrime) * cosh(properIndex * ηPrime)
221 |             η += krüger.α[index - 1] * cos(properIndex * ξPrime) * sinh(properIndex * ηPrime)
    |                                        `- error: cannot find 'cos' in scope
222 |         }
223 |
/host/spi-builder-workspace/Sources/Geotum/Geotum.swift:221:72: error: cannot find 'sinh' in scope
219 |             let properIndex = Double(2 * index)
220 |             ξ += krüger.α[index - 1] * sin(properIndex * ξPrime) * cosh(properIndex * ηPrime)
221 |             η += krüger.α[index - 1] * cos(properIndex * ξPrime) * sinh(properIndex * ηPrime)
    |                                                                    `- error: cannot find 'sinh' in scope
222 |         }
223 |
/host/spi-builder-workspace/Sources/Geotum/Geotum.swift:242:25: error: cannot find 'floor' in scope
240 |     private func latitudeBand(at latitude : Measurement<UnitAngle>) -> String {
241 |         let mgrsBands = ["C", "D", "E", "F", "G", "H", "J", "K", "L", "M", "N", "P", "Q", "R", "S", "T", "U", "V", "W", "X", "X"]
242 |         let index = Int(floor(latitude.converted(to: .degrees).value / 8 + 10))
    |                         `- error: cannot find 'floor' in scope
243 |         return mgrsBands[index]
244 |     }
/host/spi-builder-workspace/Sources/Geotum/Geotum.swift:242:55: error: cannot infer contextual base in reference to member 'degrees'
240 |     private func latitudeBand(at latitude : Measurement<UnitAngle>) -> String {
241 |         let mgrsBands = ["C", "D", "E", "F", "G", "H", "J", "K", "L", "M", "N", "P", "Q", "R", "S", "T", "U", "V", "W", "X", "X"]
242 |         let index = Int(floor(latitude.converted(to: .degrees).value / 8 + 10))
    |                                                       `- error: cannot infer contextual base in reference to member 'degrees'
243 |         return mgrsBands[index]
244 |     }
/host/spi-builder-workspace/Sources/Geotum/Geotum.swift:249:40: error: cannot find 'Measurement' in scope
247 |         guard zone == 31 else { return zone }
248 |         guard latitudeBand == "V" else { return zone }
249 |         guard coordinates.longitude >= Measurement(value: 3, unit: UnitAngle.degrees) else { return zone }
    |                                        `- error: cannot find 'Measurement' in scope
250 |
251 |         return 32
/host/spi-builder-workspace/Sources/Geotum/Geotum.swift:249:68: error: cannot find 'UnitAngle' in scope
247 |         guard zone == 31 else { return zone }
248 |         guard latitudeBand == "V" else { return zone }
249 |         guard coordinates.longitude >= Measurement(value: 3, unit: UnitAngle.degrees) else { return zone }
    |                                                                    `- error: cannot find 'UnitAngle' in scope
250 |
251 |         return 32
/host/spi-builder-workspace/Sources/Geotum/Geotum.swift:258:70: error: cannot infer contextual base in reference to member 'degrees'
256 |         guard zone == 32 || zone == 34 || zone == 36 else { return zone }
257 |
258 |         let longitiudeDegrees = coordinates.longitude.converted(to: .degrees).value
    |                                                                      `- error: cannot infer contextual base in reference to member 'degrees'
259 |
260 |         if zone == 32 {
/host/spi-builder-workspace/Sources/Geotum/Geotum.swift:292:48: error: cannot find 'sin' in scope
290 |         for index in 1...6 {
291 |             let properIndex = Double(2 * index)
292 |             ξPrime -= krüger.β[index - 1] * sin(properIndex * ξ) * cosh(properIndex * η)
    |                                             `- error: cannot find 'sin' in scope
293 |             ηPrime -= krüger.β[index - 1] * cos(properIndex * ξ) * sinh(properIndex * η)
294 |         }
/host/spi-builder-workspace/Sources/Geotum/Geotum.swift:292:72: error: cannot find 'cosh' in scope
290 |         for index in 1...6 {
291 |             let properIndex = Double(2 * index)
292 |             ξPrime -= krüger.β[index - 1] * sin(properIndex * ξ) * cosh(properIndex * η)
    |                                                                    `- error: cannot find 'cosh' in scope
293 |             ηPrime -= krüger.β[index - 1] * cos(properIndex * ξ) * sinh(properIndex * η)
294 |         }
/host/spi-builder-workspace/Sources/Geotum/Geotum.swift:293:48: error: cannot find 'cos' in scope
291 |             let properIndex = Double(2 * index)
292 |             ξPrime -= krüger.β[index - 1] * sin(properIndex * ξ) * cosh(properIndex * η)
293 |             ηPrime -= krüger.β[index - 1] * cos(properIndex * ξ) * sinh(properIndex * η)
    |                                             `- error: cannot find 'cos' in scope
294 |         }
295 |
/host/spi-builder-workspace/Sources/Geotum/Geotum.swift:293:72: error: cannot find 'sinh' in scope
291 |             let properIndex = Double(2 * index)
292 |             ξPrime -= krüger.β[index - 1] * sin(properIndex * ξ) * cosh(properIndex * η)
293 |             ηPrime -= krüger.β[index - 1] * cos(properIndex * ξ) * sinh(properIndex * η)
    |                                                                    `- error: cannot find 'sinh' in scope
294 |         }
295 |
/host/spi-builder-workspace/Sources/Geotum/Geotum.swift:296:27: error: cannot find 'sinh' in scope
294 |         }
295 |
296 |         let sinhηPrime = sinh(ηPrime)
    |                          `- error: cannot find 'sinh' in scope
297 |         let sinξPrime = sin(ξPrime)
298 |         let cosξPrime = cos(ξPrime)
/host/spi-builder-workspace/Sources/Geotum/Geotum.swift:297:26: error: cannot find 'sin' in scope
295 |
296 |         let sinhηPrime = sinh(ηPrime)
297 |         let sinξPrime = sin(ξPrime)
    |                         `- error: cannot find 'sin' in scope
298 |         let cosξPrime = cos(ξPrime)
299 |
/host/spi-builder-workspace/Sources/Geotum/Geotum.swift:298:26: error: cannot find 'cos' in scope
296 |         let sinhηPrime = sinh(ηPrime)
297 |         let sinξPrime = sin(ξPrime)
298 |         let cosξPrime = cos(ξPrime)
    |                         `- error: cannot find 'cos' in scope
299 |
300 |         let τPrime = sinξPrime / sqrt(sinhηPrime*sinhηPrime + cosξPrime*cosξPrime)
/host/spi-builder-workspace/Sources/Geotum/Geotum.swift:300:36: error: cannot find 'sqrt' in scope
298 |         let cosξPrime = cos(ξPrime)
299 |
300 |         let τPrime = sinξPrime / sqrt(sinhηPrime*sinhηPrime + cosξPrime*cosξPrime)
    |                                  `- error: cannot find 'sqrt' in scope
301 |
302 |         var δτi : Double = 1.0
/host/spi-builder-workspace/Sources/Geotum/Geotum.swift:306:23: error: cannot find 'sinh' in scope
304 |         let e2 = datum.eccentricity * datum.eccentricity
305 |         while δτi > 1e-12 {
306 |             let σi = sinh(datum.eccentricity*atanh(datum.eccentricity*τi/sqrt(1+τi*τi)));
    |                      `- error: cannot find 'sinh' in scope
307 |             let τiPrime = τi * sqrt(1+σi*σi) - σi * sqrt(1+τi*τi);
308 |             δτi = (τPrime - τiPrime)/sqrt(1+τiPrime*τiPrime)
/host/spi-builder-workspace/Sources/Geotum/Geotum.swift:306:47: error: cannot find 'atanh' in scope
304 |         let e2 = datum.eccentricity * datum.eccentricity
305 |         while δτi > 1e-12 {
306 |             let σi = sinh(datum.eccentricity*atanh(datum.eccentricity*τi/sqrt(1+τi*τi)));
    |                                              `- error: cannot find 'atanh' in scope
307 |             let τiPrime = τi * sqrt(1+σi*σi) - σi * sqrt(1+τi*τi);
308 |             δτi = (τPrime - τiPrime)/sqrt(1+τiPrime*τiPrime)
/host/spi-builder-workspace/Sources/Geotum/Geotum.swift:306:76: error: cannot find 'sqrt' in scope
304 |         let e2 = datum.eccentricity * datum.eccentricity
305 |         while δτi > 1e-12 {
306 |             let σi = sinh(datum.eccentricity*atanh(datum.eccentricity*τi/sqrt(1+τi*τi)));
    |                                                                          `- error: cannot find 'sqrt' in scope
307 |             let τiPrime = τi * sqrt(1+σi*σi) - σi * sqrt(1+τi*τi);
308 |             δτi = (τPrime - τiPrime)/sqrt(1+τiPrime*τiPrime)
/host/spi-builder-workspace/Sources/Geotum/Geotum.swift:307:34: error: cannot find 'sqrt' in scope
305 |         while δτi > 1e-12 {
306 |             let σi = sinh(datum.eccentricity*atanh(datum.eccentricity*τi/sqrt(1+τi*τi)));
307 |             let τiPrime = τi * sqrt(1+σi*σi) - σi * sqrt(1+τi*τi);
    |                                `- error: cannot find 'sqrt' in scope
308 |             δτi = (τPrime - τiPrime)/sqrt(1+τiPrime*τiPrime)
309 |                 * (1 + (1 - e2)*τi*τi) / ((1-e2)*sqrt(1+τi*τi));
/host/spi-builder-workspace/Sources/Geotum/Geotum.swift:307:58: error: cannot find 'sqrt' in scope
305 |         while δτi > 1e-12 {
306 |             let σi = sinh(datum.eccentricity*atanh(datum.eccentricity*τi/sqrt(1+τi*τi)));
307 |             let τiPrime = τi * sqrt(1+σi*σi) - σi * sqrt(1+τi*τi);
    |                                                     `- error: cannot find 'sqrt' in scope
308 |             δτi = (τPrime - τiPrime)/sqrt(1+τiPrime*τiPrime)
309 |                 * (1 + (1 - e2)*τi*τi) / ((1-e2)*sqrt(1+τi*τi));
/host/spi-builder-workspace/Sources/Geotum/Geotum.swift:308:42: error: cannot find 'sqrt' in scope
306 |             let σi = sinh(datum.eccentricity*atanh(datum.eccentricity*τi/sqrt(1+τi*τi)));
307 |             let τiPrime = τi * sqrt(1+σi*σi) - σi * sqrt(1+τi*τi);
308 |             δτi = (τPrime - τiPrime)/sqrt(1+τiPrime*τiPrime)
    |                                      `- error: cannot find 'sqrt' in scope
309 |                 * (1 + (1 - e2)*τi*τi) / ((1-e2)*sqrt(1+τi*τi));
310 |             τi += δτi;
/host/spi-builder-workspace/Sources/Geotum/Geotum.swift:309:52: error: cannot find 'sqrt' in scope
307 |             let τiPrime = τi * sqrt(1+σi*σi) - σi * sqrt(1+τi*τi);
308 |             δτi = (τPrime - τiPrime)/sqrt(1+τiPrime*τiPrime)
309 |                 * (1 + (1 - e2)*τi*τi) / ((1-e2)*sqrt(1+τi*τi));
    |                                                  `- error: cannot find 'sqrt' in scope
310 |             τi += δτi;
311 |         }
/host/spi-builder-workspace/Sources/Geotum/Geotum.swift:308:41: error: binary operator '/' cannot be applied to operands of type 'UTMDistance' and 'Double'
306 |             let σi = sinh(datum.eccentricity*atanh(datum.eccentricity*τi/sqrt(1+τi*τi)));
307 |             let τiPrime = τi * sqrt(1+σi*σi) - σi * sqrt(1+τi*τi);
308 |             δτi = (τPrime - τiPrime)/sqrt(1+τiPrime*τiPrime)
    |                                     |- error: binary operator '/' cannot be applied to operands of type 'UTMDistance' and 'Double'
    |                                     `- note: overloads for '/' exist with these partially matching parameter lists: (Double, Double), (Duration, Duration)
309 |                 * (1 + (1 - e2)*τi*τi) / ((1-e2)*sqrt(1+τi*τi));
310 |             τi += δτi;
/host/spi-builder-workspace/Sources/Geotum/Geotum.swift:313:18: error: cannot find 'atan' in scope
311 |         }
312 |         let τ = τi
313 |         let φ = atan(τ)
    |                 `- error: cannot find 'atan' in scope
314 |
315 |         let centralMeridian = Measurement<UnitAngle>(value: (Double(utm.zone) - 1.0) * 6 - 180.0 + 3.0, unit: .degrees).converted(to: .radians).value
/host/spi-builder-workspace/Sources/Geotum/Geotum.swift:315:31: error: cannot find 'Measurement' in scope
313 |         let φ = atan(τ)
314 |
315 |         let centralMeridian = Measurement<UnitAngle>(value: (Double(utm.zone) - 1.0) * 6 - 180.0 + 3.0, unit: .degrees).converted(to: .radians).value
    |                               `- error: cannot find 'Measurement' in scope
316 |         let λ = atan2(sinhηPrime, cosξPrime) + centralMeridian
317 |
/host/spi-builder-workspace/Sources/Geotum/Geotum.swift:315:43: error: cannot find type 'UnitAngle' in scope
313 |         let φ = atan(τ)
314 |
315 |         let centralMeridian = Measurement<UnitAngle>(value: (Double(utm.zone) - 1.0) * 6 - 180.0 + 3.0, unit: .degrees).converted(to: .radians).value
    |                                          |`- error: cannot find type 'UnitAngle' in scope
    |                                          |- note: while parsing this '<' as a type parameter bracket
    |                                          |- note: while parsing this '<' as a type parameter bracket
    |                                          `- note: while parsing this '<' as a type parameter bracket
316 |         let λ = atan2(sinhηPrime, cosξPrime) + centralMeridian
317 |
/host/spi-builder-workspace/Sources/Geotum/Geotum.swift:315:13: error: the compiler is unable to type-check this expression in reasonable time; try breaking up the expression into distinct sub-expressions
313 |         let φ = atan(τ)
314 |
315 |         let centralMeridian = Measurement<UnitAngle>(value: (Double(utm.zone) - 1.0) * 6 - 180.0 + 3.0, unit: .degrees).converted(to: .radians).value
    |             `- error: the compiler is unable to type-check this expression in reasonable time; try breaking up the expression into distinct sub-expressions
316 |         let λ = atan2(sinhηPrime, cosξPrime) + centralMeridian
317 |
/host/spi-builder-workspace/Sources/Geotum/Geotum.swift:316:18: error: cannot find 'atan2' in scope
314 |
315 |         let centralMeridian = Measurement<UnitAngle>(value: (Double(utm.zone) - 1.0) * 6 - 180.0 + 3.0, unit: .degrees).converted(to: .radians).value
316 |         let λ = atan2(sinhηPrime, cosξPrime) + centralMeridian
    |                 `- error: cannot find 'atan2' in scope
317 |
318 |         return LatLonCoordinate(latitude: Measurement<UnitAngle>(value: φ, unit: .radians), longitude: Measurement<UnitAngle>(value: λ, unit: .radians))
/host/spi-builder-workspace/Sources/Geotum/Geotum.swift:318:43: error: cannot find 'Measurement' in scope
316 |         let λ = atan2(sinhηPrime, cosξPrime) + centralMeridian
317 |
318 |         return LatLonCoordinate(latitude: Measurement<UnitAngle>(value: φ, unit: .radians), longitude: Measurement<UnitAngle>(value: λ, unit: .radians))
    |                                           `- error: cannot find 'Measurement' in scope
319 |     }
320 | }
/host/spi-builder-workspace/Sources/Geotum/Geotum.swift:318:105: error: cannot find 'Measurement' in scope
316 |         let λ = atan2(sinhηPrime, cosξPrime) + centralMeridian
317 |
318 |         return LatLonCoordinate(latitude: Measurement<UnitAngle>(value: φ, unit: .radians), longitude: Measurement<UnitAngle>(value: λ, unit: .radians))
    |                                                                                                        `- error: cannot find 'Measurement' in scope
319 |     }
320 | }
/host/spi-builder-workspace/Sources/Geotum/Geotum.swift:318:55: error: cannot find type 'UnitAngle' in scope
316 |         let λ = atan2(sinhηPrime, cosξPrime) + centralMeridian
317 |
318 |         return LatLonCoordinate(latitude: Measurement<UnitAngle>(value: φ, unit: .radians), longitude: Measurement<UnitAngle>(value: λ, unit: .radians))
    |                                                      |`- error: cannot find type 'UnitAngle' in scope
    |                                                      `- note: while parsing this '<' as a type parameter bracket
319 |     }
320 | }
/host/spi-builder-workspace/Sources/Geotum/Geotum.swift:318:117: error: cannot find type 'UnitAngle' in scope
316 |         let λ = atan2(sinhηPrime, cosξPrime) + centralMeridian
317 |
318 |         return LatLonCoordinate(latitude: Measurement<UnitAngle>(value: φ, unit: .radians), longitude: Measurement<UnitAngle>(value: λ, unit: .radians))
    |                                                                                                                   |`- error: cannot find type 'UnitAngle' in scope
    |                                                                                                                   `- note: while parsing this '<' as a type parameter bracket
319 |     }
320 | }
/host/spi-builder-workspace/Sources/Geotum/Geotum.swift:318:32: error: incorrect argument labels in call (have 'latitude:longitude:', expected 'latiudinalDegrees:longitudinalDegrees:')
316 |         let λ = atan2(sinhηPrime, cosξPrime) + centralMeridian
317 |
318 |         return LatLonCoordinate(latitude: Measurement<UnitAngle>(value: φ, unit: .radians), longitude: Measurement<UnitAngle>(value: λ, unit: .radians))
    |                                `- error: incorrect argument labels in call (have 'latitude:longitude:', expected 'latiudinalDegrees:longitudinalDegrees:')
319 |     }
320 | }
/host/spi-builder-workspace/Sources/Geotum/Geotum.swift:318:84: error: cannot infer contextual base in reference to member 'radians'
316 |         let λ = atan2(sinhηPrime, cosξPrime) + centralMeridian
317 |
318 |         return LatLonCoordinate(latitude: Measurement<UnitAngle>(value: φ, unit: .radians), longitude: Measurement<UnitAngle>(value: λ, unit: .radians))
    |                                                                                   `- error: cannot infer contextual base in reference to member 'radians'
319 |     }
320 | }
/host/spi-builder-workspace/Sources/Geotum/Geotum.swift:318:146: error: cannot infer contextual base in reference to member 'radians'
316 |         let λ = atan2(sinhηPrime, cosξPrime) + centralMeridian
317 |
318 |         return LatLonCoordinate(latitude: Measurement<UnitAngle>(value: φ, unit: .radians), longitude: Measurement<UnitAngle>(value: λ, unit: .radians))
    |                                                                                                                                                `- error: cannot infer contextual base in reference to member 'radians'
319 |     }
320 | }
BUILD FAILURE 6.1 linux