Build Information
Failed to build HueEntertainmentSwift, reference main (3124c6
), with Swift 6.0 for macOS (SPM) on 2 Nov 2024 15:42:27 UTC.
Build Command
env DEVELOPER_DIR=/Applications/Xcode-16.1.0.app xcrun swift build --arch arm64 -Xswiftc -Xfrontend -Xswiftc -stats-output-dir -Xswiftc -Xfrontend -Xswiftc .stats -Xswiftc -strict-concurrency=complete
Build Log
========================================
RunAll
========================================
Builder version: 4.56.0
Interrupt handler set up.
========================================
Checkout
========================================
Clone URL: https://github.com/nakajima/HueEntertainmentSwift.git
Reference: main
Initialized empty Git repository in /Users/admin/builder/spi-builder-workspace/.git/
From https://github.com/nakajima/HueEntertainmentSwift
* branch main -> FETCH_HEAD
* [new branch] main -> origin/main
HEAD is now at 3124c6f bump
Cloned https://github.com/nakajima/HueEntertainmentSwift.git
Revision (git rev-parse @):
3124c6f4724aad5b5006b3d72d1022457584e5df
SPI manifest file found: $PWD/.spi.yml
SUCCESS checkout https://github.com/nakajima/HueEntertainmentSwift.git at main
Fetching https://github.com/apple/swift-docc-plugin.git
[1/2038] Fetching swift-docc-plugin
Fetched https://github.com/apple/swift-docc-plugin.git from cache (1.26s)
Computing version for https://github.com/apple/swift-docc-plugin.git
Computed https://github.com/apple/swift-docc-plugin.git at 1.0.0 (0.68s)
Creating working copy for https://github.com/apple/swift-docc-plugin.git
Working copy of https://github.com/apple/swift-docc-plugin.git resolved at 1.0.0
========================================
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": "hueentertainmentswift",
"name": "HueEntertainmentSwift",
"url": "https://github.com/nakajima/HueEntertainmentSwift.git",
"version": "unspecified",
"path": "/Users/admin/builder/spi-builder-workspace/.resolve-product-dependencies/.build/checkouts/HueEntertainmentSwift",
"dependencies": [
]
}
]
}
Fetching https://github.com/nakajima/HueEntertainmentSwift.git
[1/525] Fetching hueentertainmentswift
Fetched https://github.com/nakajima/HueEntertainmentSwift.git from cache (0.79s)
Creating working copy for https://github.com/nakajima/HueEntertainmentSwift.git
Working copy of https://github.com/nakajima/HueEntertainmentSwift.git resolved at main (3124c6f)
warning: '.resolve-product-dependencies': dependency 'hueentertainmentswift' is not used by any target
Found 0 product dependencies
========================================
Build
========================================
Selected platform: macosSpm
Swift version: 6.0
Building package at path: $PWD
https://github.com/nakajima/HueEntertainmentSwift.git
Running build ...
env DEVELOPER_DIR=/Applications/Xcode-16.1.0.app xcrun swift build --arch arm64 -Xswiftc -Xfrontend -Xswiftc -stats-output-dir -Xswiftc -Xfrontend -Xswiftc .stats -Xswiftc -strict-concurrency=complete
[1/1] Compiling plugin Swift-DocC
[2/2] Compiling plugin Swift-DocC Preview
Building for debugging...
[2/4] Write sources
[3/4] Write swift-version--7754E27361AE5C74.txt
[5/16] Compiling HueEntertainmentSwift JSONTypes.swift
[6/17] Compiling HueEntertainmentSwift HueSession+Settings.swift
/Users/admin/builder/spi-builder-workspace/Sources/HueEntertainmentSwift/Extensions/HueSession+Settings.swift:17:13: warning: static property 'settings' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
15 | }
16 |
17 | static var settings = Settings()
| |- warning: static property 'settings' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'settings' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: annotate 'settings' with '@MainActor' if property should only be accessed from the main actor
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
18 | }
19 |
[7/17] Compiling HueEntertainmentSwift HueSession+HTTP.swift
/Users/admin/builder/spi-builder-workspace/Sources/HueEntertainmentSwift/Extensions/HueSession+HTTP.swift:53:31: error: 'data(for:delegate:)' is only available in macOS 12.0 or newer
9 |
10 | @available(iOS 14.0, *)
11 | extension HueSession {
| `- note: add @available attribute to enclosing extension
12 | struct DummyCodable: Codable {}
13 |
:
34 | }
35 |
36 | func makeRawRequest(method: String, path: String, configuration: ((inout URLRequest) async throws -> Void)? = nil) async throws -> (Data, URLResponse) {
| `- note: add @available attribute to enclosing instance method
37 | guard let ip = ip else {
38 | throw HueError.requestError("NO IP")
:
51 | }
52 |
53 | return try await urlsession.data(for: request)
| |- error: 'data(for:delegate:)' is only available in macOS 12.0 or newer
| `- note: add 'if #available' version check
54 | }
55 |
[8/17] Compiling HueEntertainmentSwift XYBrightness.swift
/Users/admin/builder/spi-builder-workspace/Sources/HueEntertainmentSwift/XYBrightness.swift:80:23: error: cannot find type 'UIColor' in scope
78 |
79 | @available(iOS 14, *)
80 | public init(uiColor: UIColor, forcedBrightness: Double? = nil) {
| `- error: cannot find type 'UIColor' in scope
81 | self.gamut = GamutC
82 |
/Users/admin/builder/spi-builder-workspace/Sources/HueEntertainmentSwift/XYBrightness.swift:97:21: error: 'Color' is only available in macOS 10.15 or newer
15 | /// Handles coversions from Swift ``UIColor`` and ``SwiftUI.Color`` to the XY system used by Hue.
16 | @available(iOS 13.0, *)
17 | public struct XYBrightness {
| `- note: add @available attribute to enclosing struct
18 | /// Determines what set of colors are available, depending on what devices you have
19 | public struct Gamut {
:
95 |
96 | @available(iOS 14.0, *)
97 | public init(color: Color, forcedBrightness: Double? = nil) {
| | `- error: 'Color' is only available in macOS 10.15 or newer
| `- note: add @available attribute to enclosing initializer
98 | self.init(uiColor: UIColor(color), forcedBrightness: forcedBrightness)
99 | }
/Users/admin/builder/spi-builder-workspace/Sources/HueEntertainmentSwift/XYBrightness.swift:98:22: error: cannot find 'UIColor' in scope
96 | @available(iOS 14.0, *)
97 | public init(color: Color, forcedBrightness: Double? = nil) {
98 | self.init(uiColor: UIColor(color), forcedBrightness: forcedBrightness)
| `- error: cannot find 'UIColor' in scope
99 | }
100 |
/Users/admin/builder/spi-builder-workspace/Sources/HueEntertainmentSwift/XYBrightness.swift:98:12: error: incorrect argument label in call (have 'uiColor:forcedBrightness:', expected 'color:forcedBrightness:')
96 | @available(iOS 14.0, *)
97 | public init(color: Color, forcedBrightness: Double? = nil) {
98 | self.init(uiColor: UIColor(color), forcedBrightness: forcedBrightness)
| `- error: incorrect argument label in call (have 'uiColor:forcedBrightness:', expected 'color:forcedBrightness:')
99 | }
100 |
[9/17] Compiling HueEntertainmentSwift String.swift
[10/17] Compiling HueEntertainmentSwift Message.swift
/Users/admin/builder/spi-builder-workspace/Sources/HueEntertainmentSwift/Message.swift:15:29: error: 'Color' is only available in macOS 10.15 or newer
11 | /// A UDP message used by the hue entertainment API (v2).
12 | @available(iOS 14.0, *)
13 | public struct Message {
| `- note: add @available attribute to enclosing struct
14 | var area: HueEntertainmentArea
15 | var channelColors: [UInt8: Color]
| `- error: 'Color' is only available in macOS 10.15 or newer
16 | var forcedBrightness: Double?
17 |
/Users/admin/builder/spi-builder-workspace/Sources/HueEntertainmentSwift/Message.swift:26:59: error: 'Color' is only available in macOS 10.15 or newer
11 | /// A UDP message used by the hue entertainment API (v2).
12 | @available(iOS 14.0, *)
13 | public struct Message {
| `- note: add @available attribute to enclosing struct
14 | var area: HueEntertainmentArea
15 | var channelColors: [UInt8: Color]
:
24 | }
25 |
26 | init(area: HueEntertainmentArea, channelColors: [UInt8 : Color], forcedBrightness: Double? = nil) {
| | `- error: 'Color' is only available in macOS 10.15 or newer
| `- note: add @available attribute to enclosing initializer
27 | self.area = area
28 | self.channelColors = channelColors
/Users/admin/builder/spi-builder-workspace/Sources/HueEntertainmentSwift/XYBrightness.swift:80:23: error: cannot find type 'UIColor' in scope
78 |
79 | @available(iOS 14, *)
80 | public init(uiColor: UIColor, forcedBrightness: Double? = nil) {
| `- error: cannot find type 'UIColor' in scope
81 | self.gamut = GamutC
82 |
[11/17] Compiling HueEntertainmentSwift HueSession.swift
/Users/admin/builder/spi-builder-workspace/Sources/HueEntertainmentSwift/HueSession.swift:45:25: error: 'NWConnection' is only available in macOS 10.14 or newer
13 | */
14 | @available(iOS 14.0, *)
15 | public class HueSession: NSObject, URLSessionDelegate {
| `- note: add @available attribute to enclosing class
16 | /**
17 | The local network IP of your bridge. Can be set by calling ``findIP()``.
:
43 |
44 | /// The connection used to send UDP messages to the bridge.
45 | public var connection: NWConnection?
| `- error: 'NWConnection' is only available in macOS 10.14 or newer
46 |
47 | /// The entertainment area (configured in the Hue app) to be controlled
/Users/admin/builder/spi-builder-workspace/Sources/HueEntertainmentSwift/HueSession.swift:15:14: warning: non-final class 'HueSession' cannot conform to 'Sendable'; use '@unchecked Sendable'; this is an error in the Swift 6 language mode
13 | */
14 | @available(iOS 14.0, *)
15 | public class HueSession: NSObject, URLSessionDelegate {
| `- warning: non-final class 'HueSession' cannot conform to 'Sendable'; use '@unchecked Sendable'; this is an error in the Swift 6 language mode
16 | /**
17 | The local network IP of your bridge. Can be set by calling ``findIP()``.
/Users/admin/builder/spi-builder-workspace/Sources/HueEntertainmentSwift/HueSession.swift:21:13: warning: stored property 'ip' of 'Sendable'-conforming class 'HueSession' is mutable; this is an error in the Swift 6 language mode
19 | > Tip: It's best to save this value instead of needing to look it up each time.
20 | */
21 | public var ip: String?
| `- warning: stored property 'ip' of 'Sendable'-conforming class 'HueSession' is mutable; this is an error in the Swift 6 language mode
22 |
23 | /**
error: emit-module command failed with exit code 1 (use -v to see invocation)
[12/17] Emitting module HueEntertainmentSwift
/Users/admin/builder/spi-builder-workspace/Sources/HueEntertainmentSwift/AreaUpdate.swift:13:29: error: 'Color' is only available in macOS 10.15 or newer
10 |
11 | @available(iOS 14.0, *)
12 | struct AreaUpdate {
| `- note: add @available attribute to enclosing struct
13 | var channelColors: [UInt8: Color]
| `- error: 'Color' is only available in macOS 10.15 or newer
14 | var animation: Animation
15 |
/Users/admin/builder/spi-builder-workspace/Sources/HueEntertainmentSwift/Extensions/HueSession+Control.swift:21:19: error: 'Color' is only available in macOS 10.15 or newer
11 |
12 | @available(iOS 14.0, *)
13 | public extension HueSession {
| `- note: add @available attribute to enclosing extension
14 | /**
15 | Turns on lights.
:
19 | */
20 |
21 | func on(colors: [Color], ramp: Double = 0) {
| | `- error: 'Color' is only available in macOS 10.15 or newer
| `- note: add @available attribute to enclosing instance method
22 | guard let area = area, let channels = area.channels else {
23 | return
/Users/admin/builder/spi-builder-workspace/Sources/HueEntertainmentSwift/Extensions/HueSession+Settings.swift:17:13: warning: static property 'settings' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
15 | }
16 |
17 | static var settings = Settings()
| |- warning: static property 'settings' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'settings' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: annotate 'settings' with '@MainActor' if property should only be accessed from the main actor
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
18 | }
19 |
/Users/admin/builder/spi-builder-workspace/Sources/HueEntertainmentSwift/HueSession.swift:45:25: error: 'NWConnection' is only available in macOS 10.14 or newer
13 | */
14 | @available(iOS 14.0, *)
15 | public class HueSession: NSObject, URLSessionDelegate {
| `- note: add @available attribute to enclosing class
16 | /**
17 | The local network IP of your bridge. Can be set by calling ``findIP()``.
:
43 |
44 | /// The connection used to send UDP messages to the bridge.
45 | public var connection: NWConnection?
| `- error: 'NWConnection' is only available in macOS 10.14 or newer
46 |
47 | /// The entertainment area (configured in the Hue app) to be controlled
/Users/admin/builder/spi-builder-workspace/Sources/HueEntertainmentSwift/HueSession.swift:15:14: warning: non-final class 'HueSession' cannot conform to 'Sendable'; use '@unchecked Sendable'; this is an error in the Swift 6 language mode
13 | */
14 | @available(iOS 14.0, *)
15 | public class HueSession: NSObject, URLSessionDelegate {
| `- warning: non-final class 'HueSession' cannot conform to 'Sendable'; use '@unchecked Sendable'; this is an error in the Swift 6 language mode
16 | /**
17 | The local network IP of your bridge. Can be set by calling ``findIP()``.
/Users/admin/builder/spi-builder-workspace/Sources/HueEntertainmentSwift/HueSession.swift:21:13: warning: stored property 'ip' of 'Sendable'-conforming class 'HueSession' is mutable; this is an error in the Swift 6 language mode
19 | > Tip: It's best to save this value instead of needing to look it up each time.
20 | */
21 | public var ip: String?
| `- warning: stored property 'ip' of 'Sendable'-conforming class 'HueSession' is mutable; this is an error in the Swift 6 language mode
22 |
23 | /**
/Users/admin/builder/spi-builder-workspace/Sources/HueEntertainmentSwift/Message.swift:15:29: error: 'Color' is only available in macOS 10.15 or newer
11 | /// A UDP message used by the hue entertainment API (v2).
12 | @available(iOS 14.0, *)
13 | public struct Message {
| `- note: add @available attribute to enclosing struct
14 | var area: HueEntertainmentArea
15 | var channelColors: [UInt8: Color]
| `- error: 'Color' is only available in macOS 10.15 or newer
16 | var forcedBrightness: Double?
17 |
/Users/admin/builder/spi-builder-workspace/Sources/HueEntertainmentSwift/Message.swift:26:59: error: 'Color' is only available in macOS 10.15 or newer
11 | /// A UDP message used by the hue entertainment API (v2).
12 | @available(iOS 14.0, *)
13 | public struct Message {
| `- note: add @available attribute to enclosing struct
14 | var area: HueEntertainmentArea
15 | var channelColors: [UInt8: Color]
:
24 | }
25 |
26 | init(area: HueEntertainmentArea, channelColors: [UInt8 : Color], forcedBrightness: Double? = nil) {
| | `- error: 'Color' is only available in macOS 10.15 or newer
| `- note: add @available attribute to enclosing initializer
27 | self.area = area
28 | self.channelColors = channelColors
/Users/admin/builder/spi-builder-workspace/Sources/HueEntertainmentSwift/XYBrightness.swift:80:23: error: cannot find type 'UIColor' in scope
78 |
79 | @available(iOS 14, *)
80 | public init(uiColor: UIColor, forcedBrightness: Double? = nil) {
| `- error: cannot find type 'UIColor' in scope
81 | self.gamut = GamutC
82 |
/Users/admin/builder/spi-builder-workspace/Sources/HueEntertainmentSwift/XYBrightness.swift:97:21: error: 'Color' is only available in macOS 10.15 or newer
15 | /// Handles coversions from Swift ``UIColor`` and ``SwiftUI.Color`` to the XY system used by Hue.
16 | @available(iOS 13.0, *)
17 | public struct XYBrightness {
| `- note: add @available attribute to enclosing struct
18 | /// Determines what set of colors are available, depending on what devices you have
19 | public struct Gamut {
:
95 |
96 | @available(iOS 14.0, *)
97 | public init(color: Color, forcedBrightness: Double? = nil) {
| | `- error: 'Color' is only available in macOS 10.15 or newer
| `- note: add @available attribute to enclosing initializer
98 | self.init(uiColor: UIColor(color), forcedBrightness: forcedBrightness)
99 | }
[13/17] Compiling HueEntertainmentSwift HueSession+Animation.swift
/Users/admin/builder/spi-builder-workspace/Sources/HueEntertainmentSwift/Extensions/HueSession+Auth.swift:24:36: error: 'IPv4Address' is only available in macOS 10.14 or newer
17 |
18 | @available(iOS 14.0, *)
19 | public extension HueSession {
| `- note: add @available attribute to enclosing extension
20 | /**
21 | Establishes a ``connection`` to the bridge and allows you to stream to it.
22 | */
23 | func connect() throws {
| `- note: add @available attribute to enclosing instance method
24 | guard var ip = ip, var address = IPv4Address(ip), var clientKey = self.clientKey, var appID = self.appID, var username = self.username else {
| |- error: 'IPv4Address' is only available in macOS 10.14 or newer
| `- note: add 'if #available' version check
25 | throw HueError.connectionError("Could not connect")
26 | }
/Users/admin/builder/spi-builder-workspace/Sources/HueEntertainmentSwift/Extensions/HueSession+Auth.swift:28:17: error: 'NWProtocolTLS' is only available in macOS 10.14 or newer
17 |
18 | @available(iOS 14.0, *)
19 | public extension HueSession {
| `- note: add @available attribute to enclosing extension
20 | /**
21 | Establishes a ``connection`` to the bridge and allows you to stream to it.
22 | */
23 | func connect() throws {
| `- note: add @available attribute to enclosing instance method
24 | guard var ip = ip, var address = IPv4Address(ip), var clientKey = self.clientKey, var appID = self.appID, var username = self.username else {
25 | throw HueError.connectionError("Could not connect")
26 | }
27 |
28 | let options = NWProtocolTLS.Options()
| |- error: 'NWProtocolTLS' is only available in macOS 10.14 or newer
| `- note: add 'if #available' version check
29 |
30 | let clientKeyBytes = clientKey.hexToBytes
/Users/admin/builder/spi-builder-workspace/Sources/HueEntertainmentSwift/Extensions/HueSession+Auth.swift:34:3: error: 'sec_protocol_options_append_tls_ciphersuite' is only available in macOS 10.15 or newer
17 |
18 | @available(iOS 14.0, *)
19 | public extension HueSession {
| `- note: add @available attribute to enclosing extension
20 | /**
21 | Establishes a ``connection`` to the bridge and allows you to stream to it.
22 | */
23 | func connect() throws {
| `- note: add @available attribute to enclosing instance method
24 | guard var ip = ip, var address = IPv4Address(ip), var clientKey = self.clientKey, var appID = self.appID, var username = self.username else {
25 | throw HueError.connectionError("Could not connect")
:
32 | let pskIdentity = appID.data(using: .utf8)!.withUnsafeBytes { DispatchData(bytes: $0) } as __DispatchData
33 |
34 | sec_protocol_options_append_tls_ciphersuite(options.securityProtocolOptions, tls_ciphersuite_t(rawValue: TLS_PSK_WITH_AES_128_GCM_SHA256)!)
| |- error: 'sec_protocol_options_append_tls_ciphersuite' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
35 | sec_protocol_options_add_pre_shared_key(options.securityProtocolOptions, psk, pskIdentity)
36 | sec_protocol_options_set_min_tls_protocol_version(options.securityProtocolOptions, .DTLSv12)
/Users/admin/builder/spi-builder-workspace/Sources/HueEntertainmentSwift/Extensions/HueSession+Auth.swift:35:3: error: 'sec_protocol_options_add_pre_shared_key' is only available in macOS 10.14 or newer
17 |
18 | @available(iOS 14.0, *)
19 | public extension HueSession {
| `- note: add @available attribute to enclosing extension
20 | /**
21 | Establishes a ``connection`` to the bridge and allows you to stream to it.
22 | */
23 | func connect() throws {
| `- note: add @available attribute to enclosing instance method
24 | guard var ip = ip, var address = IPv4Address(ip), var clientKey = self.clientKey, var appID = self.appID, var username = self.username else {
25 | throw HueError.connectionError("Could not connect")
:
33 |
34 | sec_protocol_options_append_tls_ciphersuite(options.securityProtocolOptions, tls_ciphersuite_t(rawValue: TLS_PSK_WITH_AES_128_GCM_SHA256)!)
35 | sec_protocol_options_add_pre_shared_key(options.securityProtocolOptions, psk, pskIdentity)
| |- error: 'sec_protocol_options_add_pre_shared_key' is only available in macOS 10.14 or newer
| `- note: add 'if #available' version check
36 | sec_protocol_options_set_min_tls_protocol_version(options.securityProtocolOptions, .DTLSv12)
37 | sec_protocol_options_set_max_tls_protocol_version(options.securityProtocolOptions, .DTLSv12)
/Users/admin/builder/spi-builder-workspace/Sources/HueEntertainmentSwift/Extensions/HueSession+Auth.swift:36:3: error: 'sec_protocol_options_set_min_tls_protocol_version' is only available in macOS 10.15 or newer
17 |
18 | @available(iOS 14.0, *)
19 | public extension HueSession {
| `- note: add @available attribute to enclosing extension
20 | /**
21 | Establishes a ``connection`` to the bridge and allows you to stream to it.
22 | */
23 | func connect() throws {
| `- note: add @available attribute to enclosing instance method
24 | guard var ip = ip, var address = IPv4Address(ip), var clientKey = self.clientKey, var appID = self.appID, var username = self.username else {
25 | throw HueError.connectionError("Could not connect")
:
34 | sec_protocol_options_append_tls_ciphersuite(options.securityProtocolOptions, tls_ciphersuite_t(rawValue: TLS_PSK_WITH_AES_128_GCM_SHA256)!)
35 | sec_protocol_options_add_pre_shared_key(options.securityProtocolOptions, psk, pskIdentity)
36 | sec_protocol_options_set_min_tls_protocol_version(options.securityProtocolOptions, .DTLSv12)
| |- error: 'sec_protocol_options_set_min_tls_protocol_version' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
37 | sec_protocol_options_set_max_tls_protocol_version(options.securityProtocolOptions, .DTLSv12)
38 | sec_protocol_options_set_verify_block(options.securityProtocolOptions, { (_: sec_protocol_metadata_t, _: sec_trust_t, complete: @escaping sec_protocol_verify_complete_t) in
/Users/admin/builder/spi-builder-workspace/Sources/HueEntertainmentSwift/Extensions/HueSession+Auth.swift:37:3: error: 'sec_protocol_options_set_max_tls_protocol_version' is only available in macOS 10.15 or newer
17 |
18 | @available(iOS 14.0, *)
19 | public extension HueSession {
| `- note: add @available attribute to enclosing extension
20 | /**
21 | Establishes a ``connection`` to the bridge and allows you to stream to it.
22 | */
23 | func connect() throws {
| `- note: add @available attribute to enclosing instance method
24 | guard var ip = ip, var address = IPv4Address(ip), var clientKey = self.clientKey, var appID = self.appID, var username = self.username else {
25 | throw HueError.connectionError("Could not connect")
:
35 | sec_protocol_options_add_pre_shared_key(options.securityProtocolOptions, psk, pskIdentity)
36 | sec_protocol_options_set_min_tls_protocol_version(options.securityProtocolOptions, .DTLSv12)
37 | sec_protocol_options_set_max_tls_protocol_version(options.securityProtocolOptions, .DTLSv12)
| |- error: 'sec_protocol_options_set_max_tls_protocol_version' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
38 | sec_protocol_options_set_verify_block(options.securityProtocolOptions, { (_: sec_protocol_metadata_t, _: sec_trust_t, complete: @escaping sec_protocol_verify_complete_t) in
39 | complete(true)
/Users/admin/builder/spi-builder-workspace/Sources/HueEntertainmentSwift/Extensions/HueSession+Auth.swift:38:3: error: 'sec_protocol_options_set_verify_block' is only available in macOS 10.14 or newer
17 |
18 | @available(iOS 14.0, *)
19 | public extension HueSession {
| `- note: add @available attribute to enclosing extension
20 | /**
21 | Establishes a ``connection`` to the bridge and allows you to stream to it.
22 | */
23 | func connect() throws {
| `- note: add @available attribute to enclosing instance method
24 | guard var ip = ip, var address = IPv4Address(ip), var clientKey = self.clientKey, var appID = self.appID, var username = self.username else {
25 | throw HueError.connectionError("Could not connect")
:
36 | sec_protocol_options_set_min_tls_protocol_version(options.securityProtocolOptions, .DTLSv12)
37 | sec_protocol_options_set_max_tls_protocol_version(options.securityProtocolOptions, .DTLSv12)
38 | sec_protocol_options_set_verify_block(options.securityProtocolOptions, { (_: sec_protocol_metadata_t, _: sec_trust_t, complete: @escaping sec_protocol_verify_complete_t) in
| |- error: 'sec_protocol_options_set_verify_block' is only available in macOS 10.14 or newer
| `- note: add 'if #available' version check
39 | complete(true)
40 | }, queue)
/Users/admin/builder/spi-builder-workspace/Sources/HueEntertainmentSwift/Extensions/HueSession+Auth.swift:42:20: error: 'NWConnection' is only available in macOS 10.14 or newer
17 |
18 | @available(iOS 14.0, *)
19 | public extension HueSession {
| `- note: add @available attribute to enclosing extension
20 | /**
21 | Establishes a ``connection`` to the bridge and allows you to stream to it.
22 | */
23 | func connect() throws {
| `- note: add @available attribute to enclosing instance method
24 | guard var ip = ip, var address = IPv4Address(ip), var clientKey = self.clientKey, var appID = self.appID, var username = self.username else {
25 | throw HueError.connectionError("Could not connect")
:
40 | }, queue)
41 |
42 | let connection = NWConnection(host: NWEndpoint.Host.ipv4(address), port: 2100, using: .init(dtls: options))
| |- error: 'NWConnection' is only available in macOS 10.14 or newer
| `- note: add 'if #available' version check
43 |
44 | connection.stateUpdateHandler = { [weak self] state in
/Users/admin/builder/spi-builder-workspace/Sources/HueEntertainmentSwift/Extensions/HueSession+Auth.swift:42:39: error: 'NWEndpoint' is only available in macOS 10.14 or newer
17 |
18 | @available(iOS 14.0, *)
19 | public extension HueSession {
| `- note: add @available attribute to enclosing extension
20 | /**
21 | Establishes a ``connection`` to the bridge and allows you to stream to it.
22 | */
23 | func connect() throws {
| `- note: add @available attribute to enclosing instance method
24 | guard var ip = ip, var address = IPv4Address(ip), var clientKey = self.clientKey, var appID = self.appID, var username = self.username else {
25 | throw HueError.connectionError("Could not connect")
:
40 | }, queue)
41 |
42 | let connection = NWConnection(host: NWEndpoint.Host.ipv4(address), port: 2100, using: .init(dtls: options))
| |- error: 'NWEndpoint' is only available in macOS 10.14 or newer
| `- note: add 'if #available' version check
43 |
44 | connection.stateUpdateHandler = { [weak self] state in
/Users/admin/builder/spi-builder-workspace/Sources/HueEntertainmentSwift/Extensions/HueSession+Auth.swift:49:4: warning: switch must be exhaustive; this is an error in the Swift 6 language mode
47 | }
48 |
49 | switch state {
| |- warning: switch must be exhaustive; this is an error in the Swift 6 language mode
| |- note: add missing case: '.setup'
| |- note: add missing case: '.waiting(_)'
| `- note: add missing case: '.preparing'
50 | case .ready:
51 | self.connection = connection
/Users/admin/builder/spi-builder-workspace/Sources/HueEntertainmentSwift/Extensions/HueSession+Auth.swift:24:13: warning: variable 'ip' was never mutated; consider changing to 'let' constant
22 | */
23 | func connect() throws {
24 | guard var ip = ip, var address = IPv4Address(ip), var clientKey = self.clientKey, var appID = self.appID, var username = self.username else {
| `- warning: variable 'ip' was never mutated; consider changing to 'let' constant
25 | throw HueError.connectionError("Could not connect")
26 | }
/Users/admin/builder/spi-builder-workspace/Sources/HueEntertainmentSwift/Extensions/HueSession+Auth.swift:24:26: warning: variable 'address' was never mutated; consider changing to 'let' constant
22 | */
23 | func connect() throws {
24 | guard var ip = ip, var address = IPv4Address(ip), var clientKey = self.clientKey, var appID = self.appID, var username = self.username else {
| `- warning: variable 'address' was never mutated; consider changing to 'let' constant
25 | throw HueError.connectionError("Could not connect")
26 | }
/Users/admin/builder/spi-builder-workspace/Sources/HueEntertainmentSwift/Extensions/HueSession+Auth.swift:24:57: warning: variable 'clientKey' was never mutated; consider changing to 'let' constant
22 | */
23 | func connect() throws {
24 | guard var ip = ip, var address = IPv4Address(ip), var clientKey = self.clientKey, var appID = self.appID, var username = self.username else {
| `- warning: variable 'clientKey' was never mutated; consider changing to 'let' constant
25 | throw HueError.connectionError("Could not connect")
26 | }
/Users/admin/builder/spi-builder-workspace/Sources/HueEntertainmentSwift/Extensions/HueSession+Auth.swift:24:89: warning: variable 'appID' was never mutated; consider changing to 'let' constant
22 | */
23 | func connect() throws {
24 | guard var ip = ip, var address = IPv4Address(ip), var clientKey = self.clientKey, var appID = self.appID, var username = self.username else {
| `- warning: variable 'appID' was never mutated; consider changing to 'let' constant
25 | throw HueError.connectionError("Could not connect")
26 | }
/Users/admin/builder/spi-builder-workspace/Sources/HueEntertainmentSwift/Extensions/HueSession+Auth.swift:24:113: warning: variable 'username' was never used; consider replacing with '_' or removing it
22 | */
23 | func connect() throws {
24 | guard var ip = ip, var address = IPv4Address(ip), var clientKey = self.clientKey, var appID = self.appID, var username = self.username else {
| `- warning: variable 'username' was never used; consider replacing with '_' or removing it
25 | throw HueError.connectionError("Could not connect")
26 | }
/Users/admin/builder/spi-builder-workspace/Sources/HueEntertainmentSwift/Extensions/HueSession+Auth.swift:54:21: warning: immutable value 'err' was never used; consider replacing with '_' or removing it
52 | case .cancelled:
53 | self.connection = nil
54 | case let .failed(err): connection.cancel()
| `- warning: immutable value 'err' was never used; consider replacing with '_' or removing it
55 | @unknown default:
56 | print("??")
/Users/admin/builder/spi-builder-workspace/Sources/HueEntertainmentSwift/Extensions/HueSession+Auth.swift:69:40: error: 'data(from:delegate:)' is only available in macOS 12.0 or newer
17 |
18 | @available(iOS 14.0, *)
19 | public extension HueSession {
| `- note: add @available attribute to enclosing extension
20 | /**
21 | Establishes a ``connection`` to the bridge and allows you to stream to it.
:
65 | of calling this repeatedly, as you can run into rate-limiting issues.
66 | */
67 | func findIP() async throws {
| `- note: add @available attribute to enclosing instance method
68 | let url = URL(string: "https://discovery.meethue.com")!
69 | let (data, _) = try await urlsession.data(from: url)
| |- error: 'data(from:delegate:)' is only available in macOS 12.0 or newer
| `- note: add 'if #available' version check
70 | let bridgeResponse = try JSONDecoder().decode([HueBridgeResponse].self, from: data)
71 |
/Users/admin/builder/spi-builder-workspace/Sources/HueEntertainmentSwift/Extensions/HueSession+Auth.swift:89:41: error: 'data(from:delegate:)' is only available in macOS 12.0 or newer
17 |
18 | @available(iOS 14.0, *)
19 | public extension HueSession {
| `- note: add @available attribute to enclosing extension
20 | /**
21 | Establishes a ``connection`` to the bridge and allows you to stream to it.
:
80 | Helper to see if bridge is accessible.
81 | */
82 | func check() async throws -> Bool {
| `- note: add @available attribute to enclosing instance method
83 | guard let ip = ip else {
84 | return false
:
87 | let url = URL(string: "https://\(ip)/api/0/config")!
88 | do {
89 | let (data, _) = try await urlsession.data(from: url)
| |- error: 'data(from:delegate:)' is only available in macOS 12.0 or newer
| `- note: add 'if #available' version check
90 | _ = try JSONDecoder().decode(HueBridgeCheck.self, from: data)
91 | } catch {
/Users/admin/builder/spi-builder-workspace/Sources/HueEntertainmentSwift/Extensions/HueSession+Auth.swift:131:15: error: 'value(forHTTPHeaderField:)' is only available in macOS 10.15 or newer
17 |
18 | @available(iOS 14.0, *)
19 | public extension HueSession {
| `- note: add @available attribute to enclosing extension
20 | /**
21 | Establishes a ``connection`` to the bridge and allows you to stream to it.
:
102 | > Important: This method requires the user to press the link button on their Hue bridge. If the link button has not been pressed, a ``linkButtonNotPressedError`` error will be thrown.
103 | */
104 | func login(device: String) async throws {
| `- note: add @available attribute to enclosing instance method
105 | let bridgeResponse: [BridgeKeyResponse]? = try await post("api", data: BridgeKeyRequest(devicetype: device, generateclientkey: true))
106 |
:
129 |
130 | let res = response as! HTTPURLResponse
131 | appID = res.value(forHTTPHeaderField: "hue-application-id")
| |- error: 'value(forHTTPHeaderField:)' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
132 | }
133 | }
[14/17] Compiling HueEntertainmentSwift HueSession+Auth.swift
/Users/admin/builder/spi-builder-workspace/Sources/HueEntertainmentSwift/Extensions/HueSession+Auth.swift:24:36: error: 'IPv4Address' is only available in macOS 10.14 or newer
17 |
18 | @available(iOS 14.0, *)
19 | public extension HueSession {
| `- note: add @available attribute to enclosing extension
20 | /**
21 | Establishes a ``connection`` to the bridge and allows you to stream to it.
22 | */
23 | func connect() throws {
| `- note: add @available attribute to enclosing instance method
24 | guard var ip = ip, var address = IPv4Address(ip), var clientKey = self.clientKey, var appID = self.appID, var username = self.username else {
| |- error: 'IPv4Address' is only available in macOS 10.14 or newer
| `- note: add 'if #available' version check
25 | throw HueError.connectionError("Could not connect")
26 | }
/Users/admin/builder/spi-builder-workspace/Sources/HueEntertainmentSwift/Extensions/HueSession+Auth.swift:28:17: error: 'NWProtocolTLS' is only available in macOS 10.14 or newer
17 |
18 | @available(iOS 14.0, *)
19 | public extension HueSession {
| `- note: add @available attribute to enclosing extension
20 | /**
21 | Establishes a ``connection`` to the bridge and allows you to stream to it.
22 | */
23 | func connect() throws {
| `- note: add @available attribute to enclosing instance method
24 | guard var ip = ip, var address = IPv4Address(ip), var clientKey = self.clientKey, var appID = self.appID, var username = self.username else {
25 | throw HueError.connectionError("Could not connect")
26 | }
27 |
28 | let options = NWProtocolTLS.Options()
| |- error: 'NWProtocolTLS' is only available in macOS 10.14 or newer
| `- note: add 'if #available' version check
29 |
30 | let clientKeyBytes = clientKey.hexToBytes
/Users/admin/builder/spi-builder-workspace/Sources/HueEntertainmentSwift/Extensions/HueSession+Auth.swift:34:3: error: 'sec_protocol_options_append_tls_ciphersuite' is only available in macOS 10.15 or newer
17 |
18 | @available(iOS 14.0, *)
19 | public extension HueSession {
| `- note: add @available attribute to enclosing extension
20 | /**
21 | Establishes a ``connection`` to the bridge and allows you to stream to it.
22 | */
23 | func connect() throws {
| `- note: add @available attribute to enclosing instance method
24 | guard var ip = ip, var address = IPv4Address(ip), var clientKey = self.clientKey, var appID = self.appID, var username = self.username else {
25 | throw HueError.connectionError("Could not connect")
:
32 | let pskIdentity = appID.data(using: .utf8)!.withUnsafeBytes { DispatchData(bytes: $0) } as __DispatchData
33 |
34 | sec_protocol_options_append_tls_ciphersuite(options.securityProtocolOptions, tls_ciphersuite_t(rawValue: TLS_PSK_WITH_AES_128_GCM_SHA256)!)
| |- error: 'sec_protocol_options_append_tls_ciphersuite' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
35 | sec_protocol_options_add_pre_shared_key(options.securityProtocolOptions, psk, pskIdentity)
36 | sec_protocol_options_set_min_tls_protocol_version(options.securityProtocolOptions, .DTLSv12)
/Users/admin/builder/spi-builder-workspace/Sources/HueEntertainmentSwift/Extensions/HueSession+Auth.swift:35:3: error: 'sec_protocol_options_add_pre_shared_key' is only available in macOS 10.14 or newer
17 |
18 | @available(iOS 14.0, *)
19 | public extension HueSession {
| `- note: add @available attribute to enclosing extension
20 | /**
21 | Establishes a ``connection`` to the bridge and allows you to stream to it.
22 | */
23 | func connect() throws {
| `- note: add @available attribute to enclosing instance method
24 | guard var ip = ip, var address = IPv4Address(ip), var clientKey = self.clientKey, var appID = self.appID, var username = self.username else {
25 | throw HueError.connectionError("Could not connect")
:
33 |
34 | sec_protocol_options_append_tls_ciphersuite(options.securityProtocolOptions, tls_ciphersuite_t(rawValue: TLS_PSK_WITH_AES_128_GCM_SHA256)!)
35 | sec_protocol_options_add_pre_shared_key(options.securityProtocolOptions, psk, pskIdentity)
| |- error: 'sec_protocol_options_add_pre_shared_key' is only available in macOS 10.14 or newer
| `- note: add 'if #available' version check
36 | sec_protocol_options_set_min_tls_protocol_version(options.securityProtocolOptions, .DTLSv12)
37 | sec_protocol_options_set_max_tls_protocol_version(options.securityProtocolOptions, .DTLSv12)
/Users/admin/builder/spi-builder-workspace/Sources/HueEntertainmentSwift/Extensions/HueSession+Auth.swift:36:3: error: 'sec_protocol_options_set_min_tls_protocol_version' is only available in macOS 10.15 or newer
17 |
18 | @available(iOS 14.0, *)
19 | public extension HueSession {
| `- note: add @available attribute to enclosing extension
20 | /**
21 | Establishes a ``connection`` to the bridge and allows you to stream to it.
22 | */
23 | func connect() throws {
| `- note: add @available attribute to enclosing instance method
24 | guard var ip = ip, var address = IPv4Address(ip), var clientKey = self.clientKey, var appID = self.appID, var username = self.username else {
25 | throw HueError.connectionError("Could not connect")
:
34 | sec_protocol_options_append_tls_ciphersuite(options.securityProtocolOptions, tls_ciphersuite_t(rawValue: TLS_PSK_WITH_AES_128_GCM_SHA256)!)
35 | sec_protocol_options_add_pre_shared_key(options.securityProtocolOptions, psk, pskIdentity)
36 | sec_protocol_options_set_min_tls_protocol_version(options.securityProtocolOptions, .DTLSv12)
| |- error: 'sec_protocol_options_set_min_tls_protocol_version' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
37 | sec_protocol_options_set_max_tls_protocol_version(options.securityProtocolOptions, .DTLSv12)
38 | sec_protocol_options_set_verify_block(options.securityProtocolOptions, { (_: sec_protocol_metadata_t, _: sec_trust_t, complete: @escaping sec_protocol_verify_complete_t) in
/Users/admin/builder/spi-builder-workspace/Sources/HueEntertainmentSwift/Extensions/HueSession+Auth.swift:37:3: error: 'sec_protocol_options_set_max_tls_protocol_version' is only available in macOS 10.15 or newer
17 |
18 | @available(iOS 14.0, *)
19 | public extension HueSession {
| `- note: add @available attribute to enclosing extension
20 | /**
21 | Establishes a ``connection`` to the bridge and allows you to stream to it.
22 | */
23 | func connect() throws {
| `- note: add @available attribute to enclosing instance method
24 | guard var ip = ip, var address = IPv4Address(ip), var clientKey = self.clientKey, var appID = self.appID, var username = self.username else {
25 | throw HueError.connectionError("Could not connect")
:
35 | sec_protocol_options_add_pre_shared_key(options.securityProtocolOptions, psk, pskIdentity)
36 | sec_protocol_options_set_min_tls_protocol_version(options.securityProtocolOptions, .DTLSv12)
37 | sec_protocol_options_set_max_tls_protocol_version(options.securityProtocolOptions, .DTLSv12)
| |- error: 'sec_protocol_options_set_max_tls_protocol_version' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
38 | sec_protocol_options_set_verify_block(options.securityProtocolOptions, { (_: sec_protocol_metadata_t, _: sec_trust_t, complete: @escaping sec_protocol_verify_complete_t) in
39 | complete(true)
/Users/admin/builder/spi-builder-workspace/Sources/HueEntertainmentSwift/Extensions/HueSession+Auth.swift:38:3: error: 'sec_protocol_options_set_verify_block' is only available in macOS 10.14 or newer
17 |
18 | @available(iOS 14.0, *)
19 | public extension HueSession {
| `- note: add @available attribute to enclosing extension
20 | /**
21 | Establishes a ``connection`` to the bridge and allows you to stream to it.
22 | */
23 | func connect() throws {
| `- note: add @available attribute to enclosing instance method
24 | guard var ip = ip, var address = IPv4Address(ip), var clientKey = self.clientKey, var appID = self.appID, var username = self.username else {
25 | throw HueError.connectionError("Could not connect")
:
36 | sec_protocol_options_set_min_tls_protocol_version(options.securityProtocolOptions, .DTLSv12)
37 | sec_protocol_options_set_max_tls_protocol_version(options.securityProtocolOptions, .DTLSv12)
38 | sec_protocol_options_set_verify_block(options.securityProtocolOptions, { (_: sec_protocol_metadata_t, _: sec_trust_t, complete: @escaping sec_protocol_verify_complete_t) in
| |- error: 'sec_protocol_options_set_verify_block' is only available in macOS 10.14 or newer
| `- note: add 'if #available' version check
39 | complete(true)
40 | }, queue)
/Users/admin/builder/spi-builder-workspace/Sources/HueEntertainmentSwift/Extensions/HueSession+Auth.swift:42:20: error: 'NWConnection' is only available in macOS 10.14 or newer
17 |
18 | @available(iOS 14.0, *)
19 | public extension HueSession {
| `- note: add @available attribute to enclosing extension
20 | /**
21 | Establishes a ``connection`` to the bridge and allows you to stream to it.
22 | */
23 | func connect() throws {
| `- note: add @available attribute to enclosing instance method
24 | guard var ip = ip, var address = IPv4Address(ip), var clientKey = self.clientKey, var appID = self.appID, var username = self.username else {
25 | throw HueError.connectionError("Could not connect")
:
40 | }, queue)
41 |
42 | let connection = NWConnection(host: NWEndpoint.Host.ipv4(address), port: 2100, using: .init(dtls: options))
| |- error: 'NWConnection' is only available in macOS 10.14 or newer
| `- note: add 'if #available' version check
43 |
44 | connection.stateUpdateHandler = { [weak self] state in
/Users/admin/builder/spi-builder-workspace/Sources/HueEntertainmentSwift/Extensions/HueSession+Auth.swift:42:39: error: 'NWEndpoint' is only available in macOS 10.14 or newer
17 |
18 | @available(iOS 14.0, *)
19 | public extension HueSession {
| `- note: add @available attribute to enclosing extension
20 | /**
21 | Establishes a ``connection`` to the bridge and allows you to stream to it.
22 | */
23 | func connect() throws {
| `- note: add @available attribute to enclosing instance method
24 | guard var ip = ip, var address = IPv4Address(ip), var clientKey = self.clientKey, var appID = self.appID, var username = self.username else {
25 | throw HueError.connectionError("Could not connect")
:
40 | }, queue)
41 |
42 | let connection = NWConnection(host: NWEndpoint.Host.ipv4(address), port: 2100, using: .init(dtls: options))
| |- error: 'NWEndpoint' is only available in macOS 10.14 or newer
| `- note: add 'if #available' version check
43 |
44 | connection.stateUpdateHandler = { [weak self] state in
/Users/admin/builder/spi-builder-workspace/Sources/HueEntertainmentSwift/Extensions/HueSession+Auth.swift:49:4: warning: switch must be exhaustive; this is an error in the Swift 6 language mode
47 | }
48 |
49 | switch state {
| |- warning: switch must be exhaustive; this is an error in the Swift 6 language mode
| |- note: add missing case: '.setup'
| |- note: add missing case: '.waiting(_)'
| `- note: add missing case: '.preparing'
50 | case .ready:
51 | self.connection = connection
/Users/admin/builder/spi-builder-workspace/Sources/HueEntertainmentSwift/Extensions/HueSession+Auth.swift:24:13: warning: variable 'ip' was never mutated; consider changing to 'let' constant
22 | */
23 | func connect() throws {
24 | guard var ip = ip, var address = IPv4Address(ip), var clientKey = self.clientKey, var appID = self.appID, var username = self.username else {
| `- warning: variable 'ip' was never mutated; consider changing to 'let' constant
25 | throw HueError.connectionError("Could not connect")
26 | }
/Users/admin/builder/spi-builder-workspace/Sources/HueEntertainmentSwift/Extensions/HueSession+Auth.swift:24:26: warning: variable 'address' was never mutated; consider changing to 'let' constant
22 | */
23 | func connect() throws {
24 | guard var ip = ip, var address = IPv4Address(ip), var clientKey = self.clientKey, var appID = self.appID, var username = self.username else {
| `- warning: variable 'address' was never mutated; consider changing to 'let' constant
25 | throw HueError.connectionError("Could not connect")
26 | }
/Users/admin/builder/spi-builder-workspace/Sources/HueEntertainmentSwift/Extensions/HueSession+Auth.swift:24:57: warning: variable 'clientKey' was never mutated; consider changing to 'let' constant
22 | */
23 | func connect() throws {
24 | guard var ip = ip, var address = IPv4Address(ip), var clientKey = self.clientKey, var appID = self.appID, var username = self.username else {
| `- warning: variable 'clientKey' was never mutated; consider changing to 'let' constant
25 | throw HueError.connectionError("Could not connect")
26 | }
/Users/admin/builder/spi-builder-workspace/Sources/HueEntertainmentSwift/Extensions/HueSession+Auth.swift:24:89: warning: variable 'appID' was never mutated; consider changing to 'let' constant
22 | */
23 | func connect() throws {
24 | guard var ip = ip, var address = IPv4Address(ip), var clientKey = self.clientKey, var appID = self.appID, var username = self.username else {
| `- warning: variable 'appID' was never mutated; consider changing to 'let' constant
25 | throw HueError.connectionError("Could not connect")
26 | }
/Users/admin/builder/spi-builder-workspace/Sources/HueEntertainmentSwift/Extensions/HueSession+Auth.swift:24:113: warning: variable 'username' was never used; consider replacing with '_' or removing it
22 | */
23 | func connect() throws {
24 | guard var ip = ip, var address = IPv4Address(ip), var clientKey = self.clientKey, var appID = self.appID, var username = self.username else {
| `- warning: variable 'username' was never used; consider replacing with '_' or removing it
25 | throw HueError.connectionError("Could not connect")
26 | }
/Users/admin/builder/spi-builder-workspace/Sources/HueEntertainmentSwift/Extensions/HueSession+Auth.swift:54:21: warning: immutable value 'err' was never used; consider replacing with '_' or removing it
52 | case .cancelled:
53 | self.connection = nil
54 | case let .failed(err): connection.cancel()
| `- warning: immutable value 'err' was never used; consider replacing with '_' or removing it
55 | @unknown default:
56 | print("??")
/Users/admin/builder/spi-builder-workspace/Sources/HueEntertainmentSwift/Extensions/HueSession+Auth.swift:69:40: error: 'data(from:delegate:)' is only available in macOS 12.0 or newer
17 |
18 | @available(iOS 14.0, *)
19 | public extension HueSession {
| `- note: add @available attribute to enclosing extension
20 | /**
21 | Establishes a ``connection`` to the bridge and allows you to stream to it.
:
65 | of calling this repeatedly, as you can run into rate-limiting issues.
66 | */
67 | func findIP() async throws {
| `- note: add @available attribute to enclosing instance method
68 | let url = URL(string: "https://discovery.meethue.com")!
69 | let (data, _) = try await urlsession.data(from: url)
| |- error: 'data(from:delegate:)' is only available in macOS 12.0 or newer
| `- note: add 'if #available' version check
70 | let bridgeResponse = try JSONDecoder().decode([HueBridgeResponse].self, from: data)
71 |
/Users/admin/builder/spi-builder-workspace/Sources/HueEntertainmentSwift/Extensions/HueSession+Auth.swift:89:41: error: 'data(from:delegate:)' is only available in macOS 12.0 or newer
17 |
18 | @available(iOS 14.0, *)
19 | public extension HueSession {
| `- note: add @available attribute to enclosing extension
20 | /**
21 | Establishes a ``connection`` to the bridge and allows you to stream to it.
:
80 | Helper to see if bridge is accessible.
81 | */
82 | func check() async throws -> Bool {
| `- note: add @available attribute to enclosing instance method
83 | guard let ip = ip else {
84 | return false
:
87 | let url = URL(string: "https://\(ip)/api/0/config")!
88 | do {
89 | let (data, _) = try await urlsession.data(from: url)
| |- error: 'data(from:delegate:)' is only available in macOS 12.0 or newer
| `- note: add 'if #available' version check
90 | _ = try JSONDecoder().decode(HueBridgeCheck.self, from: data)
91 | } catch {
/Users/admin/builder/spi-builder-workspace/Sources/HueEntertainmentSwift/Extensions/HueSession+Auth.swift:131:15: error: 'value(forHTTPHeaderField:)' is only available in macOS 10.15 or newer
17 |
18 | @available(iOS 14.0, *)
19 | public extension HueSession {
| `- note: add @available attribute to enclosing extension
20 | /**
21 | Establishes a ``connection`` to the bridge and allows you to stream to it.
:
102 | > Important: This method requires the user to press the link button on their Hue bridge. If the link button has not been pressed, a ``linkButtonNotPressedError`` error will be thrown.
103 | */
104 | func login(device: String) async throws {
| `- note: add @available attribute to enclosing instance method
105 | let bridgeResponse: [BridgeKeyResponse]? = try await post("api", data: BridgeKeyRequest(devicetype: device, generateclientkey: true))
106 |
:
129 |
130 | let res = response as! HTTPURLResponse
131 | appID = res.value(forHTTPHeaderField: "hue-application-id")
| |- error: 'value(forHTTPHeaderField:)' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
132 | }
133 | }
[15/17] Compiling HueEntertainmentSwift Animation.swift
/Users/admin/builder/spi-builder-workspace/Sources/HueEntertainmentSwift/AreaUpdate.swift:13:29: error: 'Color' is only available in macOS 10.15 or newer
10 |
11 | @available(iOS 14.0, *)
12 | struct AreaUpdate {
| `- note: add @available attribute to enclosing struct
13 | var channelColors: [UInt8: Color]
| `- error: 'Color' is only available in macOS 10.15 or newer
14 | var animation: Animation
15 |
[16/17] Compiling HueEntertainmentSwift AreaUpdate.swift
/Users/admin/builder/spi-builder-workspace/Sources/HueEntertainmentSwift/AreaUpdate.swift:13:29: error: 'Color' is only available in macOS 10.15 or newer
10 |
11 | @available(iOS 14.0, *)
12 | struct AreaUpdate {
| `- note: add @available attribute to enclosing struct
13 | var channelColors: [UInt8: Color]
| `- error: 'Color' is only available in macOS 10.15 or newer
14 | var animation: Animation
15 |
[17/17] Compiling HueEntertainmentSwift HueSession+Control.swift
/Users/admin/builder/spi-builder-workspace/Sources/HueEntertainmentSwift/Extensions/HueSession+Control.swift:21:19: error: 'Color' is only available in macOS 10.15 or newer
11 |
12 | @available(iOS 14.0, *)
13 | public extension HueSession {
| `- note: add @available attribute to enclosing extension
14 | /**
15 | Turns on lights.
:
19 | */
20 |
21 | func on(colors: [Color], ramp: Double = 0) {
| | `- error: 'Color' is only available in macOS 10.15 or newer
| `- note: add @available attribute to enclosing instance method
22 | guard let area = area, let channels = area.channels else {
23 | return
/Users/admin/builder/spi-builder-workspace/Sources/HueEntertainmentSwift/Extensions/HueSession+Control.swift:26:34: error: 'Color' is only available in macOS 10.15 or newer
11 |
12 | @available(iOS 14.0, *)
13 | public extension HueSession {
| `- note: add @available attribute to enclosing extension
14 | /**
15 | Turns on lights.
:
19 | */
20 |
21 | func on(colors: [Color], ramp: Double = 0) {
| `- note: add @available attribute to enclosing instance method
22 | guard let area = area, let channels = area.channels else {
23 | return
24 | }
25 |
26 | let colors = colors.isEmpty ? [Color.white] : colors.shuffled()
| |- error: 'Color' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
27 |
28 | var channelColors: [UInt8: Color] = [:]
/Users/admin/builder/spi-builder-workspace/Sources/HueEntertainmentSwift/Extensions/HueSession+Control.swift:26:40: error: 'white' is only available in macOS 10.15 or newer
11 |
12 | @available(iOS 14.0, *)
13 | public extension HueSession {
| `- note: add @available attribute to enclosing extension
14 | /**
15 | Turns on lights.
:
19 | */
20 |
21 | func on(colors: [Color], ramp: Double = 0) {
| `- note: add @available attribute to enclosing instance method
22 | guard let area = area, let channels = area.channels else {
23 | return
24 | }
25 |
26 | let colors = colors.isEmpty ? [Color.white] : colors.shuffled()
| |- error: 'white' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
27 |
28 | var channelColors: [UInt8: Color] = [:]
/Users/admin/builder/spi-builder-workspace/Sources/HueEntertainmentSwift/Extensions/HueSession+Control.swift:28:30: error: 'Color' is only available in macOS 10.15 or newer
11 |
12 | @available(iOS 14.0, *)
13 | public extension HueSession {
| `- note: add @available attribute to enclosing extension
14 | /**
15 | Turns on lights.
:
19 | */
20 |
21 | func on(colors: [Color], ramp: Double = 0) {
| `- note: add @available attribute to enclosing instance method
22 | guard let area = area, let channels = area.channels else {
23 | return
:
26 | let colors = colors.isEmpty ? [Color.white] : colors.shuffled()
27 |
28 | var channelColors: [UInt8: Color] = [:]
| |- error: 'Color' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
29 | for (i, channel) in channels.enumerated() {
30 | channelColors[channel.channel_id] = colors[i % colors.count]
BUILD FAILURE 6.0 macosSpm