Build Information
Failed to build KlarLog, reference main (42608c), with Swift 6.2 for macOS (SPM) on 28 Oct 2025 01:53:06 UTC.
Build Command
env DEVELOPER_DIR=/Applications/Xcode-26.0.0.app xcrun swift build --arch arm64Build Log
========================================
RunAll
========================================
Builder version: 4.68.0
Interrupt handler set up.
========================================
Checkout
========================================
Clone URL: https://github.com/henribredt/KlarLog.git
Reference: main
Initialized empty Git repository in /Users/admin/builder/spi-builder-workspace/.git/
From https://github.com/henribredt/KlarLog
* branch main -> FETCH_HEAD
* [new branch] main -> origin/main
HEAD is now at 42608cc Fix typos in README.md regarding logger destinations
Cloned https://github.com/henribredt/KlarLog.git
Revision (git rev-parse @):
42608cc8fa9438dba8e97ebbc90e8101011c9d89
SUCCESS checkout https://github.com/henribredt/KlarLog.git at main
========================================
ResolveProductDependencies
========================================
Resolving dependencies ...
{
"identity": ".resolve-product-dependencies",
"name": "resolve-dependencies",
"url": "/Users/admin/builder/spi-builder-workspace/.resolve-product-dependencies",
"version": "unspecified",
"path": "/Users/admin/builder/spi-builder-workspace/.resolve-product-dependencies",
"dependencies": [
{
"identity": "klarlog",
"name": "KlarLog",
"url": "https://github.com/henribredt/KlarLog.git",
"version": "unspecified",
"path": "/Users/admin/builder/spi-builder-workspace/.resolve-product-dependencies/.build/checkouts/KlarLog",
"dependencies": [
]
}
]
}
Fetching https://github.com/henribredt/KlarLog.git
[1/321] Fetching klarlog
Fetched https://github.com/henribredt/KlarLog.git from cache (0.76s)
Creating working copy for https://github.com/henribredt/KlarLog.git
Working copy of https://github.com/henribredt/KlarLog.git resolved at main (42608cc)
warning: '.resolve-product-dependencies': dependency 'klarlog' is not used by any target
Found 0 product dependencies
========================================
Build
========================================
Selected platform: macosSpm
Swift version: 6.2
Building package at path: $PWD
https://github.com/henribredt/KlarLog.git
Running build ...
env DEVELOPER_DIR=/Applications/Xcode-26.0.0.app xcrun swift build --arch arm64
Building for debugging...
[0/2] Write sources
[1/2] Write swift-version-49B95AFC49DCD68C.txt
error: emit-module command failed with exit code 1 (use -v to see invocation)
[3/11] Compiling KlarLog KlarLog.swift
[4/11] Compiling KlarLog CategoryLogger.swift
[5/11] Compiling KlarLog Export.swift
[6/11] Compiling KlarLog LogLevel.swift
[7/11] Compiling KlarLog LogDestination.swift
[8/11] Emitting module KlarLog
/Users/admin/builder/spi-builder-workspace/Sources/KlarLog/LogDestinations/LocalFileDestination.swift:172:32: error: 'appending(path:directoryHint:)' is only available in macOS 13.0 or newer
165 |
166 | /// An actor that serializes all file operations for thread-safe access.
167 | private actor FileOperationActor {
| `- note: add '@available' attribute to enclosing actor
168 | private let fileURL: URL
169 | private let maxMessages: Int
170 |
171 | init(fileURL: URL, fileName: String, maxMessages: Int) {
| `- note: add '@available' attribute to enclosing initializer
172 | self.fileURL = fileURL.appending(path: "\(fileName).txt")
| |- error: 'appending(path:directoryHint:)' is only available in macOS 13.0 or newer
| `- note: add 'if #available' version check
173 | self.maxMessages = maxMessages
174 | }
/Users/admin/builder/spi-builder-workspace/Sources/KlarLog/Sample.swift:22:27: error: 'documentsDirectory' is only available in macOS 13.0 or newer
13 | }
14 |
15 | struct LogDestinations: Sendable {
| `- note: add '@available' attribute to enclosing struct
16 | // create a private destination if the destionation will not be accessed later
17 | private let console = ConsoleDestination()
:
20 | public let file = LocalFileDestination(
21 | logForLogLevels: LogLevel.allCases,
22 | fileLocationURL: .documentsDirectory,
| `- error: 'documentsDirectory' is only available in macOS 13.0 or newer
23 | maxMessages: 1000
24 | )
/Users/admin/builder/spi-builder-workspace/Sources/KlarLog/Sample.swift:41:6: error: 'State' is only available in macOS 10.15 or newer
38 | )
39 |
40 | struct SampleView: View {
| `- note: add '@available' attribute to enclosing struct
41 | @State private var logs: String = ""
| `- error: 'State' is only available in macOS 10.15 or newer
42 | var body: some View {
43 | VStack{
/Users/admin/builder/spi-builder-workspace/Sources/KlarLog/Sample.swift:42:20: error: 'View' is only available in macOS 10.15 or newer
38 | )
39 |
40 | struct SampleView: View {
| `- note: add '@available' attribute to enclosing struct
41 | @State private var logs: String = ""
42 | var body: some View {
| | `- error: 'View' is only available in macOS 10.15 or newer
| `- note: add '@available' attribute to enclosing property
43 | VStack{
44 | Text("KlarLog")
[9/11] Compiling KlarLog ConsoleDestination.swift
/Users/admin/builder/spi-builder-workspace/Sources/KlarLog/LogDestinations/ConsoleDestination.swift:53:29: error: 'Logger' is only available in macOS 11.0 or newer
20 | /// - Console.app (searchable by subsystem and category)
21 | /// - System logs accessible via `log` command-line tool
22 | public struct ConsoleDestination: LogDestination, Sendable {
| `- note: add '@available' attribute to enclosing struct
23 | /// The log levels that this destination should handle.
24 | ///
:
41 | /// - level: The severity level for the message.
42 | /// - message: The text to log.
43 | public func log(subsystem: String, category: String, level: LogLevel, message: String) {
| `- note: add '@available' attribute to enclosing instance method
44 | /// Only perform the action of this destination if it was configured to act on this log level.
45 | guard logForLogLevels.contains(level) else {
:
51 | print("#OSLog_PREVIEW[\(level.rawValue.uppercased())][\(subsystem)][\(category)] \(message)")
52 | } else {
53 | let logger = os.Logger(subsystem: subsystem, category: category)
| |- error: 'Logger' is only available in macOS 11.0 or newer
| `- note: add 'if #available' version check
54 |
55 | switch level {
/Users/admin/builder/spi-builder-workspace/Sources/KlarLog/LogDestinations/ConsoleDestination.swift:57:30: error: 'OSLogMessage' is only available in macOS 11.0 or newer
20 | /// - Console.app (searchable by subsystem and category)
21 | /// - System logs accessible via `log` command-line tool
22 | public struct ConsoleDestination: LogDestination, Sendable {
| `- note: add '@available' attribute to enclosing struct
23 | /// The log levels that this destination should handle.
24 | ///
:
41 | /// - level: The severity level for the message.
42 | /// - message: The text to log.
43 | public func log(subsystem: String, category: String, level: LogLevel, message: String) {
| `- note: add '@available' attribute to enclosing instance method
44 | /// Only perform the action of this destination if it was configured to act on this log level.
45 | guard logForLogLevels.contains(level) else {
:
55 | switch level {
56 | case .debug:
57 | logger.debug("\(message)")
| |- error: 'OSLogMessage' is only available in macOS 11.0 or newer
| `- note: add 'if #available' version check
58 | case .info:
59 | logger.info("\(message)")
/Users/admin/builder/spi-builder-workspace/Sources/KlarLog/LogDestinations/ConsoleDestination.swift:57:32: error: 'appendInterpolation(_:align:privacy:)' is only available in macOS 11.0 or newer
20 | /// - Console.app (searchable by subsystem and category)
21 | /// - System logs accessible via `log` command-line tool
22 | public struct ConsoleDestination: LogDestination, Sendable {
| `- note: add '@available' attribute to enclosing struct
23 | /// The log levels that this destination should handle.
24 | ///
:
41 | /// - level: The severity level for the message.
42 | /// - message: The text to log.
43 | public func log(subsystem: String, category: String, level: LogLevel, message: String) {
| `- note: add '@available' attribute to enclosing instance method
44 | /// Only perform the action of this destination if it was configured to act on this log level.
45 | guard logForLogLevels.contains(level) else {
:
55 | switch level {
56 | case .debug:
57 | logger.debug("\(message)")
| |- error: 'appendInterpolation(_:align:privacy:)' is only available in macOS 11.0 or newer
| `- note: add 'if #available' version check
58 | case .info:
59 | logger.info("\(message)")
/Users/admin/builder/spi-builder-workspace/Sources/KlarLog/LogDestinations/ConsoleDestination.swift:59:29: error: 'OSLogMessage' is only available in macOS 11.0 or newer
20 | /// - Console.app (searchable by subsystem and category)
21 | /// - System logs accessible via `log` command-line tool
22 | public struct ConsoleDestination: LogDestination, Sendable {
| `- note: add '@available' attribute to enclosing struct
23 | /// The log levels that this destination should handle.
24 | ///
:
41 | /// - level: The severity level for the message.
42 | /// - message: The text to log.
43 | public func log(subsystem: String, category: String, level: LogLevel, message: String) {
| `- note: add '@available' attribute to enclosing instance method
44 | /// Only perform the action of this destination if it was configured to act on this log level.
45 | guard logForLogLevels.contains(level) else {
:
57 | logger.debug("\(message)")
58 | case .info:
59 | logger.info("\(message)")
| |- error: 'OSLogMessage' is only available in macOS 11.0 or newer
| `- note: add 'if #available' version check
60 | case .notice:
61 | logger.notice("\(message)")
/Users/admin/builder/spi-builder-workspace/Sources/KlarLog/LogDestinations/ConsoleDestination.swift:59:31: error: 'appendInterpolation(_:align:privacy:)' is only available in macOS 11.0 or newer
20 | /// - Console.app (searchable by subsystem and category)
21 | /// - System logs accessible via `log` command-line tool
22 | public struct ConsoleDestination: LogDestination, Sendable {
| `- note: add '@available' attribute to enclosing struct
23 | /// The log levels that this destination should handle.
24 | ///
:
41 | /// - level: The severity level for the message.
42 | /// - message: The text to log.
43 | public func log(subsystem: String, category: String, level: LogLevel, message: String) {
| `- note: add '@available' attribute to enclosing instance method
44 | /// Only perform the action of this destination if it was configured to act on this log level.
45 | guard logForLogLevels.contains(level) else {
:
57 | logger.debug("\(message)")
58 | case .info:
59 | logger.info("\(message)")
| |- error: 'appendInterpolation(_:align:privacy:)' is only available in macOS 11.0 or newer
| `- note: add 'if #available' version check
60 | case .notice:
61 | logger.notice("\(message)")
/Users/admin/builder/spi-builder-workspace/Sources/KlarLog/LogDestinations/ConsoleDestination.swift:61:31: error: 'OSLogMessage' is only available in macOS 11.0 or newer
20 | /// - Console.app (searchable by subsystem and category)
21 | /// - System logs accessible via `log` command-line tool
22 | public struct ConsoleDestination: LogDestination, Sendable {
| `- note: add '@available' attribute to enclosing struct
23 | /// The log levels that this destination should handle.
24 | ///
:
41 | /// - level: The severity level for the message.
42 | /// - message: The text to log.
43 | public func log(subsystem: String, category: String, level: LogLevel, message: String) {
| `- note: add '@available' attribute to enclosing instance method
44 | /// Only perform the action of this destination if it was configured to act on this log level.
45 | guard logForLogLevels.contains(level) else {
:
59 | logger.info("\(message)")
60 | case .notice:
61 | logger.notice("\(message)")
| |- error: 'OSLogMessage' is only available in macOS 11.0 or newer
| `- note: add 'if #available' version check
62 | case .warning:
63 | logger.warning("\(message)")
/Users/admin/builder/spi-builder-workspace/Sources/KlarLog/LogDestinations/ConsoleDestination.swift:61:33: error: 'appendInterpolation(_:align:privacy:)' is only available in macOS 11.0 or newer
20 | /// - Console.app (searchable by subsystem and category)
21 | /// - System logs accessible via `log` command-line tool
22 | public struct ConsoleDestination: LogDestination, Sendable {
| `- note: add '@available' attribute to enclosing struct
23 | /// The log levels that this destination should handle.
24 | ///
:
41 | /// - level: The severity level for the message.
42 | /// - message: The text to log.
43 | public func log(subsystem: String, category: String, level: LogLevel, message: String) {
| `- note: add '@available' attribute to enclosing instance method
44 | /// Only perform the action of this destination if it was configured to act on this log level.
45 | guard logForLogLevels.contains(level) else {
:
59 | logger.info("\(message)")
60 | case .notice:
61 | logger.notice("\(message)")
| |- error: 'appendInterpolation(_:align:privacy:)' is only available in macOS 11.0 or newer
| `- note: add 'if #available' version check
62 | case .warning:
63 | logger.warning("\(message)")
/Users/admin/builder/spi-builder-workspace/Sources/KlarLog/LogDestinations/ConsoleDestination.swift:63:32: error: 'OSLogMessage' is only available in macOS 11.0 or newer
20 | /// - Console.app (searchable by subsystem and category)
21 | /// - System logs accessible via `log` command-line tool
22 | public struct ConsoleDestination: LogDestination, Sendable {
| `- note: add '@available' attribute to enclosing struct
23 | /// The log levels that this destination should handle.
24 | ///
:
41 | /// - level: The severity level for the message.
42 | /// - message: The text to log.
43 | public func log(subsystem: String, category: String, level: LogLevel, message: String) {
| `- note: add '@available' attribute to enclosing instance method
44 | /// Only perform the action of this destination if it was configured to act on this log level.
45 | guard logForLogLevels.contains(level) else {
:
61 | logger.notice("\(message)")
62 | case .warning:
63 | logger.warning("\(message)")
| |- error: 'OSLogMessage' is only available in macOS 11.0 or newer
| `- note: add 'if #available' version check
64 | case .error:
65 | logger.error("\(message)")
/Users/admin/builder/spi-builder-workspace/Sources/KlarLog/LogDestinations/ConsoleDestination.swift:63:34: error: 'appendInterpolation(_:align:privacy:)' is only available in macOS 11.0 or newer
20 | /// - Console.app (searchable by subsystem and category)
21 | /// - System logs accessible via `log` command-line tool
22 | public struct ConsoleDestination: LogDestination, Sendable {
| `- note: add '@available' attribute to enclosing struct
23 | /// The log levels that this destination should handle.
24 | ///
:
41 | /// - level: The severity level for the message.
42 | /// - message: The text to log.
43 | public func log(subsystem: String, category: String, level: LogLevel, message: String) {
| `- note: add '@available' attribute to enclosing instance method
44 | /// Only perform the action of this destination if it was configured to act on this log level.
45 | guard logForLogLevels.contains(level) else {
:
61 | logger.notice("\(message)")
62 | case .warning:
63 | logger.warning("\(message)")
| |- error: 'appendInterpolation(_:align:privacy:)' is only available in macOS 11.0 or newer
| `- note: add 'if #available' version check
64 | case .error:
65 | logger.error("\(message)")
/Users/admin/builder/spi-builder-workspace/Sources/KlarLog/LogDestinations/ConsoleDestination.swift:65:30: error: 'OSLogMessage' is only available in macOS 11.0 or newer
20 | /// - Console.app (searchable by subsystem and category)
21 | /// - System logs accessible via `log` command-line tool
22 | public struct ConsoleDestination: LogDestination, Sendable {
| `- note: add '@available' attribute to enclosing struct
23 | /// The log levels that this destination should handle.
24 | ///
:
41 | /// - level: The severity level for the message.
42 | /// - message: The text to log.
43 | public func log(subsystem: String, category: String, level: LogLevel, message: String) {
| `- note: add '@available' attribute to enclosing instance method
44 | /// Only perform the action of this destination if it was configured to act on this log level.
45 | guard logForLogLevels.contains(level) else {
:
63 | logger.warning("\(message)")
64 | case .error:
65 | logger.error("\(message)")
| |- error: 'OSLogMessage' is only available in macOS 11.0 or newer
| `- note: add 'if #available' version check
66 | case .critical:
67 | logger.critical("\(message)")
/Users/admin/builder/spi-builder-workspace/Sources/KlarLog/LogDestinations/ConsoleDestination.swift:65:32: error: 'appendInterpolation(_:align:privacy:)' is only available in macOS 11.0 or newer
20 | /// - Console.app (searchable by subsystem and category)
21 | /// - System logs accessible via `log` command-line tool
22 | public struct ConsoleDestination: LogDestination, Sendable {
| `- note: add '@available' attribute to enclosing struct
23 | /// The log levels that this destination should handle.
24 | ///
:
41 | /// - level: The severity level for the message.
42 | /// - message: The text to log.
43 | public func log(subsystem: String, category: String, level: LogLevel, message: String) {
| `- note: add '@available' attribute to enclosing instance method
44 | /// Only perform the action of this destination if it was configured to act on this log level.
45 | guard logForLogLevels.contains(level) else {
:
63 | logger.warning("\(message)")
64 | case .error:
65 | logger.error("\(message)")
| |- error: 'appendInterpolation(_:align:privacy:)' is only available in macOS 11.0 or newer
| `- note: add 'if #available' version check
66 | case .critical:
67 | logger.critical("\(message)")
/Users/admin/builder/spi-builder-workspace/Sources/KlarLog/LogDestinations/ConsoleDestination.swift:67:33: error: 'OSLogMessage' is only available in macOS 11.0 or newer
20 | /// - Console.app (searchable by subsystem and category)
21 | /// - System logs accessible via `log` command-line tool
22 | public struct ConsoleDestination: LogDestination, Sendable {
| `- note: add '@available' attribute to enclosing struct
23 | /// The log levels that this destination should handle.
24 | ///
:
41 | /// - level: The severity level for the message.
42 | /// - message: The text to log.
43 | public func log(subsystem: String, category: String, level: LogLevel, message: String) {
| `- note: add '@available' attribute to enclosing instance method
44 | /// Only perform the action of this destination if it was configured to act on this log level.
45 | guard logForLogLevels.contains(level) else {
:
65 | logger.error("\(message)")
66 | case .critical:
67 | logger.critical("\(message)")
| |- error: 'OSLogMessage' is only available in macOS 11.0 or newer
| `- note: add 'if #available' version check
68 | }
69 | }
/Users/admin/builder/spi-builder-workspace/Sources/KlarLog/LogDestinations/ConsoleDestination.swift:67:35: error: 'appendInterpolation(_:align:privacy:)' is only available in macOS 11.0 or newer
20 | /// - Console.app (searchable by subsystem and category)
21 | /// - System logs accessible via `log` command-line tool
22 | public struct ConsoleDestination: LogDestination, Sendable {
| `- note: add '@available' attribute to enclosing struct
23 | /// The log levels that this destination should handle.
24 | ///
:
41 | /// - level: The severity level for the message.
42 | /// - message: The text to log.
43 | public func log(subsystem: String, category: String, level: LogLevel, message: String) {
| `- note: add '@available' attribute to enclosing instance method
44 | /// Only perform the action of this destination if it was configured to act on this log level.
45 | guard logForLogLevels.contains(level) else {
:
65 | logger.error("\(message)")
66 | case .critical:
67 | logger.critical("\(message)")
| |- error: 'appendInterpolation(_:align:privacy:)' is only available in macOS 11.0 or newer
| `- note: add 'if #available' version check
68 | }
69 | }
[10/11] Compiling KlarLog Sample.swift
/Users/admin/builder/spi-builder-workspace/Sources/KlarLog/Sample.swift:22:27: error: 'documentsDirectory' is only available in macOS 13.0 or newer
13 | }
14 |
15 | struct LogDestinations: Sendable {
| `- note: add '@available' attribute to enclosing struct
16 | // create a private destination if the destionation will not be accessed later
17 | private let console = ConsoleDestination()
:
20 | public let file = LocalFileDestination(
21 | logForLogLevels: LogLevel.allCases,
22 | fileLocationURL: .documentsDirectory,
| `- error: 'documentsDirectory' is only available in macOS 13.0 or newer
23 | maxMessages: 1000
24 | )
/Users/admin/builder/spi-builder-workspace/Sources/KlarLog/Sample.swift:41:6: error: 'State' is only available in macOS 10.15 or newer
38 | )
39 |
40 | struct SampleView: View {
| `- note: add '@available' attribute to enclosing struct
41 | @State private var logs: String = ""
| `- error: 'State' is only available in macOS 10.15 or newer
42 | var body: some View {
43 | VStack{
/Users/admin/builder/spi-builder-workspace/Sources/KlarLog/Sample.swift:42:20: error: 'View' is only available in macOS 10.15 or newer
38 | )
39 |
40 | struct SampleView: View {
| `- note: add '@available' attribute to enclosing struct
41 | @State private var logs: String = ""
42 | var body: some View {
| | `- error: 'View' is only available in macOS 10.15 or newer
| `- note: add '@available' attribute to enclosing property
43 | VStack{
44 | Text("KlarLog")
/Users/admin/builder/spi-builder-workspace/Sources/KlarLog/Sample.swift:43:9: error: 'VStack' is only available in macOS 10.15 or newer
38 | )
39 |
40 | struct SampleView: View {
| `- note: add '@available' attribute to enclosing struct
41 | @State private var logs: String = ""
42 | var body: some View {
| `- note: add '@available' attribute to enclosing property
43 | VStack{
| |- error: 'VStack' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
44 | Text("KlarLog")
45 | .onAppear {
/Users/admin/builder/spi-builder-workspace/Sources/KlarLog/Sample.swift:43:15: error: conformance of 'Text' to 'View' is only available in macOS 10.15 or newer
38 | )
39 |
40 | struct SampleView: View {
| `- note: add '@available' attribute to enclosing struct
41 | @State private var logs: String = ""
42 | var body: some View {
| `- note: add '@available' attribute to enclosing property
43 | VStack{
| |- error: conformance of 'Text' to 'View' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
44 | Text("KlarLog")
45 | .onAppear {
/Users/admin/builder/spi-builder-workspace/Sources/KlarLog/Sample.swift:43:15: error: conformance of 'Text' to 'View' is only available in macOS 10.15 or newer
38 | )
39 |
40 | struct SampleView: View {
| `- note: add '@available' attribute to enclosing struct
41 | @State private var logs: String = ""
42 | var body: some View {
| `- note: add '@available' attribute to enclosing property
43 | VStack{
| |- error: conformance of 'Text' to 'View' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
44 | Text("KlarLog")
45 | .onAppear {
/Users/admin/builder/spi-builder-workspace/Sources/KlarLog/Sample.swift:43:15: error: conformance of 'Text' to 'View' is only available in macOS 10.15 or newer
38 | )
39 |
40 | struct SampleView: View {
| `- note: add '@available' attribute to enclosing struct
41 | @State private var logs: String = ""
42 | var body: some View {
| `- note: add '@available' attribute to enclosing property
43 | VStack{
| |- error: conformance of 'Text' to 'View' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
44 | Text("KlarLog")
45 | .onAppear {
/Users/admin/builder/spi-builder-workspace/Sources/KlarLog/Sample.swift:43:15: error: conformance of 'Text' to 'View' is only available in macOS 10.15 or newer
38 | )
39 |
40 | struct SampleView: View {
| `- note: add '@available' attribute to enclosing struct
41 | @State private var logs: String = ""
42 | var body: some View {
| `- note: add '@available' attribute to enclosing property
43 | VStack{
| |- error: conformance of 'Text' to 'View' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
44 | Text("KlarLog")
45 | .onAppear {
/Users/admin/builder/spi-builder-workspace/Sources/KlarLog/Sample.swift:44:13: error: 'Text' is only available in macOS 10.15 or newer
38 | )
39 |
40 | struct SampleView: View {
| `- note: add '@available' attribute to enclosing struct
41 | @State private var logs: String = ""
42 | var body: some View {
| `- note: add '@available' attribute to enclosing property
43 | VStack{
44 | Text("KlarLog")
| |- error: 'Text' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
45 | .onAppear {
46 | // 4.1 Use logger
/Users/admin/builder/spi-builder-workspace/Sources/KlarLog/Sample.swift:45:18: error: 'onAppear(perform:)' is only available in macOS 10.15 or newer
38 | )
39 |
40 | struct SampleView: View {
| `- note: add '@available' attribute to enclosing struct
41 | @State private var logs: String = ""
42 | var body: some View {
| `- note: add '@available' attribute to enclosing property
43 | VStack{
44 | Text("KlarLog")
45 | .onAppear {
| |- error: 'onAppear(perform:)' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
46 | // 4.1 Use logger
47 | logger.general.info("App launched")
/Users/admin/builder/spi-builder-workspace/Sources/KlarLog/Sample.swift:50:13: error: conformance of 'Text' to 'View' is only available in macOS 10.15 or newer
38 | )
39 |
40 | struct SampleView: View {
| `- note: add '@available' attribute to enclosing struct
41 | @State private var logs: String = ""
42 | var body: some View {
| `- note: add '@available' attribute to enclosing property
43 | VStack{
44 | Text("KlarLog")
:
48 | }
49 |
50 | Text(logs)
| |- error: conformance of 'Text' to 'View' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
51 |
52 | Button {
/Users/admin/builder/spi-builder-workspace/Sources/KlarLog/Sample.swift:50:13: error: 'Text' is only available in macOS 10.15 or newer
38 | )
39 |
40 | struct SampleView: View {
| `- note: add '@available' attribute to enclosing struct
41 | @State private var logs: String = ""
42 | var body: some View {
| `- note: add '@available' attribute to enclosing property
43 | VStack{
44 | Text("KlarLog")
:
48 | }
49 |
50 | Text(logs)
| |- error: 'Text' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
51 |
52 | Button {
/Users/admin/builder/spi-builder-workspace/Sources/KlarLog/Sample.swift:52:13: error: conformance of 'Text' to 'View' is only available in macOS 10.15 or newer
38 | )
39 |
40 | struct SampleView: View {
| `- note: add '@available' attribute to enclosing struct
41 | @State private var logs: String = ""
42 | var body: some View {
| `- note: add '@available' attribute to enclosing property
43 | VStack{
44 | Text("KlarLog")
:
50 | Text(logs)
51 |
52 | Button {
| |- error: conformance of 'Text' to 'View' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
53 | // 4.2 Use logger
54 | logger.auth.notice("Signed out")
/Users/admin/builder/spi-builder-workspace/Sources/KlarLog/Sample.swift:52:13: error: 'Button' is only available in macOS 10.15 or newer
38 | )
39 |
40 | struct SampleView: View {
| `- note: add '@available' attribute to enclosing struct
41 | @State private var logs: String = ""
42 | var body: some View {
| `- note: add '@available' attribute to enclosing property
43 | VStack{
44 | Text("KlarLog")
:
50 | Text(logs)
51 |
52 | Button {
| |- error: 'Button' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
53 | // 4.2 Use logger
54 | logger.auth.notice("Signed out")
/Users/admin/builder/spi-builder-workspace/Sources/KlarLog/Sample.swift:52:13: error: conformance of 'Text' to 'View' is only available in macOS 10.15 or newer
38 | )
39 |
40 | struct SampleView: View {
| `- note: add '@available' attribute to enclosing struct
41 | @State private var logs: String = ""
42 | var body: some View {
| `- note: add '@available' attribute to enclosing property
43 | VStack{
44 | Text("KlarLog")
:
50 | Text(logs)
51 |
52 | Button {
| |- error: conformance of 'Text' to 'View' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
53 | // 4.2 Use logger
54 | logger.auth.notice("Signed out")
/Users/admin/builder/spi-builder-workspace/Sources/KlarLog/Sample.swift:56:17: error: conformance of 'Text' to 'View' is only available in macOS 10.15 or newer
38 | )
39 |
40 | struct SampleView: View {
| `- note: add '@available' attribute to enclosing struct
41 | @State private var logs: String = ""
42 | var body: some View {
| `- note: add '@available' attribute to enclosing property
43 | VStack{
44 | Text("KlarLog")
:
54 | logger.auth.notice("Signed out")
55 | } label: {
56 | Text("Sign out")
| |- error: conformance of 'Text' to 'View' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
57 | }
58 |
/Users/admin/builder/spi-builder-workspace/Sources/KlarLog/Sample.swift:56:17: error: 'Text' is only available in macOS 10.15 or newer
38 | )
39 |
40 | struct SampleView: View {
| `- note: add '@available' attribute to enclosing struct
41 | @State private var logs: String = ""
42 | var body: some View {
| `- note: add '@available' attribute to enclosing property
43 | VStack{
44 | Text("KlarLog")
:
54 | logger.auth.notice("Signed out")
55 | } label: {
56 | Text("Sign out")
| |- error: 'Text' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
57 | }
58 |
/Users/admin/builder/spi-builder-workspace/Sources/KlarLog/Sample.swift:55:22: error: conformance of 'Text' to 'View' is only available in macOS 10.15 or newer
38 | )
39 |
40 | struct SampleView: View {
| `- note: add '@available' attribute to enclosing struct
41 | @State private var logs: String = ""
42 | var body: some View {
| `- note: add '@available' attribute to enclosing property
43 | VStack{
44 | Text("KlarLog")
:
53 | // 4.2 Use logger
54 | logger.auth.notice("Signed out")
55 | } label: {
| |- error: conformance of 'Text' to 'View' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
56 | Text("Sign out")
57 | }
/Users/admin/builder/spi-builder-workspace/Sources/KlarLog/Sample.swift:59:13: error: conformance of 'Text' to 'View' is only available in macOS 10.15 or newer
38 | )
39 |
40 | struct SampleView: View {
| `- note: add '@available' attribute to enclosing struct
41 | @State private var logs: String = ""
42 | var body: some View {
| `- note: add '@available' attribute to enclosing property
43 | VStack{
44 | Text("KlarLog")
:
57 | }
58 |
59 | Button {
| |- error: conformance of 'Text' to 'View' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
60 | // 5. access file logger logs
61 | let fileDestination = logger.destinations.file
/Users/admin/builder/spi-builder-workspace/Sources/KlarLog/Sample.swift:59:13: error: 'Button' is only available in macOS 10.15 or newer
38 | )
39 |
40 | struct SampleView: View {
| `- note: add '@available' attribute to enclosing struct
41 | @State private var logs: String = ""
42 | var body: some View {
| `- note: add '@available' attribute to enclosing property
43 | VStack{
44 | Text("KlarLog")
:
57 | }
58 |
59 | Button {
| |- error: 'Button' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
60 | // 5. access file logger logs
61 | let fileDestination = logger.destinations.file
/Users/admin/builder/spi-builder-workspace/Sources/KlarLog/Sample.swift:59:13: error: conformance of 'Text' to 'View' is only available in macOS 10.15 or newer
38 | )
39 |
40 | struct SampleView: View {
| `- note: add '@available' attribute to enclosing struct
41 | @State private var logs: String = ""
42 | var body: some View {
| `- note: add '@available' attribute to enclosing property
43 | VStack{
44 | Text("KlarLog")
:
57 | }
58 |
59 | Button {
| |- error: conformance of 'Text' to 'View' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
60 | // 5. access file logger logs
61 | let fileDestination = logger.destinations.file
/Users/admin/builder/spi-builder-workspace/Sources/KlarLog/Sample.swift:62:17: error: 'Task' is only available in macOS 10.15 or newer
38 | )
39 |
40 | struct SampleView: View {
| `- note: add '@available' attribute to enclosing struct
41 | @State private var logs: String = ""
42 | var body: some View {
| `- note: add '@available' attribute to enclosing property
43 | VStack{
44 | Text("KlarLog")
:
60 | // 5. access file logger logs
61 | let fileDestination = logger.destinations.file
62 | Task{
| |- error: 'Task' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
63 | logs = await fileDestination.readLogs().first ?? "file log empty"
64 | }
/Users/admin/builder/spi-builder-workspace/Sources/KlarLog/Sample.swift:62:17: error: 'init(name:priority:operation:)' is only available in macOS 10.15 or newer
38 | )
39 |
40 | struct SampleView: View {
| `- note: add '@available' attribute to enclosing struct
41 | @State private var logs: String = ""
42 | var body: some View {
| `- note: add '@available' attribute to enclosing property
43 | VStack{
44 | Text("KlarLog")
:
60 | // 5. access file logger logs
61 | let fileDestination = logger.destinations.file
62 | Task{
| |- error: 'init(name:priority:operation:)' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
63 | logs = await fileDestination.readLogs().first ?? "file log empty"
64 | }
/Users/admin/builder/spi-builder-workspace/Sources/KlarLog/Sample.swift:63:21: error: setter for 'logs' is only available in macOS 10.15 or newer
38 | )
39 |
40 | struct SampleView: View {
| `- note: add '@available' attribute to enclosing struct
41 | @State private var logs: String = ""
42 | var body: some View {
| `- note: add '@available' attribute to enclosing property
43 | VStack{
44 | Text("KlarLog")
:
61 | let fileDestination = logger.destinations.file
62 | Task{
63 | logs = await fileDestination.readLogs().first ?? "file log empty"
| |- error: setter for 'logs' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
64 | }
65 | } label: {
/Users/admin/builder/spi-builder-workspace/Sources/KlarLog/Sample.swift:66:17: error: conformance of 'Text' to 'View' is only available in macOS 10.15 or newer
38 | )
39 |
40 | struct SampleView: View {
| `- note: add '@available' attribute to enclosing struct
41 | @State private var logs: String = ""
42 | var body: some View {
| `- note: add '@available' attribute to enclosing property
43 | VStack{
44 | Text("KlarLog")
:
64 | }
65 | } label: {
66 | Text("Load logs")
| |- error: conformance of 'Text' to 'View' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
67 | }
68 | }
/Users/admin/builder/spi-builder-workspace/Sources/KlarLog/Sample.swift:66:17: error: 'Text' is only available in macOS 10.15 or newer
38 | )
39 |
40 | struct SampleView: View {
| `- note: add '@available' attribute to enclosing struct
41 | @State private var logs: String = ""
42 | var body: some View {
| `- note: add '@available' attribute to enclosing property
43 | VStack{
44 | Text("KlarLog")
:
64 | }
65 | } label: {
66 | Text("Load logs")
| |- error: 'Text' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
67 | }
68 | }
/Users/admin/builder/spi-builder-workspace/Sources/KlarLog/Sample.swift:65:22: error: conformance of 'Text' to 'View' is only available in macOS 10.15 or newer
38 | )
39 |
40 | struct SampleView: View {
| `- note: add '@available' attribute to enclosing struct
41 | @State private var logs: String = ""
42 | var body: some View {
| `- note: add '@available' attribute to enclosing property
43 | VStack{
44 | Text("KlarLog")
:
63 | logs = await fileDestination.readLogs().first ?? "file log empty"
64 | }
65 | } label: {
| |- error: conformance of 'Text' to 'View' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
66 | Text("Load logs")
67 | }
/Users/admin/builder/spi-builder-workspace/Sources/KlarLog/Sample.swift:43:15: error: conformance of 'Text' to 'View' is only available in macOS 10.15 or newer
38 | )
39 |
40 | struct SampleView: View {
| `- note: add '@available' attribute to enclosing struct
41 | @State private var logs: String = ""
42 | var body: some View {
| `- note: add '@available' attribute to enclosing property
43 | VStack{
| |- error: conformance of 'Text' to 'View' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
44 | Text("KlarLog")
45 | .onAppear {
/Users/admin/builder/spi-builder-workspace/Sources/KlarLog/Sample.swift:43:15: error: conformance of 'Text' to 'View' is only available in macOS 10.15 or newer
38 | )
39 |
40 | struct SampleView: View {
| `- note: add '@available' attribute to enclosing struct
41 | @State private var logs: String = ""
42 | var body: some View {
| `- note: add '@available' attribute to enclosing property
43 | VStack{
| |- error: conformance of 'Text' to 'View' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
44 | Text("KlarLog")
45 | .onAppear {
/Users/admin/builder/spi-builder-workspace/Sources/KlarLog/Sample.swift:43:15: error: conformance of 'Text' to 'View' is only available in macOS 10.15 or newer
38 | )
39 |
40 | struct SampleView: View {
| `- note: add '@available' attribute to enclosing struct
41 | @State private var logs: String = ""
42 | var body: some View {
| `- note: add '@available' attribute to enclosing property
43 | VStack{
| |- error: conformance of 'Text' to 'View' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
44 | Text("KlarLog")
45 | .onAppear {
[11/11] Compiling KlarLog LocalFileDestination.swift
/Users/admin/builder/spi-builder-workspace/Sources/KlarLog/LogDestinations/LocalFileDestination.swift:116:9: error: 'Task' is only available in macOS 10.15 or newer
39 | /// logsFilrURL = await localFileDestination.logFileURLForSharing()
40 | /// ```
41 | public struct LocalFileDestination: LogDestination, Sendable {
| `- note: add '@available' attribute to enclosing struct
42 | /// The log levels that this destination should handle.
43 | ///
:
105 | /// - level: The severity level.
106 | /// - message: The message text to log.
107 | public func log(subsystem: String, category: String, level: LogLevel, message: String) {
| `- note: add '@available' attribute to enclosing instance method
108 | /// Only perform the action of this destination if it was configured to act on this log level.
109 | guard logForLogLevels.contains(level) else {
:
114 | let logLine = "\(timestamp)\t[\(level.rawValue.uppercased())]\t[\(category)] \(message)"
115 |
116 | Task.detached(priority: .utility) { [fileActor] in
| |- error: 'Task' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
117 | await fileActor.writeLog(logLine)
118 | }
/Users/admin/builder/spi-builder-workspace/Sources/KlarLog/LogDestinations/LocalFileDestination.swift:116:14: error: 'detached(name:priority:operation:)' is only available in macOS 10.15 or newer
39 | /// logsFilrURL = await localFileDestination.logFileURLForSharing()
40 | /// ```
41 | public struct LocalFileDestination: LogDestination, Sendable {
| `- note: add '@available' attribute to enclosing struct
42 | /// The log levels that this destination should handle.
43 | ///
:
105 | /// - level: The severity level.
106 | /// - message: The message text to log.
107 | public func log(subsystem: String, category: String, level: LogLevel, message: String) {
| `- note: add '@available' attribute to enclosing instance method
108 | /// Only perform the action of this destination if it was configured to act on this log level.
109 | guard logForLogLevels.contains(level) else {
:
114 | let logLine = "\(timestamp)\t[\(level.rawValue.uppercased())]\t[\(category)] \(message)"
115 |
116 | Task.detached(priority: .utility) { [fileActor] in
| |- error: 'detached(name:priority:operation:)' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
117 | await fileActor.writeLog(logLine)
118 | }
/Users/admin/builder/spi-builder-workspace/Sources/KlarLog/LogDestinations/LocalFileDestination.swift:172:32: error: 'appending(path:directoryHint:)' is only available in macOS 13.0 or newer
165 |
166 | /// An actor that serializes all file operations for thread-safe access.
167 | private actor FileOperationActor {
| `- note: add '@available' attribute to enclosing actor
168 | private let fileURL: URL
169 | private let maxMessages: Int
170 |
171 | init(fileURL: URL, fileName: String, maxMessages: Int) {
| `- note: add '@available' attribute to enclosing initializer
172 | self.fileURL = fileURL.appending(path: "\(fileName).txt")
| |- error: 'appending(path:directoryHint:)' is only available in macOS 13.0 or newer
| `- note: add 'if #available' version check
173 | self.maxMessages = maxMessages
174 | }
BUILD FAILURE 6.2 macosSpm