The Swift Package Index logo.Swift Package Index

Has it really been five years since Swift Package Index launched? Read our anniversary blog post!

Build Information

Failed to build FuturaLog, reference master (088587), with Swift 6.1 for Linux on 25 Apr 2025 14:40:18 UTC.

Build Command

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

Build Log

========================================
RunAll
========================================
Builder version: 4.61.0
Interrupt handler set up.
========================================
Checkout
========================================
Clone URL: https://github.com/kaqu/futuralog.git
Reference: master
Initialized empty Git repository in /host/spi-builder-workspace/.git/
hint: Using 'master' as the name for the initial branch. This default branch name
hint: is subject to change. To configure the initial branch name to use in all
hint: of your new repositories, which will suppress this warning, call:
hint:
hint: 	git config --global init.defaultBranch <name>
hint:
hint: Names commonly chosen instead of 'master' are 'main', 'trunk' and
hint: 'development'. The just-created branch can be renamed via this command:
hint:
hint: 	git branch -m <name>
From https://github.com/kaqu/futuralog
 * branch            master     -> FETCH_HEAD
 * [new branch]      master     -> origin/master
HEAD is now at 088587a Update README.md
Cloned https://github.com/kaqu/futuralog.git
Revision (git rev-parse @):
088587a555814bd6449253d5d18ddd181c2e6f29
SUCCESS checkout https://github.com/kaqu/futuralog.git at master
========================================
Build
========================================
Selected platform:         linux
Swift version:             6.1
Building package at path:  $PWD
https://github.com/kaqu/futuralog.git
https://github.com/kaqu/futuralog.git
WARNING: environment variable SUPPRESS_SWIFT_6_FLAGS is not set
{
  "dependencies" : [
  ],
  "manifest_display_name" : "FuturaLog",
  "name" : "FuturaLog",
  "path" : "/host/spi-builder-workspace",
  "platforms" : [
  ],
  "products" : [
    {
      "name" : "FuturaLog",
      "targets" : [
        "FuturaLog"
      ],
      "type" : {
        "library" : [
          "automatic"
        ]
      }
    }
  ],
  "targets" : [
    {
      "c99name" : "FuturaLogTests",
      "module_type" : "SwiftTarget",
      "name" : "FuturaLogTests",
      "path" : "Tests/FuturaLogTests",
      "sources" : [
        "FuturaLogTests.swift"
      ],
      "target_dependencies" : [
        "FuturaLog"
      ],
      "type" : "test"
    },
    {
      "c99name" : "FuturaLog",
      "module_type" : "SwiftTarget",
      "name" : "FuturaLog",
      "path" : "Sources/FuturaLog",
      "product_memberships" : [
        "FuturaLog"
      ],
      "sources" : [
        "CrashHandling/CrashCatcher.swift",
        "FlushableTextOutputStream.swift",
        "Log.swift",
        "LogFormatter.swift",
        "LogReceiver.swift",
        "LogRecievers/LogFilePrinter.swift",
        "LogRecievers/LogFileStorage.swift",
        "LogRecievers/LogMemoryStorage.swift",
        "LogRecievers/LogPrinter.swift",
        "LogStorage.swift",
        "Logger.swift",
        "Server/FlatLog.swift",
        "Server/LogEnvironment.swift",
        "Server/LogPackage.swift",
        "Server/LogServer.swift"
      ],
      "type" : "library"
    }
  ],
  "tools_version" : "4.0"
}
Running build ...
bash -c docker run --pull=always --rm -v "checkouts-4606859-0":/host -w "$PWD" registry.gitlab.com/finestructure/spi-images:basic-6.1-latest swift build --triple x86_64-unknown-linux-gnu -Xswiftc -Xfrontend -Xswiftc -stats-output-dir -Xswiftc -Xfrontend -Xswiftc .stats -Xswiftc -strict-concurrency=complete -Xswiftc -enable-upcoming-feature -Xswiftc StrictConcurrency -Xswiftc -enable-upcoming-feature -Xswiftc DisableOutwardActorInference -Xswiftc -enable-upcoming-feature -Xswiftc GlobalActorIsolatedTypesUsability -Xswiftc -enable-upcoming-feature -Xswiftc InferSendableFromCaptures 2>&1
basic-6.1-latest: Pulling from finestructure/spi-images
Digest: sha256:3bdcac04179f4ed3e5b8e9dbd6e74bbf5ebc0f4fde48bbaad7d1e5c757e65bcb
Status: Image is up to date for registry.gitlab.com/finestructure/spi-images:basic-6.1-latest
Building for debugging...
[0/2] Write sources
[1/2] Write swift-version-24593BA9C3E375BF.txt
error: emit-module command failed with exit code 1 (use -v to see invocation)
[3/17] Emitting module FuturaLog
/host/spi-builder-workspace/Sources/FuturaLog/CrashHandling/CrashCatcher.swift:32:51: error: cannot find type 'NSException' in scope
30 | }
31 |
32 | fileprivate func exceptionLogHandler(_ exception: NSException)-> Swift.Void {
   |                                                   `- error: cannot find type 'NSException' in scope
33 |     Logger.send(Log(.crash, message: "Exception: \(exception)\n\n\(Thread.callStackSymbols.joined(separator: "\n"))\n"))
34 |     Logger.flush()
/host/spi-builder-workspace/Sources/FuturaLog/CrashHandling/CrashCatcher.swift:43:52: error: cannot find type 'NSException' in scope
41 | }
42 |
43 | fileprivate func exceptionVoidHandler(_ exception: NSException)-> Swift.Void { /* void */ }
   |                                                    `- error: cannot find type 'NSException' in scope
44 |
45 | fileprivate func signalVoidHandler(_ signal: Int32)-> Swift.Void { exit(signal) }
/host/spi-builder-workspace/Sources/FuturaLog/Log.swift:36:23: warning: static property 'all' is not concurrency-safe because non-'Sendable' type '[LogCategory]' may have shared mutable state; this is an error in the Swift 6 language mode
23 | }
24 |
25 | public enum LogCategory : String, Codable {
   |             `- note: consider making enum 'LogCategory' conform to the 'Sendable' protocol
26 |
27 |     case crash
   :
34 |     case void // not present in `all` property since void is special type which is ignored by default
35 |
36 |     public static let all: [LogCategory] = [.crash, .special, .error, .warning, .debug, .verbose, .info]
   |                       |- warning: static property 'all' is not concurrency-safe because non-'Sendable' type '[LogCategory]' may have shared mutable state; this is an error in the Swift 6 language mode
   |                       |- note: add '@MainActor' to make static property 'all' part of global actor 'MainActor'
   |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
37 | }
38 |
/host/spi-builder-workspace/Sources/FuturaLog/Logger.swift:7:28: warning: static property 'recievers' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
 5 |     public static let sessionID: String = UUID().uuidString
 6 |
 7 |     fileprivate static var recievers: Array<LogReceiver> = []
   |                            |- warning: static property 'recievers' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
   |                            |- note: convert 'recievers' to a 'let' constant to make 'Sendable' shared state immutable
   |                            |- note: add '@MainActor' to make static property 'recievers' part of global actor 'MainActor'
   |                            `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 8 |     fileprivate static let logsQueue = DispatchQueue(label: "futura.log.mainQueue", qos: .utility)
 9 | }
/host/spi-builder-workspace/Sources/FuturaLog/Server/LogEnvironment.swift:22:16: warning: 'Hashable.hashValue' is deprecated as a protocol requirement; conform type 'LogEnvironment' to 'Hashable' by implementing 'hash(into:)' instead
20 | extension LogEnvironment : Hashable {
21 |
22 |     public var hashValue: Int {
   |                `- warning: 'Hashable.hashValue' is deprecated as a protocol requirement; conform type 'LogEnvironment' to 'Hashable' by implementing 'hash(into:)' instead
23 |         return "\(self.name)\(self.appVersion)\(self.platform ?? "N/A")\(self.osInfo ?? "N/A")\(self.info ?? "N/A")".hashValue
24 |     }
/host/spi-builder-workspace/Sources/FuturaLog/Server/LogServer.swift:16:35: error: 'URLSession' is unavailable: This type has moved to the FoundationNetworking module. Import that module to use it.
14 |     public let allowedCategories: [LogCategory] = LogCategory.all
15 |
16 |     private let logServerSession: URLSession = URLSession(configuration: URLSessionConfiguration.ephemeral)
   |                                   `- error: 'URLSession' is unavailable: This type has moved to the FoundationNetworking module. Import that module to use it.
17 |
18 |     private let synchronizationQueue = DispatchQueue(label: "futura.log.server.syncQueue")
Foundation.URLSession:2:18: note: 'URLSession' has been explicitly marked unavailable here
1 | @available(*, unavailable, message: "This type has moved to the FoundationNetworking module. Import that module to use it.")
2 | public typealias URLSession = AnyObject
  |                  `- note: 'URLSession' has been explicitly marked unavailable here
/host/spi-builder-workspace/Sources/FuturaLog/Server/LogServer.swift:16:48: error: 'URLSession' (aka 'AnyObject') cannot be constructed because it has no accessible initializers
14 |     public let allowedCategories: [LogCategory] = LogCategory.all
15 |
16 |     private let logServerSession: URLSession = URLSession(configuration: URLSessionConfiguration.ephemeral)
   |                                                `- error: 'URLSession' (aka 'AnyObject') cannot be constructed because it has no accessible initializers
17 |
18 |     private let synchronizationQueue = DispatchQueue(label: "futura.log.server.syncQueue")
/host/spi-builder-workspace/Sources/FuturaLog/Server/LogServer.swift:16:98: error: type 'URLSessionConfiguration' (aka 'AnyObject') has no member 'ephemeral'
14 |     public let allowedCategories: [LogCategory] = LogCategory.all
15 |
16 |     private let logServerSession: URLSession = URLSession(configuration: URLSessionConfiguration.ephemeral)
   |                                                                                                  `- error: type 'URLSessionConfiguration' (aka 'AnyObject') has no member 'ephemeral'
17 |
18 |     private let synchronizationQueue = DispatchQueue(label: "futura.log.server.syncQueue")
[4/17] Compiling FuturaLog CrashCatcher.swift
/host/spi-builder-workspace/Sources/FuturaLog/CrashHandling/CrashCatcher.swift:32:51: error: cannot find type 'NSException' in scope
30 | }
31 |
32 | fileprivate func exceptionLogHandler(_ exception: NSException)-> Swift.Void {
   |                                                   `- error: cannot find type 'NSException' in scope
33 |     Logger.send(Log(.crash, message: "Exception: \(exception)\n\n\(Thread.callStackSymbols.joined(separator: "\n"))\n"))
34 |     Logger.flush()
/host/spi-builder-workspace/Sources/FuturaLog/CrashHandling/CrashCatcher.swift:43:52: error: cannot find type 'NSException' in scope
41 | }
42 |
43 | fileprivate func exceptionVoidHandler(_ exception: NSException)-> Swift.Void { /* void */ }
   |                                                    `- error: cannot find type 'NSException' in scope
44 |
45 | fileprivate func signalVoidHandler(_ signal: Int32)-> Swift.Void { exit(signal) }
/host/spi-builder-workspace/Sources/FuturaLog/CrashHandling/CrashCatcher.swift:8:13: error: cannot find 'NSSetUncaughtExceptionHandler' in scope
 6 |         switch mode {
 7 |         case .logging:
 8 |             NSSetUncaughtExceptionHandler(exceptionLogHandler);
   |             `- error: cannot find 'NSSetUncaughtExceptionHandler' in scope
 9 |             signal(SIGABRT, signalLogHandler);
10 |             signal(SIGILL, signalLogHandler);
/host/spi-builder-workspace/Sources/FuturaLog/CrashHandling/CrashCatcher.swift:16:13: error: cannot find 'NSSetUncaughtExceptionHandler' in scope
14 |             signal(SIGPIPE, signalLogHandler);
15 |         case .hiding:
16 |             NSSetUncaughtExceptionHandler(exceptionVoidHandler);
   |             `- error: cannot find 'NSSetUncaughtExceptionHandler' in scope
17 |             signal(SIGABRT, signalVoidHandler);
18 |             signal(SIGILL, signalVoidHandler);
[5/17] Compiling FuturaLog FlushableTextOutputStream.swift
/host/spi-builder-workspace/Sources/FuturaLog/CrashHandling/CrashCatcher.swift:32:51: error: cannot find type 'NSException' in scope
30 | }
31 |
32 | fileprivate func exceptionLogHandler(_ exception: NSException)-> Swift.Void {
   |                                                   `- error: cannot find type 'NSException' in scope
33 |     Logger.send(Log(.crash, message: "Exception: \(exception)\n\n\(Thread.callStackSymbols.joined(separator: "\n"))\n"))
34 |     Logger.flush()
/host/spi-builder-workspace/Sources/FuturaLog/CrashHandling/CrashCatcher.swift:43:52: error: cannot find type 'NSException' in scope
41 | }
42 |
43 | fileprivate func exceptionVoidHandler(_ exception: NSException)-> Swift.Void { /* void */ }
   |                                                    `- error: cannot find type 'NSException' in scope
44 |
45 | fileprivate func signalVoidHandler(_ signal: Int32)-> Swift.Void { exit(signal) }
/host/spi-builder-workspace/Sources/FuturaLog/CrashHandling/CrashCatcher.swift:8:13: error: cannot find 'NSSetUncaughtExceptionHandler' in scope
 6 |         switch mode {
 7 |         case .logging:
 8 |             NSSetUncaughtExceptionHandler(exceptionLogHandler);
   |             `- error: cannot find 'NSSetUncaughtExceptionHandler' in scope
 9 |             signal(SIGABRT, signalLogHandler);
10 |             signal(SIGILL, signalLogHandler);
/host/spi-builder-workspace/Sources/FuturaLog/CrashHandling/CrashCatcher.swift:16:13: error: cannot find 'NSSetUncaughtExceptionHandler' in scope
14 |             signal(SIGPIPE, signalLogHandler);
15 |         case .hiding:
16 |             NSSetUncaughtExceptionHandler(exceptionVoidHandler);
   |             `- error: cannot find 'NSSetUncaughtExceptionHandler' in scope
17 |             signal(SIGABRT, signalVoidHandler);
18 |             signal(SIGILL, signalVoidHandler);
[6/18] Compiling FuturaLog LogEnvironment.swift
/host/spi-builder-workspace/Sources/FuturaLog/Server/LogEnvironment.swift:22:16: warning: 'Hashable.hashValue' is deprecated as a protocol requirement; conform type 'LogEnvironment' to 'Hashable' by implementing 'hash(into:)' instead
20 | extension LogEnvironment : Hashable {
21 |
22 |     public var hashValue: Int {
   |                `- warning: 'Hashable.hashValue' is deprecated as a protocol requirement; conform type 'LogEnvironment' to 'Hashable' by implementing 'hash(into:)' instead
23 |         return "\(self.name)\(self.appVersion)\(self.platform ?? "N/A")\(self.osInfo ?? "N/A")\(self.info ?? "N/A")".hashValue
24 |     }
[7/18] Compiling FuturaLog LogPackage.swift
/host/spi-builder-workspace/Sources/FuturaLog/Server/LogEnvironment.swift:22:16: warning: 'Hashable.hashValue' is deprecated as a protocol requirement; conform type 'LogEnvironment' to 'Hashable' by implementing 'hash(into:)' instead
20 | extension LogEnvironment : Hashable {
21 |
22 |     public var hashValue: Int {
   |                `- warning: 'Hashable.hashValue' is deprecated as a protocol requirement; conform type 'LogEnvironment' to 'Hashable' by implementing 'hash(into:)' instead
23 |         return "\(self.name)\(self.appVersion)\(self.platform ?? "N/A")\(self.osInfo ?? "N/A")\(self.info ?? "N/A")".hashValue
24 |     }
[8/18] Compiling FuturaLog LogPrinter.swift
[9/18] Compiling FuturaLog LogStorage.swift
[10/18] Compiling FuturaLog Logger.swift
/host/spi-builder-workspace/Sources/FuturaLog/Logger.swift:7:28: warning: static property 'recievers' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
 5 |     public static let sessionID: String = UUID().uuidString
 6 |
 7 |     fileprivate static var recievers: Array<LogReceiver> = []
   |                            |- warning: static property 'recievers' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
   |                            |- note: convert 'recievers' to a 'let' constant to make 'Sendable' shared state immutable
   |                            |- note: add '@MainActor' to make static property 'recievers' part of global actor 'MainActor'
   |                            `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 8 |     fileprivate static let logsQueue = DispatchQueue(label: "futura.log.mainQueue", qos: .utility)
 9 | }
/host/spi-builder-workspace/Sources/FuturaLog/Logger.swift:14:44: warning: capture of 'reciever' with non-sendable type 'any LogReceiver' in a '@Sendable' closure; this is an error in the Swift 6 language mode
12 |
13 |     static func addReciever(_ reciever: LogReceiver) {
14 |         logsQueue.async { recievers.append(reciever) }
   |                                            `- warning: capture of 'reciever' with non-sendable type 'any LogReceiver' in a '@Sendable' closure; this is an error in the Swift 6 language mode
15 |     }
16 |
/host/spi-builder-workspace/Sources/FuturaLog/LogReceiver.swift:3:17: note: protocol 'LogReceiver' does not conform to the 'Sendable' protocol
 1 | import Foundation
 2 |
 3 | public protocol LogReceiver {
   |                 `- note: protocol 'LogReceiver' does not conform to the 'Sendable' protocol
 4 |
 5 |     var allowedCategories: [LogCategory] { get }
/host/spi-builder-workspace/Sources/FuturaLog/Logger.swift:18:58: warning: capture of 'log' with non-sendable type 'Log' in a '@Sendable' closure; this is an error in the Swift 6 language mode
16 |
17 |     static func send(_ log: Log) {
18 |         logsQueue.async { recievers.forEach { $0.recieve(log) } }
   |                                                          `- warning: capture of 'log' with non-sendable type 'Log' in a '@Sendable' closure; this is an error in the Swift 6 language mode
19 |     }
20 |
/host/spi-builder-workspace/Sources/FuturaLog/Log.swift:3:15: note: consider making struct 'Log' conform to the 'Sendable' protocol
 1 | import Foundation
 2 |
 3 | public struct Log : Codable {
   |               `- note: consider making struct 'Log' conform to the 'Sendable' protocol
 4 |
 5 |     public let category: LogCategory
/host/spi-builder-workspace/Sources/FuturaLog/Logger.swift:18:58: warning: capture of 'log' with non-sendable type 'Log' in an isolated closure; this is an error in the Swift 6 language mode
16 |
17 |     static func send(_ log: Log) {
18 |         logsQueue.async { recievers.forEach { $0.recieve(log) } }
   |                                                          `- warning: capture of 'log' with non-sendable type 'Log' in an isolated closure; this is an error in the Swift 6 language mode
19 |     }
20 |
/host/spi-builder-workspace/Sources/FuturaLog/Log.swift:3:15: note: consider making struct 'Log' conform to the 'Sendable' protocol
 1 | import Foundation
 2 |
 3 | public struct Log : Codable {
   |               `- note: consider making struct 'Log' conform to the 'Sendable' protocol
 4 |
 5 |     public let category: LogCategory
[11/18] Compiling FuturaLog FlatLog.swift
/host/spi-builder-workspace/Sources/FuturaLog/Logger.swift:7:28: warning: static property 'recievers' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
 5 |     public static let sessionID: String = UUID().uuidString
 6 |
 7 |     fileprivate static var recievers: Array<LogReceiver> = []
   |                            |- warning: static property 'recievers' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
   |                            |- note: convert 'recievers' to a 'let' constant to make 'Sendable' shared state immutable
   |                            |- note: add '@MainActor' to make static property 'recievers' part of global actor 'MainActor'
   |                            `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 8 |     fileprivate static let logsQueue = DispatchQueue(label: "futura.log.mainQueue", qos: .utility)
 9 | }
/host/spi-builder-workspace/Sources/FuturaLog/Logger.swift:14:44: warning: capture of 'reciever' with non-sendable type 'any LogReceiver' in a '@Sendable' closure; this is an error in the Swift 6 language mode
12 |
13 |     static func addReciever(_ reciever: LogReceiver) {
14 |         logsQueue.async { recievers.append(reciever) }
   |                                            `- warning: capture of 'reciever' with non-sendable type 'any LogReceiver' in a '@Sendable' closure; this is an error in the Swift 6 language mode
15 |     }
16 |
/host/spi-builder-workspace/Sources/FuturaLog/LogReceiver.swift:3:17: note: protocol 'LogReceiver' does not conform to the 'Sendable' protocol
 1 | import Foundation
 2 |
 3 | public protocol LogReceiver {
   |                 `- note: protocol 'LogReceiver' does not conform to the 'Sendable' protocol
 4 |
 5 |     var allowedCategories: [LogCategory] { get }
/host/spi-builder-workspace/Sources/FuturaLog/Logger.swift:18:58: warning: capture of 'log' with non-sendable type 'Log' in a '@Sendable' closure; this is an error in the Swift 6 language mode
16 |
17 |     static func send(_ log: Log) {
18 |         logsQueue.async { recievers.forEach { $0.recieve(log) } }
   |                                                          `- warning: capture of 'log' with non-sendable type 'Log' in a '@Sendable' closure; this is an error in the Swift 6 language mode
19 |     }
20 |
/host/spi-builder-workspace/Sources/FuturaLog/Log.swift:3:15: note: consider making struct 'Log' conform to the 'Sendable' protocol
 1 | import Foundation
 2 |
 3 | public struct Log : Codable {
   |               `- note: consider making struct 'Log' conform to the 'Sendable' protocol
 4 |
 5 |     public let category: LogCategory
/host/spi-builder-workspace/Sources/FuturaLog/Logger.swift:18:58: warning: capture of 'log' with non-sendable type 'Log' in an isolated closure; this is an error in the Swift 6 language mode
16 |
17 |     static func send(_ log: Log) {
18 |         logsQueue.async { recievers.forEach { $0.recieve(log) } }
   |                                                          `- warning: capture of 'log' with non-sendable type 'Log' in an isolated closure; this is an error in the Swift 6 language mode
19 |     }
20 |
/host/spi-builder-workspace/Sources/FuturaLog/Log.swift:3:15: note: consider making struct 'Log' conform to the 'Sendable' protocol
 1 | import Foundation
 2 |
 3 | public struct Log : Codable {
   |               `- note: consider making struct 'Log' conform to the 'Sendable' protocol
 4 |
 5 |     public let category: LogCategory
[12/18] Compiling FuturaLog Log.swift
/host/spi-builder-workspace/Sources/FuturaLog/Log.swift:36:23: warning: static property 'all' is not concurrency-safe because non-'Sendable' type '[LogCategory]' may have shared mutable state; this is an error in the Swift 6 language mode
23 | }
24 |
25 | public enum LogCategory : String, Codable {
   |             `- note: consider making enum 'LogCategory' conform to the 'Sendable' protocol
26 |
27 |     case crash
   :
34 |     case void // not present in `all` property since void is special type which is ignored by default
35 |
36 |     public static let all: [LogCategory] = [.crash, .special, .error, .warning, .debug, .verbose, .info]
   |                       |- warning: static property 'all' is not concurrency-safe because non-'Sendable' type '[LogCategory]' may have shared mutable state; this is an error in the Swift 6 language mode
   |                       |- note: add '@MainActor' to make static property 'all' part of global actor 'MainActor'
   |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
37 | }
38 |
[13/18] Compiling FuturaLog LogFormatter.swift
/host/spi-builder-workspace/Sources/FuturaLog/Log.swift:36:23: warning: static property 'all' is not concurrency-safe because non-'Sendable' type '[LogCategory]' may have shared mutable state; this is an error in the Swift 6 language mode
23 | }
24 |
25 | public enum LogCategory : String, Codable {
   |             `- note: consider making enum 'LogCategory' conform to the 'Sendable' protocol
26 |
27 |     case crash
   :
34 |     case void // not present in `all` property since void is special type which is ignored by default
35 |
36 |     public static let all: [LogCategory] = [.crash, .special, .error, .warning, .debug, .verbose, .info]
   |                       |- warning: static property 'all' is not concurrency-safe because non-'Sendable' type '[LogCategory]' may have shared mutable state; this is an error in the Swift 6 language mode
   |                       |- note: add '@MainActor' to make static property 'all' part of global actor 'MainActor'
   |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
37 | }
38 |
[14/18] Compiling FuturaLog LogFileStorage.swift
/host/spi-builder-workspace/Sources/FuturaLog/LogRecievers/LogFileStorage.swift:27:19: warning: capture of 'self' with non-sendable type 'LogFileStorage' in a '@Sendable' closure; this is an error in the Swift 6 language mode
  2 |
  3 | // TODO: add cycling storage, session separated and date separated modes
  4 | public final class LogFileStorage : LogReceiver {
    |                    `- note: class 'LogFileStorage' does not conform to the 'Sendable' protocol
  5 |
  6 |     public static let jsonDecoder = JSONDecoder()
    :
 25 |     public func recieve(_ log: Log) {
 26 |         synchronizationQueue.async {
 27 |             guard self.allowedCategories.contains(log.category) else {
    |                   `- warning: capture of 'self' with non-sendable type 'LogFileStorage' in a '@Sendable' closure; this is an error in the Swift 6 language mode
 28 |                 return
 29 |             }
/host/spi-builder-workspace/Sources/FuturaLog/LogRecievers/LogFileStorage.swift:27:51: warning: capture of 'log' with non-sendable type 'Log' in a '@Sendable' closure; this is an error in the Swift 6 language mode
 25 |     public func recieve(_ log: Log) {
 26 |         synchronizationQueue.async {
 27 |             guard self.allowedCategories.contains(log.category) else {
    |                                                   `- warning: capture of 'log' with non-sendable type 'Log' in a '@Sendable' closure; this is an error in the Swift 6 language mode
 28 |                 return
 29 |             }
/host/spi-builder-workspace/Sources/FuturaLog/Log.swift:3:15: note: consider making struct 'Log' conform to the 'Sendable' protocol
 1 | import Foundation
 2 |
 3 | public struct Log : Codable {
   |               `- note: consider making struct 'Log' conform to the 'Sendable' protocol
 4 |
 5 |     public let category: LogCategory
/host/spi-builder-workspace/Sources/FuturaLog/LogRecievers/LogFileStorage.swift:53:33: warning: result of call to 'createFile(atPath:contents:attributes:)' is unused
 51 |
 52 |         if !FileManager.default.fileExists(atPath: filePath) {
 53 |             FileManager.default.createFile(atPath: filePath, contents: Data(), attributes: nil)
    |                                 `- warning: result of call to 'createFile(atPath:contents:attributes:)' is unused
 54 |         } else { /* nothing */ }
 55 |
/host/spi-builder-workspace/Sources/FuturaLog/LogRecievers/LogMemoryStorage.swift:20:19: warning: capture of 'self' with non-sendable type 'LogMemoryStorage' in a '@Sendable' closure; this is an error in the Swift 6 language mode
 1 | import Foundation
 2 |
 3 | public final class LogMemoryStorage : LogReceiver {
   |                    `- note: class 'LogMemoryStorage' does not conform to the 'Sendable' protocol
 4 |
 5 |     fileprivate let synchronizationQueue = DispatchQueue(label: "futura.log.storage.memory.syncQueue")
   :
18 |     public func recieve(_ log: Log) {
19 |         synchronizationQueue.async {
20 |             guard self.allowedCategories.contains(log.category) else {
   |                   `- warning: capture of 'self' with non-sendable type 'LogMemoryStorage' in a '@Sendable' closure; this is an error in the Swift 6 language mode
21 |                 return
22 |             }
/host/spi-builder-workspace/Sources/FuturaLog/LogRecievers/LogMemoryStorage.swift:20:51: warning: capture of 'log' with non-sendable type 'Log' in a '@Sendable' closure; this is an error in the Swift 6 language mode
18 |     public func recieve(_ log: Log) {
19 |         synchronizationQueue.async {
20 |             guard self.allowedCategories.contains(log.category) else {
   |                                                   `- warning: capture of 'log' with non-sendable type 'Log' in a '@Sendable' closure; this is an error in the Swift 6 language mode
21 |                 return
22 |             }
/host/spi-builder-workspace/Sources/FuturaLog/Log.swift:3:15: note: consider making struct 'Log' conform to the 'Sendable' protocol
 1 | import Foundation
 2 |
 3 | public struct Log : Codable {
   |               `- note: consider making struct 'Log' conform to the 'Sendable' protocol
 4 |
 5 |     public let category: LogCategory
[15/18] Compiling FuturaLog LogMemoryStorage.swift
/host/spi-builder-workspace/Sources/FuturaLog/LogRecievers/LogFileStorage.swift:27:19: warning: capture of 'self' with non-sendable type 'LogFileStorage' in a '@Sendable' closure; this is an error in the Swift 6 language mode
  2 |
  3 | // TODO: add cycling storage, session separated and date separated modes
  4 | public final class LogFileStorage : LogReceiver {
    |                    `- note: class 'LogFileStorage' does not conform to the 'Sendable' protocol
  5 |
  6 |     public static let jsonDecoder = JSONDecoder()
    :
 25 |     public func recieve(_ log: Log) {
 26 |         synchronizationQueue.async {
 27 |             guard self.allowedCategories.contains(log.category) else {
    |                   `- warning: capture of 'self' with non-sendable type 'LogFileStorage' in a '@Sendable' closure; this is an error in the Swift 6 language mode
 28 |                 return
 29 |             }
/host/spi-builder-workspace/Sources/FuturaLog/LogRecievers/LogFileStorage.swift:27:51: warning: capture of 'log' with non-sendable type 'Log' in a '@Sendable' closure; this is an error in the Swift 6 language mode
 25 |     public func recieve(_ log: Log) {
 26 |         synchronizationQueue.async {
 27 |             guard self.allowedCategories.contains(log.category) else {
    |                                                   `- warning: capture of 'log' with non-sendable type 'Log' in a '@Sendable' closure; this is an error in the Swift 6 language mode
 28 |                 return
 29 |             }
/host/spi-builder-workspace/Sources/FuturaLog/Log.swift:3:15: note: consider making struct 'Log' conform to the 'Sendable' protocol
 1 | import Foundation
 2 |
 3 | public struct Log : Codable {
   |               `- note: consider making struct 'Log' conform to the 'Sendable' protocol
 4 |
 5 |     public let category: LogCategory
/host/spi-builder-workspace/Sources/FuturaLog/LogRecievers/LogFileStorage.swift:53:33: warning: result of call to 'createFile(atPath:contents:attributes:)' is unused
 51 |
 52 |         if !FileManager.default.fileExists(atPath: filePath) {
 53 |             FileManager.default.createFile(atPath: filePath, contents: Data(), attributes: nil)
    |                                 `- warning: result of call to 'createFile(atPath:contents:attributes:)' is unused
 54 |         } else { /* nothing */ }
 55 |
/host/spi-builder-workspace/Sources/FuturaLog/LogRecievers/LogMemoryStorage.swift:20:19: warning: capture of 'self' with non-sendable type 'LogMemoryStorage' in a '@Sendable' closure; this is an error in the Swift 6 language mode
 1 | import Foundation
 2 |
 3 | public final class LogMemoryStorage : LogReceiver {
   |                    `- note: class 'LogMemoryStorage' does not conform to the 'Sendable' protocol
 4 |
 5 |     fileprivate let synchronizationQueue = DispatchQueue(label: "futura.log.storage.memory.syncQueue")
   :
18 |     public func recieve(_ log: Log) {
19 |         synchronizationQueue.async {
20 |             guard self.allowedCategories.contains(log.category) else {
   |                   `- warning: capture of 'self' with non-sendable type 'LogMemoryStorage' in a '@Sendable' closure; this is an error in the Swift 6 language mode
21 |                 return
22 |             }
/host/spi-builder-workspace/Sources/FuturaLog/LogRecievers/LogMemoryStorage.swift:20:51: warning: capture of 'log' with non-sendable type 'Log' in a '@Sendable' closure; this is an error in the Swift 6 language mode
18 |     public func recieve(_ log: Log) {
19 |         synchronizationQueue.async {
20 |             guard self.allowedCategories.contains(log.category) else {
   |                                                   `- warning: capture of 'log' with non-sendable type 'Log' in a '@Sendable' closure; this is an error in the Swift 6 language mode
21 |                 return
22 |             }
/host/spi-builder-workspace/Sources/FuturaLog/Log.swift:3:15: note: consider making struct 'Log' conform to the 'Sendable' protocol
 1 | import Foundation
 2 |
 3 | public struct Log : Codable {
   |               `- note: consider making struct 'Log' conform to the 'Sendable' protocol
 4 |
 5 |     public let category: LogCategory
[16/18] Compiling FuturaLog LogServer.swift
/host/spi-builder-workspace/Sources/FuturaLog/Server/LogServer.swift:16:35: error: 'URLSession' is unavailable: This type has moved to the FoundationNetworking module. Import that module to use it.
14 |     public let allowedCategories: [LogCategory] = LogCategory.all
15 |
16 |     private let logServerSession: URLSession = URLSession(configuration: URLSessionConfiguration.ephemeral)
   |                                   `- error: 'URLSession' is unavailable: This type has moved to the FoundationNetworking module. Import that module to use it.
17 |
18 |     private let synchronizationQueue = DispatchQueue(label: "futura.log.server.syncQueue")
Foundation.URLSession:2:18: note: 'URLSession' has been explicitly marked unavailable here
1 | @available(*, unavailable, message: "This type has moved to the FoundationNetworking module. Import that module to use it.")
2 | public typealias URLSession = AnyObject
  |                  `- note: 'URLSession' has been explicitly marked unavailable here
/host/spi-builder-workspace/Sources/FuturaLog/Server/LogServer.swift:16:48: error: 'URLSession' (aka 'AnyObject') cannot be constructed because it has no accessible initializers
14 |     public let allowedCategories: [LogCategory] = LogCategory.all
15 |
16 |     private let logServerSession: URLSession = URLSession(configuration: URLSessionConfiguration.ephemeral)
   |                                                `- error: 'URLSession' (aka 'AnyObject') cannot be constructed because it has no accessible initializers
17 |
18 |     private let synchronizationQueue = DispatchQueue(label: "futura.log.server.syncQueue")
/host/spi-builder-workspace/Sources/FuturaLog/Server/LogServer.swift:16:98: error: type 'URLSessionConfiguration' (aka 'AnyObject') has no member 'ephemeral'
14 |     public let allowedCategories: [LogCategory] = LogCategory.all
15 |
16 |     private let logServerSession: URLSession = URLSession(configuration: URLSessionConfiguration.ephemeral)
   |                                                                                                  `- error: type 'URLSessionConfiguration' (aka 'AnyObject') has no member 'ephemeral'
17 |
18 |     private let synchronizationQueue = DispatchQueue(label: "futura.log.server.syncQueue")
/host/spi-builder-workspace/Sources/FuturaLog/Server/LogServer.swift:40:19: warning: capture of 'self' with non-sendable type 'LogServer' in a '@Sendable' closure; this is an error in the Swift 6 language mode
 1 | import Foundation
 2 |
 3 | public final class LogServer : LogReceiver {
   |                    `- note: class 'LogServer' does not conform to the 'Sendable' protocol
 4 |
 5 |     public static let jsonEncoder: JSONEncoder = {
   :
38 |     public func recieve(_ log: Log) {
39 |         synchronizationQueue.async {
40 |             guard self.allowedCategories.contains(log.category) else {
   |                   `- warning: capture of 'self' with non-sendable type 'LogServer' in a '@Sendable' closure; this is an error in the Swift 6 language mode
41 |                 return
42 |             }
/host/spi-builder-workspace/Sources/FuturaLog/Server/LogServer.swift:40:51: warning: capture of 'log' with non-sendable type 'Log' in a '@Sendable' closure; this is an error in the Swift 6 language mode
38 |     public func recieve(_ log: Log) {
39 |         synchronizationQueue.async {
40 |             guard self.allowedCategories.contains(log.category) else {
   |                                                   `- warning: capture of 'log' with non-sendable type 'Log' in a '@Sendable' closure; this is an error in the Swift 6 language mode
41 |                 return
42 |             }
/host/spi-builder-workspace/Sources/FuturaLog/Log.swift:3:15: note: consider making struct 'Log' conform to the 'Sendable' protocol
 1 | import Foundation
 2 |
 3 | public struct Log : Codable {
   |               `- note: consider making struct 'Log' conform to the 'Sendable' protocol
 4 |
 5 |     public let category: LogCategory
/host/spi-builder-workspace/Sources/FuturaLog/Server/LogServer.swift:59:23: error: cannot find 'URLRequest' in scope
57 |
58 |     private func uploadLogs() {
59 |         var request = URLRequest(url: serverURL.appendingPathComponent("uploadLogs"))
   |                       `- error: cannot find 'URLRequest' in scope
60 |         request.httpBody = try? LogServer.jsonEncoder.encode(LogPackage(applicationID: applicationID, environment: environment, sessionID: Logger.sessionID, logs: logsBuffer))
61 |         request.httpMethod = "POST"
/host/spi-builder-workspace/Sources/FuturaLog/Server/LogServer.swift:63:26: error: value of type 'URLSession' (aka 'AnyObject') has no member 'dataTask'
61 |         request.httpMethod = "POST"
62 |         request.allHTTPHeaderFields = ["Authorization":"Bearer \(accessToken)"]
63 |         logServerSession.dataTask(with: request).resume()
   |                          `- error: value of type 'URLSession' (aka 'AnyObject') has no member 'dataTask'
64 |         logsBuffer = []
65 |         // TODO: think about logging failure and retry
[17/18] Compiling FuturaLog LogReceiver.swift
/host/spi-builder-workspace/Sources/FuturaLog/LogRecievers/LogFilePrinter.swift:44:33: warning: result of call to 'createFile(atPath:contents:attributes:)' is unused
42 |
43 |         if !FileManager.default.fileExists(atPath: filePath) {
44 |             FileManager.default.createFile(atPath: filePath, contents: Data(), attributes: nil)
   |                                 `- warning: result of call to 'createFile(atPath:contents:attributes:)' is unused
45 |         } else { /* nothing */ }
46 |
[18/18] Compiling FuturaLog LogFilePrinter.swift
/host/spi-builder-workspace/Sources/FuturaLog/LogRecievers/LogFilePrinter.swift:44:33: warning: result of call to 'createFile(atPath:contents:attributes:)' is unused
42 |
43 |         if !FileManager.default.fileExists(atPath: filePath) {
44 |             FileManager.default.createFile(atPath: filePath, contents: Data(), attributes: nil)
   |                                 `- warning: result of call to 'createFile(atPath:contents:attributes:)' is unused
45 |         } else { /* nothing */ }
46 |
Running build ...
bash -c docker run --pull=always --rm -v "checkouts-4606859-0":/host -w "$PWD" registry.gitlab.com/finestructure/spi-images:basic-6.1-latest swift build --triple x86_64-unknown-linux-gnu 2>&1
basic-6.1-latest: Pulling from finestructure/spi-images
Digest: sha256:3bdcac04179f4ed3e5b8e9dbd6e74bbf5ebc0f4fde48bbaad7d1e5c757e65bcb
Status: Image is up to date for registry.gitlab.com/finestructure/spi-images:basic-6.1-latest
[0/1] Planning build
Building for debugging...
[0/1] Write swift-version-24593BA9C3E375BF.txt
error: emit-module command failed with exit code 1 (use -v to see invocation)
[2/16] Compiling FuturaLog Log.swift
[3/16] Compiling FuturaLog LogFormatter.swift
[4/16] Emitting module FuturaLog
/host/spi-builder-workspace/Sources/FuturaLog/CrashHandling/CrashCatcher.swift:32:51: error: cannot find type 'NSException' in scope
30 | }
31 |
32 | fileprivate func exceptionLogHandler(_ exception: NSException)-> Swift.Void {
   |                                                   `- error: cannot find type 'NSException' in scope
33 |     Logger.send(Log(.crash, message: "Exception: \(exception)\n\n\(Thread.callStackSymbols.joined(separator: "\n"))\n"))
34 |     Logger.flush()
/host/spi-builder-workspace/Sources/FuturaLog/CrashHandling/CrashCatcher.swift:43:52: error: cannot find type 'NSException' in scope
41 | }
42 |
43 | fileprivate func exceptionVoidHandler(_ exception: NSException)-> Swift.Void { /* void */ }
   |                                                    `- error: cannot find type 'NSException' in scope
44 |
45 | fileprivate func signalVoidHandler(_ signal: Int32)-> Swift.Void { exit(signal) }
/host/spi-builder-workspace/Sources/FuturaLog/Server/LogEnvironment.swift:22:16: warning: 'Hashable.hashValue' is deprecated as a protocol requirement; conform type 'LogEnvironment' to 'Hashable' by implementing 'hash(into:)' instead
20 | extension LogEnvironment : Hashable {
21 |
22 |     public var hashValue: Int {
   |                `- warning: 'Hashable.hashValue' is deprecated as a protocol requirement; conform type 'LogEnvironment' to 'Hashable' by implementing 'hash(into:)' instead
23 |         return "\(self.name)\(self.appVersion)\(self.platform ?? "N/A")\(self.osInfo ?? "N/A")\(self.info ?? "N/A")".hashValue
24 |     }
/host/spi-builder-workspace/Sources/FuturaLog/Server/LogServer.swift:16:35: error: 'URLSession' is unavailable: This type has moved to the FoundationNetworking module. Import that module to use it.
14 |     public let allowedCategories: [LogCategory] = LogCategory.all
15 |
16 |     private let logServerSession: URLSession = URLSession(configuration: URLSessionConfiguration.ephemeral)
   |                                   `- error: 'URLSession' is unavailable: This type has moved to the FoundationNetworking module. Import that module to use it.
17 |
18 |     private let synchronizationQueue = DispatchQueue(label: "futura.log.server.syncQueue")
Foundation.URLSession:2:18: note: 'URLSession' has been explicitly marked unavailable here
1 | @available(*, unavailable, message: "This type has moved to the FoundationNetworking module. Import that module to use it.")
2 | public typealias URLSession = AnyObject
  |                  `- note: 'URLSession' has been explicitly marked unavailable here
/host/spi-builder-workspace/Sources/FuturaLog/Server/LogServer.swift:16:48: error: 'URLSession' (aka 'AnyObject') cannot be constructed because it has no accessible initializers
14 |     public let allowedCategories: [LogCategory] = LogCategory.all
15 |
16 |     private let logServerSession: URLSession = URLSession(configuration: URLSessionConfiguration.ephemeral)
   |                                                `- error: 'URLSession' (aka 'AnyObject') cannot be constructed because it has no accessible initializers
17 |
18 |     private let synchronizationQueue = DispatchQueue(label: "futura.log.server.syncQueue")
/host/spi-builder-workspace/Sources/FuturaLog/Server/LogServer.swift:16:98: error: type 'URLSessionConfiguration' (aka 'AnyObject') has no member 'ephemeral'
14 |     public let allowedCategories: [LogCategory] = LogCategory.all
15 |
16 |     private let logServerSession: URLSession = URLSession(configuration: URLSessionConfiguration.ephemeral)
   |                                                                                                  `- error: type 'URLSessionConfiguration' (aka 'AnyObject') has no member 'ephemeral'
17 |
18 |     private let synchronizationQueue = DispatchQueue(label: "futura.log.server.syncQueue")
[5/17] Compiling FuturaLog LogPrinter.swift
[6/17] Compiling FuturaLog LogStorage.swift
[7/17] Compiling FuturaLog Logger.swift
[8/17] Compiling FuturaLog FlatLog.swift
[9/17] Compiling FuturaLog LogEnvironment.swift
/host/spi-builder-workspace/Sources/FuturaLog/Server/LogEnvironment.swift:22:16: warning: 'Hashable.hashValue' is deprecated as a protocol requirement; conform type 'LogEnvironment' to 'Hashable' by implementing 'hash(into:)' instead
20 | extension LogEnvironment : Hashable {
21 |
22 |     public var hashValue: Int {
   |                `- warning: 'Hashable.hashValue' is deprecated as a protocol requirement; conform type 'LogEnvironment' to 'Hashable' by implementing 'hash(into:)' instead
23 |         return "\(self.name)\(self.appVersion)\(self.platform ?? "N/A")\(self.osInfo ?? "N/A")\(self.info ?? "N/A")".hashValue
24 |     }
[10/17] Compiling FuturaLog LogPackage.swift
/host/spi-builder-workspace/Sources/FuturaLog/Server/LogEnvironment.swift:22:16: warning: 'Hashable.hashValue' is deprecated as a protocol requirement; conform type 'LogEnvironment' to 'Hashable' by implementing 'hash(into:)' instead
20 | extension LogEnvironment : Hashable {
21 |
22 |     public var hashValue: Int {
   |                `- warning: 'Hashable.hashValue' is deprecated as a protocol requirement; conform type 'LogEnvironment' to 'Hashable' by implementing 'hash(into:)' instead
23 |         return "\(self.name)\(self.appVersion)\(self.platform ?? "N/A")\(self.osInfo ?? "N/A")\(self.info ?? "N/A")".hashValue
24 |     }
[11/17] Compiling FuturaLog LogReceiver.swift
/host/spi-builder-workspace/Sources/FuturaLog/LogRecievers/LogFilePrinter.swift:44:33: warning: result of call to 'createFile(atPath:contents:attributes:)' is unused
42 |
43 |         if !FileManager.default.fileExists(atPath: filePath) {
44 |             FileManager.default.createFile(atPath: filePath, contents: Data(), attributes: nil)
   |                                 `- warning: result of call to 'createFile(atPath:contents:attributes:)' is unused
45 |         } else { /* nothing */ }
46 |
[12/17] Compiling FuturaLog LogFilePrinter.swift
/host/spi-builder-workspace/Sources/FuturaLog/LogRecievers/LogFilePrinter.swift:44:33: warning: result of call to 'createFile(atPath:contents:attributes:)' is unused
42 |
43 |         if !FileManager.default.fileExists(atPath: filePath) {
44 |             FileManager.default.createFile(atPath: filePath, contents: Data(), attributes: nil)
   |                                 `- warning: result of call to 'createFile(atPath:contents:attributes:)' is unused
45 |         } else { /* nothing */ }
46 |
[13/17] Compiling FuturaLog LogFileStorage.swift
/host/spi-builder-workspace/Sources/FuturaLog/LogRecievers/LogFileStorage.swift:53:33: warning: result of call to 'createFile(atPath:contents:attributes:)' is unused
 51 |
 52 |         if !FileManager.default.fileExists(atPath: filePath) {
 53 |             FileManager.default.createFile(atPath: filePath, contents: Data(), attributes: nil)
    |                                 `- warning: result of call to 'createFile(atPath:contents:attributes:)' is unused
 54 |         } else { /* nothing */ }
 55 |
[14/17] Compiling FuturaLog LogMemoryStorage.swift
/host/spi-builder-workspace/Sources/FuturaLog/LogRecievers/LogFileStorage.swift:53:33: warning: result of call to 'createFile(atPath:contents:attributes:)' is unused
 51 |
 52 |         if !FileManager.default.fileExists(atPath: filePath) {
 53 |             FileManager.default.createFile(atPath: filePath, contents: Data(), attributes: nil)
    |                                 `- warning: result of call to 'createFile(atPath:contents:attributes:)' is unused
 54 |         } else { /* nothing */ }
 55 |
[15/17] Compiling FuturaLog CrashCatcher.swift
/host/spi-builder-workspace/Sources/FuturaLog/CrashHandling/CrashCatcher.swift:32:51: error: cannot find type 'NSException' in scope
30 | }
31 |
32 | fileprivate func exceptionLogHandler(_ exception: NSException)-> Swift.Void {
   |                                                   `- error: cannot find type 'NSException' in scope
33 |     Logger.send(Log(.crash, message: "Exception: \(exception)\n\n\(Thread.callStackSymbols.joined(separator: "\n"))\n"))
34 |     Logger.flush()
/host/spi-builder-workspace/Sources/FuturaLog/CrashHandling/CrashCatcher.swift:43:52: error: cannot find type 'NSException' in scope
41 | }
42 |
43 | fileprivate func exceptionVoidHandler(_ exception: NSException)-> Swift.Void { /* void */ }
   |                                                    `- error: cannot find type 'NSException' in scope
44 |
45 | fileprivate func signalVoidHandler(_ signal: Int32)-> Swift.Void { exit(signal) }
/host/spi-builder-workspace/Sources/FuturaLog/CrashHandling/CrashCatcher.swift:8:13: error: cannot find 'NSSetUncaughtExceptionHandler' in scope
 6 |         switch mode {
 7 |         case .logging:
 8 |             NSSetUncaughtExceptionHandler(exceptionLogHandler);
   |             `- error: cannot find 'NSSetUncaughtExceptionHandler' in scope
 9 |             signal(SIGABRT, signalLogHandler);
10 |             signal(SIGILL, signalLogHandler);
/host/spi-builder-workspace/Sources/FuturaLog/CrashHandling/CrashCatcher.swift:16:13: error: cannot find 'NSSetUncaughtExceptionHandler' in scope
14 |             signal(SIGPIPE, signalLogHandler);
15 |         case .hiding:
16 |             NSSetUncaughtExceptionHandler(exceptionVoidHandler);
   |             `- error: cannot find 'NSSetUncaughtExceptionHandler' in scope
17 |             signal(SIGABRT, signalVoidHandler);
18 |             signal(SIGILL, signalVoidHandler);
[16/17] Compiling FuturaLog FlushableTextOutputStream.swift
/host/spi-builder-workspace/Sources/FuturaLog/CrashHandling/CrashCatcher.swift:32:51: error: cannot find type 'NSException' in scope
30 | }
31 |
32 | fileprivate func exceptionLogHandler(_ exception: NSException)-> Swift.Void {
   |                                                   `- error: cannot find type 'NSException' in scope
33 |     Logger.send(Log(.crash, message: "Exception: \(exception)\n\n\(Thread.callStackSymbols.joined(separator: "\n"))\n"))
34 |     Logger.flush()
/host/spi-builder-workspace/Sources/FuturaLog/CrashHandling/CrashCatcher.swift:43:52: error: cannot find type 'NSException' in scope
41 | }
42 |
43 | fileprivate func exceptionVoidHandler(_ exception: NSException)-> Swift.Void { /* void */ }
   |                                                    `- error: cannot find type 'NSException' in scope
44 |
45 | fileprivate func signalVoidHandler(_ signal: Int32)-> Swift.Void { exit(signal) }
/host/spi-builder-workspace/Sources/FuturaLog/CrashHandling/CrashCatcher.swift:8:13: error: cannot find 'NSSetUncaughtExceptionHandler' in scope
 6 |         switch mode {
 7 |         case .logging:
 8 |             NSSetUncaughtExceptionHandler(exceptionLogHandler);
   |             `- error: cannot find 'NSSetUncaughtExceptionHandler' in scope
 9 |             signal(SIGABRT, signalLogHandler);
10 |             signal(SIGILL, signalLogHandler);
/host/spi-builder-workspace/Sources/FuturaLog/CrashHandling/CrashCatcher.swift:16:13: error: cannot find 'NSSetUncaughtExceptionHandler' in scope
14 |             signal(SIGPIPE, signalLogHandler);
15 |         case .hiding:
16 |             NSSetUncaughtExceptionHandler(exceptionVoidHandler);
   |             `- error: cannot find 'NSSetUncaughtExceptionHandler' in scope
17 |             signal(SIGABRT, signalVoidHandler);
18 |             signal(SIGILL, signalVoidHandler);
[17/17] Compiling FuturaLog LogServer.swift
/host/spi-builder-workspace/Sources/FuturaLog/Server/LogServer.swift:16:35: error: 'URLSession' is unavailable: This type has moved to the FoundationNetworking module. Import that module to use it.
14 |     public let allowedCategories: [LogCategory] = LogCategory.all
15 |
16 |     private let logServerSession: URLSession = URLSession(configuration: URLSessionConfiguration.ephemeral)
   |                                   `- error: 'URLSession' is unavailable: This type has moved to the FoundationNetworking module. Import that module to use it.
17 |
18 |     private let synchronizationQueue = DispatchQueue(label: "futura.log.server.syncQueue")
Foundation.URLSession:2:18: note: 'URLSession' has been explicitly marked unavailable here
1 | @available(*, unavailable, message: "This type has moved to the FoundationNetworking module. Import that module to use it.")
2 | public typealias URLSession = AnyObject
  |                  `- note: 'URLSession' has been explicitly marked unavailable here
/host/spi-builder-workspace/Sources/FuturaLog/Server/LogServer.swift:16:48: error: 'URLSession' (aka 'AnyObject') cannot be constructed because it has no accessible initializers
14 |     public let allowedCategories: [LogCategory] = LogCategory.all
15 |
16 |     private let logServerSession: URLSession = URLSession(configuration: URLSessionConfiguration.ephemeral)
   |                                                `- error: 'URLSession' (aka 'AnyObject') cannot be constructed because it has no accessible initializers
17 |
18 |     private let synchronizationQueue = DispatchQueue(label: "futura.log.server.syncQueue")
/host/spi-builder-workspace/Sources/FuturaLog/Server/LogServer.swift:16:98: error: type 'URLSessionConfiguration' (aka 'AnyObject') has no member 'ephemeral'
14 |     public let allowedCategories: [LogCategory] = LogCategory.all
15 |
16 |     private let logServerSession: URLSession = URLSession(configuration: URLSessionConfiguration.ephemeral)
   |                                                                                                  `- error: type 'URLSessionConfiguration' (aka 'AnyObject') has no member 'ephemeral'
17 |
18 |     private let synchronizationQueue = DispatchQueue(label: "futura.log.server.syncQueue")
/host/spi-builder-workspace/Sources/FuturaLog/Server/LogServer.swift:59:23: error: cannot find 'URLRequest' in scope
57 |
58 |     private func uploadLogs() {
59 |         var request = URLRequest(url: serverURL.appendingPathComponent("uploadLogs"))
   |                       `- error: cannot find 'URLRequest' in scope
60 |         request.httpBody = try? LogServer.jsonEncoder.encode(LogPackage(applicationID: applicationID, environment: environment, sessionID: Logger.sessionID, logs: logsBuffer))
61 |         request.httpMethod = "POST"
/host/spi-builder-workspace/Sources/FuturaLog/Server/LogServer.swift:63:26: error: value of type 'URLSession' (aka 'AnyObject') has no member 'dataTask'
61 |         request.httpMethod = "POST"
62 |         request.allHTTPHeaderFields = ["Authorization":"Bearer \(accessToken)"]
63 |         logServerSession.dataTask(with: request).resume()
   |                          `- error: value of type 'URLSession' (aka 'AnyObject') has no member 'dataTask'
64 |         logsBuffer = []
65 |         // TODO: think about logging failure and retry
BUILD FAILURE 6.1 linux