The Swift Package Index logo.Swift Package Index

Build Information

Failed to build FuturaLog, reference master (088587), with Swift 6.1 for Android on 27 May 2025 13:34:31 UTC.

Build Command

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

Build Log

========================================
RunAll
========================================
Builder version: 4.63.1
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:         android
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-4609320-2":/host -w "$PWD" registry.gitlab.com/finestructure/spi-images:android-6.1-latest swift build --swift-sdk aarch64-unknown-linux-android24 -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
android-6.1-latest: Pulling from finestructure/spi-images
Digest: sha256:9f3c606dcd2a4f06d17ba472aa533c43685ba7ba19a5c9bc23518a066eb7f86a
Status: Image is up to date for registry.gitlab.com/finestructure/spi-images:android-6.1-latest
Building for debugging...
[0/2] Write sources
[1/2] Write swift-version-24593BA9C3E375BF.txt
[3/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 |     }
[4/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 |     }
[5/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 |
[6/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 |
[7/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 |
[8/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 |
[9/18] Compiling FuturaLog LogPrinter.swift
[10/18] Compiling FuturaLog LogStorage.swift
[11/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
[12/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
[13/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
[14/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
error: emit-module command failed with exit code 1 (use -v to see invocation)
[15/18] 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")
[16/18] 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:9:13: error: function is unused
 7 |         case .logging:
 8 |             NSSetUncaughtExceptionHandler(exceptionLogHandler);
 9 |             signal(SIGABRT, signalLogHandler);
   |             `- error: function is unused
10 |             signal(SIGILL, signalLogHandler);
11 |             signal(SIGSEGV, signalLogHandler);
/host/spi-builder-workspace/Sources/FuturaLog/CrashHandling/CrashCatcher.swift:10:13: error: function is unused
 8 |             NSSetUncaughtExceptionHandler(exceptionLogHandler);
 9 |             signal(SIGABRT, signalLogHandler);
10 |             signal(SIGILL, signalLogHandler);
   |             `- error: function is unused
11 |             signal(SIGSEGV, signalLogHandler);
12 |             signal(SIGFPE, signalLogHandler);
/host/spi-builder-workspace/Sources/FuturaLog/CrashHandling/CrashCatcher.swift:11:13: error: function is unused
 9 |             signal(SIGABRT, signalLogHandler);
10 |             signal(SIGILL, signalLogHandler);
11 |             signal(SIGSEGV, signalLogHandler);
   |             `- error: function is unused
12 |             signal(SIGFPE, signalLogHandler);
13 |             signal(SIGBUS, signalLogHandler);
/host/spi-builder-workspace/Sources/FuturaLog/CrashHandling/CrashCatcher.swift:12:13: error: function is unused
10 |             signal(SIGILL, signalLogHandler);
11 |             signal(SIGSEGV, signalLogHandler);
12 |             signal(SIGFPE, signalLogHandler);
   |             `- error: function is unused
13 |             signal(SIGBUS, signalLogHandler);
14 |             signal(SIGPIPE, signalLogHandler);
/host/spi-builder-workspace/Sources/FuturaLog/CrashHandling/CrashCatcher.swift:13:13: error: function is unused
11 |             signal(SIGSEGV, signalLogHandler);
12 |             signal(SIGFPE, signalLogHandler);
13 |             signal(SIGBUS, signalLogHandler);
   |             `- error: function is unused
14 |             signal(SIGPIPE, signalLogHandler);
15 |         case .hiding:
/host/spi-builder-workspace/Sources/FuturaLog/CrashHandling/CrashCatcher.swift:14:13: error: function is unused
12 |             signal(SIGFPE, signalLogHandler);
13 |             signal(SIGBUS, signalLogHandler);
14 |             signal(SIGPIPE, signalLogHandler);
   |             `- error: function is unused
15 |         case .hiding:
16 |             NSSetUncaughtExceptionHandler(exceptionVoidHandler);
/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);
/host/spi-builder-workspace/Sources/FuturaLog/CrashHandling/CrashCatcher.swift:17:13: error: function is unused
15 |         case .hiding:
16 |             NSSetUncaughtExceptionHandler(exceptionVoidHandler);
17 |             signal(SIGABRT, signalVoidHandler);
   |             `- error: function is unused
18 |             signal(SIGILL, signalVoidHandler);
19 |             signal(SIGSEGV, signalVoidHandler);
/host/spi-builder-workspace/Sources/FuturaLog/CrashHandling/CrashCatcher.swift:18:13: error: function is unused
16 |             NSSetUncaughtExceptionHandler(exceptionVoidHandler);
17 |             signal(SIGABRT, signalVoidHandler);
18 |             signal(SIGILL, signalVoidHandler);
   |             `- error: function is unused
19 |             signal(SIGSEGV, signalVoidHandler);
20 |             signal(SIGFPE, signalVoidHandler);
/host/spi-builder-workspace/Sources/FuturaLog/CrashHandling/CrashCatcher.swift:19:13: error: function is unused
17 |             signal(SIGABRT, signalVoidHandler);
18 |             signal(SIGILL, signalVoidHandler);
19 |             signal(SIGSEGV, signalVoidHandler);
   |             `- error: function is unused
20 |             signal(SIGFPE, signalVoidHandler);
21 |             signal(SIGBUS, signalVoidHandler);
/host/spi-builder-workspace/Sources/FuturaLog/CrashHandling/CrashCatcher.swift:20:13: error: function is unused
18 |             signal(SIGILL, signalVoidHandler);
19 |             signal(SIGSEGV, signalVoidHandler);
20 |             signal(SIGFPE, signalVoidHandler);
   |             `- error: function is unused
21 |             signal(SIGBUS, signalVoidHandler);
22 |             signal(SIGPIPE, signalVoidHandler);
/host/spi-builder-workspace/Sources/FuturaLog/CrashHandling/CrashCatcher.swift:21:13: error: function is unused
19 |             signal(SIGSEGV, signalVoidHandler);
20 |             signal(SIGFPE, signalVoidHandler);
21 |             signal(SIGBUS, signalVoidHandler);
   |             `- error: function is unused
22 |             signal(SIGPIPE, signalVoidHandler);
23 |         }
/host/spi-builder-workspace/Sources/FuturaLog/CrashHandling/CrashCatcher.swift:22:13: error: function is unused
20 |             signal(SIGFPE, signalVoidHandler);
21 |             signal(SIGBUS, signalVoidHandler);
22 |             signal(SIGPIPE, signalVoidHandler);
   |             `- error: function is unused
23 |         }
24 |     }
[17/18] 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:9:13: error: function is unused
 7 |         case .logging:
 8 |             NSSetUncaughtExceptionHandler(exceptionLogHandler);
 9 |             signal(SIGABRT, signalLogHandler);
   |             `- error: function is unused
10 |             signal(SIGILL, signalLogHandler);
11 |             signal(SIGSEGV, signalLogHandler);
/host/spi-builder-workspace/Sources/FuturaLog/CrashHandling/CrashCatcher.swift:10:13: error: function is unused
 8 |             NSSetUncaughtExceptionHandler(exceptionLogHandler);
 9 |             signal(SIGABRT, signalLogHandler);
10 |             signal(SIGILL, signalLogHandler);
   |             `- error: function is unused
11 |             signal(SIGSEGV, signalLogHandler);
12 |             signal(SIGFPE, signalLogHandler);
/host/spi-builder-workspace/Sources/FuturaLog/CrashHandling/CrashCatcher.swift:11:13: error: function is unused
 9 |             signal(SIGABRT, signalLogHandler);
10 |             signal(SIGILL, signalLogHandler);
11 |             signal(SIGSEGV, signalLogHandler);
   |             `- error: function is unused
12 |             signal(SIGFPE, signalLogHandler);
13 |             signal(SIGBUS, signalLogHandler);
/host/spi-builder-workspace/Sources/FuturaLog/CrashHandling/CrashCatcher.swift:12:13: error: function is unused
10 |             signal(SIGILL, signalLogHandler);
11 |             signal(SIGSEGV, signalLogHandler);
12 |             signal(SIGFPE, signalLogHandler);
   |             `- error: function is unused
13 |             signal(SIGBUS, signalLogHandler);
14 |             signal(SIGPIPE, signalLogHandler);
/host/spi-builder-workspace/Sources/FuturaLog/CrashHandling/CrashCatcher.swift:13:13: error: function is unused
11 |             signal(SIGSEGV, signalLogHandler);
12 |             signal(SIGFPE, signalLogHandler);
13 |             signal(SIGBUS, signalLogHandler);
   |             `- error: function is unused
14 |             signal(SIGPIPE, signalLogHandler);
15 |         case .hiding:
/host/spi-builder-workspace/Sources/FuturaLog/CrashHandling/CrashCatcher.swift:14:13: error: function is unused
12 |             signal(SIGFPE, signalLogHandler);
13 |             signal(SIGBUS, signalLogHandler);
14 |             signal(SIGPIPE, signalLogHandler);
   |             `- error: function is unused
15 |         case .hiding:
16 |             NSSetUncaughtExceptionHandler(exceptionVoidHandler);
/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);
/host/spi-builder-workspace/Sources/FuturaLog/CrashHandling/CrashCatcher.swift:17:13: error: function is unused
15 |         case .hiding:
16 |             NSSetUncaughtExceptionHandler(exceptionVoidHandler);
17 |             signal(SIGABRT, signalVoidHandler);
   |             `- error: function is unused
18 |             signal(SIGILL, signalVoidHandler);
19 |             signal(SIGSEGV, signalVoidHandler);
/host/spi-builder-workspace/Sources/FuturaLog/CrashHandling/CrashCatcher.swift:18:13: error: function is unused
16 |             NSSetUncaughtExceptionHandler(exceptionVoidHandler);
17 |             signal(SIGABRT, signalVoidHandler);
18 |             signal(SIGILL, signalVoidHandler);
   |             `- error: function is unused
19 |             signal(SIGSEGV, signalVoidHandler);
20 |             signal(SIGFPE, signalVoidHandler);
/host/spi-builder-workspace/Sources/FuturaLog/CrashHandling/CrashCatcher.swift:19:13: error: function is unused
17 |             signal(SIGABRT, signalVoidHandler);
18 |             signal(SIGILL, signalVoidHandler);
19 |             signal(SIGSEGV, signalVoidHandler);
   |             `- error: function is unused
20 |             signal(SIGFPE, signalVoidHandler);
21 |             signal(SIGBUS, signalVoidHandler);
/host/spi-builder-workspace/Sources/FuturaLog/CrashHandling/CrashCatcher.swift:20:13: error: function is unused
18 |             signal(SIGILL, signalVoidHandler);
19 |             signal(SIGSEGV, signalVoidHandler);
20 |             signal(SIGFPE, signalVoidHandler);
   |             `- error: function is unused
21 |             signal(SIGBUS, signalVoidHandler);
22 |             signal(SIGPIPE, signalVoidHandler);
/host/spi-builder-workspace/Sources/FuturaLog/CrashHandling/CrashCatcher.swift:21:13: error: function is unused
19 |             signal(SIGSEGV, signalVoidHandler);
20 |             signal(SIGFPE, signalVoidHandler);
21 |             signal(SIGBUS, signalVoidHandler);
   |             `- error: function is unused
22 |             signal(SIGPIPE, signalVoidHandler);
23 |         }
/host/spi-builder-workspace/Sources/FuturaLog/CrashHandling/CrashCatcher.swift:22:13: error: function is unused
20 |             signal(SIGFPE, signalVoidHandler);
21 |             signal(SIGBUS, signalVoidHandler);
22 |             signal(SIGPIPE, signalVoidHandler);
   |             `- error: function is unused
23 |         }
24 |     }
[18/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
Running build ...
bash -c docker run --pull=always --rm -v "checkouts-4609320-2":/host -w "$PWD" registry.gitlab.com/finestructure/spi-images:android-6.1-latest swift build --swift-sdk aarch64-unknown-linux-android24 2>&1
android-6.1-latest: Pulling from finestructure/spi-images
Digest: sha256:9f3c606dcd2a4f06d17ba472aa533c43685ba7ba19a5c9bc23518a066eb7f86a
Status: Image is up to date for registry.gitlab.com/finestructure/spi-images:android-6.1-latest
[0/1] Planning build
Building for debugging...
[0/1] Write swift-version-24593BA9C3E375BF.txt
[2/16] 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 |
[3/16] 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 |
[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);
error: emit-module command failed with exit code 1 (use -v to see invocation)
[6/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/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")
[7/17] Compiling FuturaLog Log.swift
[8/17] Compiling FuturaLog LogFormatter.swift
[9/17] Compiling FuturaLog Logger.swift
[10/17] Compiling FuturaLog FlatLog.swift
[11/17] Compiling FuturaLog LogPrinter.swift
[12/17] Compiling FuturaLog LogStorage.swift
[13/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
[14/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 |     }
[15/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 |     }
[16/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 |
[17/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 |
BUILD FAILURE 6.1 android