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 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