Build Information
Failed to build Logger with Swift 6.0 for macOS (SPM).
Build Command
env DEVELOPER_DIR=/Applications/Xcode-15.3.0.app xcrun --toolchain org.swift.600202405261a swift build --arch arm64 -Xswiftc -Xfrontend -Xswiftc -stats-output-dir -Xswiftc -Xfrontend -Xswiftc .stats -Xswiftc -strict-concurrency=complete
Build Log
========================================
RunAll
========================================
Builder version: 4.40.0
Interrupt handler set up.
========================================
Checkout
========================================
Clone URL: https://github.com/elegantchaos/Logger.git
Reference: main
Initialized empty Git repository in /Users/admin/builder/spi-builder-workspace/.git/
From https://github.com/elegantchaos/Logger
* branch main -> FETCH_HEAD
* [new branch] main -> origin/main
HEAD is now at a5cfb4e conditional tool plugins
Cloned https://github.com/elegantchaos/Logger.git
Revision (git rev-parse @):
a5cfb4ede43a0f4782afb2aea3175a04f206efcf
SUCCESS checkout https://github.com/elegantchaos/Logger.git at main
========================================
Build
========================================
Selected platform: macosSpm
Swift version: 6.0
Building package at path: $workDir
https://github.com/elegantchaos/Logger.git
Running build ...
env DEVELOPER_DIR=/Applications/Xcode-15.3.0.app xcrun --toolchain org.swift.600202405261a swift build --arch arm64 -Xswiftc -Xfrontend -Xswiftc -stats-output-dir -Xswiftc -Xfrontend -Xswiftc .stats -Xswiftc -strict-concurrency=complete
Building for debugging...
[0/5] Write sources
[4/5] Write swift-version-6F35C1178C84523A.txt
[6/15] Compiling Logger OSLogHandler.swift
error: emit-module command failed with exit code 1 (use -v to see invocation)
[7/15] Emitting module Logger
/Users/admin/builder/spi-builder-workspace/Sources/Logger/Channel.swift:21:23: warning: static property 'stdoutHandler' is not concurrency-safe because non-'Sendable' type 'PrintHandler' may have shared mutable state; this is an error in the Swift 6 language mode
19 | */
20 |
21 | public static let stdoutHandler = PrintHandler("default", showName: false, showSubsystem: false)
| |- warning: static property 'stdoutHandler' is not concurrency-safe because non-'Sendable' type 'PrintHandler' may have shared mutable state; this is an error in the Swift 6 language mode
| |- note: annotate 'stdoutHandler' 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
22 |
23 | /**
/Users/admin/builder/spi-builder-workspace/Sources/Logger/PrintHandler.swift:11:14: note: class 'PrintHandler' does not conform to the 'Sendable' protocol
9 | */
10 |
11 | public class PrintHandler: Handler {
| `- note: class 'PrintHandler' does not conform to the 'Sendable' protocol
12 | public convenience init() {
13 | self.init("print")
/Users/admin/builder/spi-builder-workspace/Sources/Logger/Channel.swift:42:23: warning: static property 'defaultHandler' is not concurrency-safe because non-'Sendable' type 'Handler' may have shared mutable state; this is an error in the Swift 6 language mode
40 | }
41 |
42 | public static let defaultHandler = initDefaultHandler()
| |- warning: static property 'defaultHandler' is not concurrency-safe because non-'Sendable' type 'Handler' may have shared mutable state; this is an error in the Swift 6 language mode
| |- note: annotate 'defaultHandler' 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
43 |
44 | /**
/Users/admin/builder/spi-builder-workspace/Sources/Logger/Handler.swift:14:14: note: class 'Handler' does not conform to the 'Sendable' protocol
12 | */
13 |
14 | public class Handler {
| `- note: class 'Handler' does not conform to the 'Sendable' protocol
15 | let name: String
16 | let showName: Bool
/Users/admin/builder/spi-builder-workspace/Sources/Logger/Channel.swift:65:23: warning: static property 'stdout' is not concurrency-safe because non-'Sendable' type 'Channel' may have shared mutable state; this is an error in the Swift 6 language mode
13 | */
14 |
15 | public class Channel {
| `- note: class 'Channel' does not conform to the 'Sendable' protocol
16 | /**
17 | Default log handler which prints to standard out,
:
63 | */
64 |
65 | public static let stdout = Channel("stdout", handlers: [stdoutHandler], alwaysEnabled: true)
| |- warning: static property 'stdout' is not concurrency-safe because non-'Sendable' type 'Channel' may have shared mutable state; this is an error in the Swift 6 language mode
| |- note: annotate 'stdout' 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
66 |
67 | public let name: String
/Users/admin/builder/spi-builder-workspace/Sources/Logger/Manager.swift:59:23: warning: static property 'shared' is not concurrency-safe because non-'Sendable' type 'Manager' may have shared mutable state; this is an error in the Swift 6 language mode
21 | /// whether or not they should share a single settings object.
22 |
23 | public class Manager {
| `- note: class 'Manager' does not conform to the 'Sendable' protocol
24 | typealias AssociatedChannelData = [Channel: Any]
25 | typealias AssociatedHandlerData = [Handler: AssociatedChannelData]
:
57 | */
58 |
59 | public static let shared = initDefaultManager()
| |- warning: static property 'shared' is not concurrency-safe because non-'Sendable' type 'Manager' may have shared mutable state; this is an error in the Swift 6 language mode
| |- note: annotate 'shared' 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
60 |
61 | /// Initialise the default log manager.
/Users/admin/builder/spi-builder-workspace/Sources/Logger/Manager.swift:41:48: error: 'ID' is only available in macOS 10.15 or newer
21 | /// whether or not they should share a single settings object.
22 |
23 | public class Manager {
| `- note: add @available attribute to enclosing class
24 | typealias AssociatedChannelData = [Channel: Any]
25 | typealias AssociatedHandlerData = [Handler: AssociatedChannelData]
:
39 | */
40 |
41 | let channelsEnabledInSettings: Set<Channel.ID>
| `- error: 'ID' is only available in macOS 10.15 or newer
42 |
43 | required init(settings: ManagerSettings) {
/Users/admin/builder/spi-builder-workspace/Sources/Logger/ManagerSettings.swift:15:40: error: 'ID' is only available in macOS 10.15 or newer
11 | /// inject settings during testing.
12 |
13 | public protocol ManagerSettings {
| `- note: add @available attribute to enclosing protocol
14 | /// The identifiers of the channels that should be enabled.
15 | var enabledChannelIDs: Set<Channel.ID> { get }
| | `- error: 'ID' is only available in macOS 10.15 or newer
| `- note: add @available attribute to enclosing property
16 |
17 | /// Store the identifiers of the channels that should be enabled.
/Users/admin/builder/spi-builder-workspace/Sources/Logger/ManagerSettings.swift:18:51: error: 'ID' is only available in macOS 10.15 or newer
11 | /// inject settings during testing.
12 |
13 | public protocol ManagerSettings {
| `- note: add @available attribute to enclosing protocol
14 | /// The identifiers of the channels that should be enabled.
15 | var enabledChannelIDs: Set<Channel.ID> { get }
16 |
17 | /// Store the identifiers of the channels that should be enabled.
18 | func saveEnabledChannelIDs(_ ids: Set<Channel.ID>)
| | `- error: 'ID' is only available in macOS 10.15 or newer
| `- note: add @available attribute to enclosing instance method
19 |
20 | /// Strip any settings-related command line arguments.
/Users/admin/builder/spi-builder-workspace/Sources/Logger/UserDefaultsManagerSettings.swift:57:56: error: 'ID' is only available in macOS 10.15 or newer
10 | /// settings, and in normal situations it should be all you need.
11 |
12 | struct UserDefaultsManagerSettings: ManagerSettings {
| `- note: add @available attribute to enclosing struct
13 | let defaults: UserDefaults
14 |
:
55 | */
56 |
57 | static func updateChannels(_ channels: Set<Channel.ID>, applyingModifiers modifiers: String) -> Set<Channel.ID> {
| | `- error: 'ID' is only available in macOS 10.15 or newer
| `- note: add @available attribute to enclosing static method
58 | var updatedChannels = channels
59 | var onlyDeltas = true
/Users/admin/builder/spi-builder-workspace/Sources/Logger/UserDefaultsManagerSettings.swift:57:113: error: 'ID' is only available in macOS 10.15 or newer
10 | /// settings, and in normal situations it should be all you need.
11 |
12 | struct UserDefaultsManagerSettings: ManagerSettings {
| `- note: add @available attribute to enclosing struct
13 | let defaults: UserDefaults
14 |
:
55 | */
56 |
57 | static func updateChannels(_ channels: Set<Channel.ID>, applyingModifiers modifiers: String) -> Set<Channel.ID> {
| | `- error: 'ID' is only available in macOS 10.15 or newer
| `- note: add @available attribute to enclosing static method
58 | var updatedChannels = channels
59 | var onlyDeltas = true
/Users/admin/builder/spi-builder-workspace/Sources/Logger/UserDefaultsManagerSettings.swift:86:40: error: 'ID' is only available in macOS 10.15 or newer
10 | /// settings, and in normal situations it should be all you need.
11 |
12 | struct UserDefaultsManagerSettings: ManagerSettings {
| `- note: add @available attribute to enclosing struct
13 | let defaults: UserDefaults
14 |
:
84 | }
85 |
86 | var enabledChannelIDs: Set<Channel.ID> {
| | `- error: 'ID' is only available in macOS 10.15 or newer
| `- note: add @available attribute to enclosing property
87 | let s = defaults.string(forKey: .persistentLogsKey)?.split(separator: ",").map { String($0) }
88 | return Set(s ?? [])
/Users/admin/builder/spi-builder-workspace/Sources/Logger/UserDefaultsManagerSettings.swift:91:51: error: 'ID' is only available in macOS 10.15 or newer
10 | /// settings, and in normal situations it should be all you need.
11 |
12 | struct UserDefaultsManagerSettings: ManagerSettings {
| `- note: add @available attribute to enclosing struct
13 | let defaults: UserDefaults
14 |
:
89 | }
90 |
91 | func saveEnabledChannelIDs(_ ids: Set<Channel.ID>) {
| | `- error: 'ID' is only available in macOS 10.15 or newer
| `- note: add @available attribute to enclosing instance method
92 | let sortedIDs = ids.sorted().joined(separator: ",")
93 | defaults.set(sortedIDs, forKey: .persistentLogsKey)
[8/15] Compiling Logger Channel.swift
/Users/admin/builder/spi-builder-workspace/Sources/Logger/Channel.swift:21:23: warning: static property 'stdoutHandler' is not concurrency-safe because non-'Sendable' type 'PrintHandler' may have shared mutable state; this is an error in the Swift 6 language mode
19 | */
20 |
21 | public static let stdoutHandler = PrintHandler("default", showName: false, showSubsystem: false)
| |- warning: static property 'stdoutHandler' is not concurrency-safe because non-'Sendable' type 'PrintHandler' may have shared mutable state; this is an error in the Swift 6 language mode
| |- note: annotate 'stdoutHandler' 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
22 |
23 | /**
/Users/admin/builder/spi-builder-workspace/Sources/Logger/PrintHandler.swift:11:14: note: class 'PrintHandler' does not conform to the 'Sendable' protocol
9 | */
10 |
11 | public class PrintHandler: Handler {
| `- note: class 'PrintHandler' does not conform to the 'Sendable' protocol
12 | public convenience init() {
13 | self.init("print")
/Users/admin/builder/spi-builder-workspace/Sources/Logger/Channel.swift:42:23: warning: static property 'defaultHandler' is not concurrency-safe because non-'Sendable' type 'Handler' may have shared mutable state; this is an error in the Swift 6 language mode
40 | }
41 |
42 | public static let defaultHandler = initDefaultHandler()
| |- warning: static property 'defaultHandler' is not concurrency-safe because non-'Sendable' type 'Handler' may have shared mutable state; this is an error in the Swift 6 language mode
| |- note: annotate 'defaultHandler' 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
43 |
44 | /**
/Users/admin/builder/spi-builder-workspace/Sources/Logger/Handler.swift:14:14: note: class 'Handler' does not conform to the 'Sendable' protocol
12 | */
13 |
14 | public class Handler {
| `- note: class 'Handler' does not conform to the 'Sendable' protocol
15 | let name: String
16 | let showName: Bool
/Users/admin/builder/spi-builder-workspace/Sources/Logger/Channel.swift:65:23: warning: static property 'stdout' is not concurrency-safe because non-'Sendable' type 'Channel' may have shared mutable state; this is an error in the Swift 6 language mode
13 | */
14 |
15 | public class Channel {
| `- note: class 'Channel' does not conform to the 'Sendable' protocol
16 | /**
17 | Default log handler which prints to standard out,
:
63 | */
64 |
65 | public static let stdout = Channel("stdout", handlers: [stdoutHandler], alwaysEnabled: true)
| |- warning: static property 'stdout' is not concurrency-safe because non-'Sendable' type 'Channel' may have shared mutable state; this is an error in the Swift 6 language mode
| |- note: annotate 'stdout' 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
66 |
67 | public let name: String
/Users/admin/builder/spi-builder-workspace/Sources/Logger/Manager.swift:59:23: warning: static property 'shared' is not concurrency-safe because non-'Sendable' type 'Manager' may have shared mutable state; this is an error in the Swift 6 language mode
21 | /// whether or not they should share a single settings object.
22 |
23 | public class Manager {
| `- note: class 'Manager' does not conform to the 'Sendable' protocol
24 | typealias AssociatedChannelData = [Channel: Any]
25 | typealias AssociatedHandlerData = [Handler: AssociatedChannelData]
:
57 | */
58 |
59 | public static let shared = initDefaultManager()
| |- warning: static property 'shared' is not concurrency-safe because non-'Sendable' type 'Manager' may have shared mutable state; this is an error in the Swift 6 language mode
| |- note: annotate 'shared' 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
60 |
61 | /// Initialise the default log manager.
/Users/admin/builder/spi-builder-workspace/Sources/Logger/Channel.swift:123:17: warning: capture of 'self' with non-sendable type 'Channel' in a `@Sendable` closure; this is an error in the Swift 6 language mode
13 | */
14 |
15 | public class Channel {
| `- note: class 'Channel' does not conform to the 'Sendable' protocol
16 | /**
17 | Default log handler which prints to standard out,
:
121 | manager.queue.async {
122 | let context = Context(file: file, line: line, column: column, function: function)
123 | self.handlers.forEach { $0.log(channel: self, context: context, logged: value) }
| `- warning: capture of 'self' with non-sendable type 'Channel' in a `@Sendable` closure; this is an error in the Swift 6 language mode
124 | }
125 | }
/Users/admin/builder/spi-builder-workspace/Sources/Logger/Channel.swift:123:89: warning: capture of 'value' with non-sendable type 'Any' in a `@Sendable` closure; this is an error in the Swift 6 language mode
121 | manager.queue.async {
122 | let context = Context(file: file, line: line, column: column, function: function)
123 | self.handlers.forEach { $0.log(channel: self, context: context, logged: value) }
| `- warning: capture of 'value' with non-sendable type 'Any' in a `@Sendable` closure; this is an error in the Swift 6 language mode
124 | }
125 | }
/Users/admin/builder/spi-builder-workspace/Sources/Logger/Channel.swift:123:57: warning: capture of 'self' with non-sendable type 'Channel' in an isolated closure; this is an error in the Swift 6 language mode
13 | */
14 |
15 | public class Channel {
| `- note: class 'Channel' does not conform to the 'Sendable' protocol
16 | /**
17 | Default log handler which prints to standard out,
:
121 | manager.queue.async {
122 | let context = Context(file: file, line: line, column: column, function: function)
123 | self.handlers.forEach { $0.log(channel: self, context: context, logged: value) }
| `- warning: capture of 'self' with non-sendable type 'Channel' in an isolated closure; this is an error in the Swift 6 language mode
124 | }
125 | }
/Users/admin/builder/spi-builder-workspace/Sources/Logger/Channel.swift:123:89: warning: capture of 'value' with non-sendable type 'Any' in an isolated closure; this is an error in the Swift 6 language mode
121 | manager.queue.async {
122 | let context = Context(file: file, line: line, column: column, function: function)
123 | self.handlers.forEach { $0.log(channel: self, context: context, logged: value) }
| `- warning: capture of 'value' with non-sendable type 'Any' in an isolated closure; this is an error in the Swift 6 language mode
124 | }
125 | }
[9/15] Compiling Logger PrintHandler.swift
[10/15] Compiling Logger Handler.swift
[11/15] Compiling Logger Context.swift
[12/15] Compiling Logger ManagerSettings.swift
/Users/admin/builder/spi-builder-workspace/Sources/Logger/ManagerSettings.swift:15:40: error: 'ID' is only available in macOS 10.15 or newer
11 | /// inject settings during testing.
12 |
13 | public protocol ManagerSettings {
| `- note: add @available attribute to enclosing protocol
14 | /// The identifiers of the channels that should be enabled.
15 | var enabledChannelIDs: Set<Channel.ID> { get }
| | `- error: 'ID' is only available in macOS 10.15 or newer
| `- note: add @available attribute to enclosing property
16 |
17 | /// Store the identifiers of the channels that should be enabled.
/Users/admin/builder/spi-builder-workspace/Sources/Logger/ManagerSettings.swift:18:51: error: 'ID' is only available in macOS 10.15 or newer
11 | /// inject settings during testing.
12 |
13 | public protocol ManagerSettings {
| `- note: add @available attribute to enclosing protocol
14 | /// The identifiers of the channels that should be enabled.
15 | var enabledChannelIDs: Set<Channel.ID> { get }
16 |
17 | /// Store the identifiers of the channels that should be enabled.
18 | func saveEnabledChannelIDs(_ ids: Set<Channel.ID>)
| | `- error: 'ID' is only available in macOS 10.15 or newer
| `- note: add @available attribute to enclosing instance method
19 |
20 | /// Strip any settings-related command line arguments.
[13/15] Compiling Logger Manager.swift
/Users/admin/builder/spi-builder-workspace/Sources/Logger/Manager.swift:41:48: error: 'ID' is only available in macOS 10.15 or newer
21 | /// whether or not they should share a single settings object.
22 |
23 | public class Manager {
| `- note: add @available attribute to enclosing class
24 | typealias AssociatedChannelData = [Channel: Any]
25 | typealias AssociatedHandlerData = [Handler: AssociatedChannelData]
:
39 | */
40 |
41 | let channelsEnabledInSettings: Set<Channel.ID>
| `- error: 'ID' is only available in macOS 10.15 or newer
42 |
43 | required init(settings: ManagerSettings) {
/Users/admin/builder/spi-builder-workspace/Sources/Logger/Manager.swift:59:23: warning: static property 'shared' is not concurrency-safe because non-'Sendable' type 'Manager' may have shared mutable state; this is an error in the Swift 6 language mode
21 | /// whether or not they should share a single settings object.
22 |
23 | public class Manager {
| `- note: class 'Manager' does not conform to the 'Sendable' protocol
24 | typealias AssociatedChannelData = [Channel: Any]
25 | typealias AssociatedHandlerData = [Handler: AssociatedChannelData]
:
57 | */
58 |
59 | public static let shared = initDefaultManager()
| |- warning: static property 'shared' is not concurrency-safe because non-'Sendable' type 'Manager' may have shared mutable state; this is an error in the Swift 6 language mode
| |- note: annotate 'shared' 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
60 |
61 | /// Initialise the default log manager.
/Users/admin/builder/spi-builder-workspace/Sources/Logger/Manager.swift:174:13: warning: capture of 'self' with non-sendable type 'Manager' in a `@Sendable` closure; this is an error in the Swift 6 language mode
21 | /// whether or not they should share a single settings object.
22 |
23 | public class Manager {
| `- note: class 'Manager' does not conform to the 'Sendable' protocol
24 | typealias AssociatedChannelData = [Channel: Any]
25 | typealias AssociatedHandlerData = [Handler: AssociatedChannelData]
:
172 | internal func register(channel: Channel) {
173 | queue.async {
174 | self.channels.append(channel)
| `- warning: capture of 'self' with non-sendable type 'Manager' in a `@Sendable` closure; this is an error in the Swift 6 language mode
175 | #if os(macOS) || os(iOS)
176 | DispatchQueue.main.async {
/Users/admin/builder/spi-builder-workspace/Sources/Logger/Manager.swift:174:34: warning: capture of 'channel' with non-sendable type 'Channel' in a `@Sendable` closure; this is an error in the Swift 6 language mode
172 | internal func register(channel: Channel) {
173 | queue.async {
174 | self.channels.append(channel)
| `- warning: capture of 'channel' with non-sendable type 'Channel' in a `@Sendable` closure; this is an error in the Swift 6 language mode
175 | #if os(macOS) || os(iOS)
176 | DispatchQueue.main.async {
/Users/admin/builder/spi-builder-workspace/Sources/Logger/Channel.swift:15:14: note: class 'Channel' does not conform to the 'Sendable' protocol
13 | */
14 |
15 | public class Channel {
| `- note: class 'Channel' does not conform to the 'Sendable' protocol
16 | /**
17 | Default log handler which prints to standard out,
/Users/admin/builder/spi-builder-workspace/Sources/Logger/Manager.swift:177:100: warning: capture of 'self' with non-sendable type 'Manager' in a `@Sendable` closure; this is an error in the Swift 6 language mode
21 | /// whether or not they should share a single settings object.
22 |
23 | public class Manager {
| `- note: class 'Manager' does not conform to the 'Sendable' protocol
24 | typealias AssociatedChannelData = [Channel: Any]
25 | typealias AssociatedHandlerData = [Handler: AssociatedChannelData]
:
175 | #if os(macOS) || os(iOS)
176 | DispatchQueue.main.async {
177 | NotificationCenter.default.post(name: Manager.channelsUpdatedNotification, object: self)
| `- warning: capture of 'self' with non-sendable type 'Manager' in a `@Sendable` closure; this is an error in the Swift 6 language mode
178 | }
179 | #endif
[14/15] Compiling Logger NSLogHandler.swift
[15/15] Compiling Logger UserDefaultsManagerSettings.swift
/Users/admin/builder/spi-builder-workspace/Sources/Logger/UserDefaultsManagerSettings.swift:57:56: error: 'ID' is only available in macOS 10.15 or newer
10 | /// settings, and in normal situations it should be all you need.
11 |
12 | struct UserDefaultsManagerSettings: ManagerSettings {
| `- note: add @available attribute to enclosing struct
13 | let defaults: UserDefaults
14 |
:
55 | */
56 |
57 | static func updateChannels(_ channels: Set<Channel.ID>, applyingModifiers modifiers: String) -> Set<Channel.ID> {
| | `- error: 'ID' is only available in macOS 10.15 or newer
| `- note: add @available attribute to enclosing static method
58 | var updatedChannels = channels
59 | var onlyDeltas = true
/Users/admin/builder/spi-builder-workspace/Sources/Logger/UserDefaultsManagerSettings.swift:57:113: error: 'ID' is only available in macOS 10.15 or newer
10 | /// settings, and in normal situations it should be all you need.
11 |
12 | struct UserDefaultsManagerSettings: ManagerSettings {
| `- note: add @available attribute to enclosing struct
13 | let defaults: UserDefaults
14 |
:
55 | */
56 |
57 | static func updateChannels(_ channels: Set<Channel.ID>, applyingModifiers modifiers: String) -> Set<Channel.ID> {
| | `- error: 'ID' is only available in macOS 10.15 or newer
| `- note: add @available attribute to enclosing static method
58 | var updatedChannels = channels
59 | var onlyDeltas = true
/Users/admin/builder/spi-builder-workspace/Sources/Logger/UserDefaultsManagerSettings.swift:86:40: error: 'ID' is only available in macOS 10.15 or newer
10 | /// settings, and in normal situations it should be all you need.
11 |
12 | struct UserDefaultsManagerSettings: ManagerSettings {
| `- note: add @available attribute to enclosing struct
13 | let defaults: UserDefaults
14 |
:
84 | }
85 |
86 | var enabledChannelIDs: Set<Channel.ID> {
| | `- error: 'ID' is only available in macOS 10.15 or newer
| `- note: add @available attribute to enclosing property
87 | let s = defaults.string(forKey: .persistentLogsKey)?.split(separator: ",").map { String($0) }
88 | return Set(s ?? [])
/Users/admin/builder/spi-builder-workspace/Sources/Logger/UserDefaultsManagerSettings.swift:91:51: error: 'ID' is only available in macOS 10.15 or newer
10 | /// settings, and in normal situations it should be all you need.
11 |
12 | struct UserDefaultsManagerSettings: ManagerSettings {
| `- note: add @available attribute to enclosing struct
13 | let defaults: UserDefaults
14 |
:
89 | }
90 |
91 | func saveEnabledChannelIDs(_ ids: Set<Channel.ID>) {
| | `- error: 'ID' is only available in macOS 10.15 or newer
| `- note: add @available attribute to enclosing instance method
92 | let sortedIDs = ids.sorted().joined(separator: ",")
93 | defaults.set(sortedIDs, forKey: .persistentLogsKey)
/Users/admin/builder/spi-builder-workspace/Sources/Logger/UserDefaultsManagerSettings.swift:60:36: error: 'ID' is only available in macOS 10.15 or newer
10 | /// settings, and in normal situations it should be all you need.
11 |
12 | struct UserDefaultsManagerSettings: ManagerSettings {
| `- note: add @available attribute to enclosing struct
13 | let defaults: UserDefaults
14 |
:
55 | */
56 |
57 | static func updateChannels(_ channels: Set<Channel.ID>, applyingModifiers modifiers: String) -> Set<Channel.ID> {
| `- note: add @available attribute to enclosing static method
58 | var updatedChannels = channels
59 | var onlyDeltas = true
60 | var newItems = Set<Channel.ID>()
| |- error: 'ID' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
61 | for item in modifiers.split(separator: ",").map({ $0.trimmingCharacters(in: .whitespaces) }) {
62 | if let first = item.first {
/Users/admin/builder/spi-builder-workspace/Sources/Logger/UserDefaultsManagerSettings.swift:65:49: error: 'ID' is only available in macOS 10.15 or newer
10 | /// settings, and in normal situations it should be all you need.
11 |
12 | struct UserDefaultsManagerSettings: ManagerSettings {
| `- note: add @available attribute to enclosing struct
13 | let defaults: UserDefaults
14 |
:
55 | */
56 |
57 | static func updateChannels(_ channels: Set<Channel.ID>, applyingModifiers modifiers: String) -> Set<Channel.ID> {
| `- note: add @available attribute to enclosing static method
58 | var updatedChannels = channels
59 | var onlyDeltas = true
:
63 | switch first {
64 | case "=":
65 | newItems.insert(Channel.ID(item.dropFirst()))
| |- error: 'ID' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
66 | onlyDeltas = false
67 | case "-":
/Users/admin/builder/spi-builder-workspace/Sources/Logger/UserDefaultsManagerSettings.swift:68:56: error: 'ID' is only available in macOS 10.15 or newer
10 | /// settings, and in normal situations it should be all you need.
11 |
12 | struct UserDefaultsManagerSettings: ManagerSettings {
| `- note: add @available attribute to enclosing struct
13 | let defaults: UserDefaults
14 |
:
55 | */
56 |
57 | static func updateChannels(_ channels: Set<Channel.ID>, applyingModifiers modifiers: String) -> Set<Channel.ID> {
| `- note: add @available attribute to enclosing static method
58 | var updatedChannels = channels
59 | var onlyDeltas = true
:
66 | onlyDeltas = false
67 | case "-":
68 | updatedChannels.remove(Channel.ID(item.dropFirst()))
| |- error: 'ID' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
69 | case "+":
70 | newItems.insert(Channel.ID(item.dropFirst()))
/Users/admin/builder/spi-builder-workspace/Sources/Logger/UserDefaultsManagerSettings.swift:70:49: error: 'ID' is only available in macOS 10.15 or newer
10 | /// settings, and in normal situations it should be all you need.
11 |
12 | struct UserDefaultsManagerSettings: ManagerSettings {
| `- note: add @available attribute to enclosing struct
13 | let defaults: UserDefaults
14 |
:
55 | */
56 |
57 | static func updateChannels(_ channels: Set<Channel.ID>, applyingModifiers modifiers: String) -> Set<Channel.ID> {
| `- note: add @available attribute to enclosing static method
58 | var updatedChannels = channels
59 | var onlyDeltas = true
:
68 | updatedChannels.remove(Channel.ID(item.dropFirst()))
69 | case "+":
70 | newItems.insert(Channel.ID(item.dropFirst()))
| |- error: 'ID' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
71 | default:
72 | newItems.insert(Channel.ID(item))
/Users/admin/builder/spi-builder-workspace/Sources/Logger/UserDefaultsManagerSettings.swift:72:49: error: 'ID' is only available in macOS 10.15 or newer
10 | /// settings, and in normal situations it should be all you need.
11 |
12 | struct UserDefaultsManagerSettings: ManagerSettings {
| `- note: add @available attribute to enclosing struct
13 | let defaults: UserDefaults
14 |
:
55 | */
56 |
57 | static func updateChannels(_ channels: Set<Channel.ID>, applyingModifiers modifiers: String) -> Set<Channel.ID> {
| `- note: add @available attribute to enclosing static method
58 | var updatedChannels = channels
59 | var onlyDeltas = true
:
70 | newItems.insert(Channel.ID(item.dropFirst()))
71 | default:
72 | newItems.insert(Channel.ID(item))
| |- error: 'ID' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
73 | }
74 | }
BUILD FAILURE 6.0 macosSpm