Build Information
Failed to build Lift with Swift 6.0 for Linux.
Build Command
bash -c docker run --rm -v "checkouts-4609320-0":/host -w "$workDir" registry.gitlab.com/finestructure/spi-images:basic-6.0-latest swift build --triple x86_64-unknown-linux-gnu -Xswiftc -Xfrontend -Xswiftc -stats-output-dir -Xswiftc -Xfrontend -Xswiftc .stats -Xswiftc -strict-concurrency=complete 2>&1
Build Log
========================================
RunAll
========================================
Builder version: 4.40.0
Interrupt handler set up.
========================================
Checkout
========================================
Clone URL: https://github.com/iZettle/Lift.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/iZettle/Lift
* branch master -> FETCH_HEAD
* [new branch] master -> origin/master
HEAD is now at 7832047 Merge pull request #43 from iZettle/bump-xcode-versions
Cloned https://github.com/iZettle/Lift.git
Revision (git rev-parse @):
7832047b61eb53b40f7dad003bdc331ec98f2523
SUCCESS checkout https://github.com/iZettle/Lift.git at master
========================================
Build
========================================
Selected platform: linux
Swift version: 6.0
Building package at path: $workDir
https://github.com/iZettle/Lift.git
Running build ...
bash -c docker run --rm -v "checkouts-4609320-0":/host -w "$workDir" registry.gitlab.com/finestructure/spi-images:basic-6.0-latest swift build --triple x86_64-unknown-linux-gnu -Xswiftc -Xfrontend -Xswiftc -stats-output-dir -Xswiftc -Xfrontend -Xswiftc .stats -Xswiftc -strict-concurrency=complete 2>&1
Building for debugging...
[0/2] Write sources
[1/2] Write swift-version-24593BA9C3E375BF.txt
[3/13] Compiling Lift LiftError.swift
/host/spi-builder-workspace/Lift/LiftError.swift:21:21: warning: stored property '_context' of 'Sendable'-conforming struct 'LiftError' has non-sendable type '() -> String'; this is an error in the Swift 6 language mode
19 | /// The context jar. Helpful for debugging.
20 | public var context: String { return _context() }
21 | fileprivate let _context: () -> String
| |- warning: stored property '_context' of 'Sendable'-conforming struct 'LiftError' has non-sendable type '() -> String'; this is an error in the Swift 6 language mode
| `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
22 |
23 | /// The description of the error
[4/14] Compiling Lift JarElement.swift
[5/14] Compiling Lift Jar+Expressible.swift
/host/spi-builder-workspace/Lift/Jar.swift:82:12: warning: let 'null' is not concurrency-safe because non-'Sendable' type 'Null' (aka 'NSNull') may have shared mutable state; this is an error in the Swift 6 language mode
80 |
81 | /// null value for explicit marking of nulls in jar's
82 | public let null = Null()
| `- warning: let 'null' is not concurrency-safe because non-'Sendable' type 'Null' (aka 'NSNull') may have shared mutable state; this is an error in the Swift 6 language mode
83 |
84 | postfix operator ^
Foundation.NSNull:1:12: note: class 'NSNull' does not conform to the 'Sendable' protocol
1 | open class NSNull : NSObject, NSCopying, NSSecureCoding {
| `- note: class 'NSNull' does not conform to the 'Sendable' protocol
2 | override open func copy() -> Any
3 | open func copy(with zone: NSZone? = nil) -> Any
/host/spi-builder-workspace/Lift/Jar.swift:9:1: warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'Foundation'
7 | //
8 |
9 | import Foundation
| `- warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'Foundation'
10 |
11 | /// `Jar` is used to access heterogenous objects such as JSON, plists and user defaults in a type safe manner.
:
80 |
81 | /// null value for explicit marking of nulls in jar's
82 | public let null = Null()
| |- note: annotate 'null' with '@MainActor' if property should only be accessed from the main actor
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
83 |
84 | postfix operator ^
[6/14] Compiling Lift Jar+Object.swift
/host/spi-builder-workspace/Lift/Jar.swift:82:12: warning: let 'null' is not concurrency-safe because non-'Sendable' type 'Null' (aka 'NSNull') may have shared mutable state; this is an error in the Swift 6 language mode
80 |
81 | /// null value for explicit marking of nulls in jar's
82 | public let null = Null()
| `- warning: let 'null' is not concurrency-safe because non-'Sendable' type 'Null' (aka 'NSNull') may have shared mutable state; this is an error in the Swift 6 language mode
83 |
84 | postfix operator ^
Foundation.NSNull:1:12: note: class 'NSNull' does not conform to the 'Sendable' protocol
1 | open class NSNull : NSObject, NSCopying, NSSecureCoding {
| `- note: class 'NSNull' does not conform to the 'Sendable' protocol
2 | override open func copy() -> Any
3 | open func copy(with zone: NSZone? = nil) -> Any
/host/spi-builder-workspace/Lift/Jar.swift:9:1: warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'Foundation'
7 | //
8 |
9 | import Foundation
| `- warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'Foundation'
10 |
11 | /// `Jar` is used to access heterogenous objects such as JSON, plists and user defaults in a type safe manner.
:
80 |
81 | /// null value for explicit marking of nulls in jar's
82 | public let null = Null()
| |- note: annotate 'null' with '@MainActor' if property should only be accessed from the main actor
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
83 |
84 | postfix operator ^
[7/14] Compiling Lift Jar.swift
/host/spi-builder-workspace/Lift/Jar.swift:82:12: warning: let 'null' is not concurrency-safe because non-'Sendable' type 'Null' (aka 'NSNull') may have shared mutable state; this is an error in the Swift 6 language mode
80 |
81 | /// null value for explicit marking of nulls in jar's
82 | public let null = Null()
| `- warning: let 'null' is not concurrency-safe because non-'Sendable' type 'Null' (aka 'NSNull') may have shared mutable state; this is an error in the Swift 6 language mode
83 |
84 | postfix operator ^
Foundation.NSNull:1:12: note: class 'NSNull' does not conform to the 'Sendable' protocol
1 | open class NSNull : NSObject, NSCopying, NSSecureCoding {
| `- note: class 'NSNull' does not conform to the 'Sendable' protocol
2 | override open func copy() -> Any
3 | open func copy(with zone: NSZone? = nil) -> Any
/host/spi-builder-workspace/Lift/Jar.swift:9:1: warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'Foundation'
7 | //
8 |
9 | import Foundation
| `- warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'Foundation'
10 |
11 | /// `Jar` is used to access heterogenous objects such as JSON, plists and user defaults in a type safe manner.
:
80 |
81 | /// null value for explicit marking of nulls in jar's
82 | public let null = Null()
| |- note: annotate 'null' with '@MainActor' if property should only be accessed from the main actor
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
83 |
84 | postfix operator ^
[8/14] Compiling Lift JarElement+Primitives.swift
/host/spi-builder-workspace/Lift/JarElement+Primitives.swift:153:25: warning: static property 'iso8601' is not concurrency-safe because non-'Sendable' type 'DateFormatter' may have shared mutable state; this is an error in the Swift 6 language mode
151 |
152 | public extension DateFormatter {
153 | @nonobjc static let iso8601: DateFormatter = {
| `- warning: static property 'iso8601' is not concurrency-safe because non-'Sendable' type 'DateFormatter' may have shared mutable state; this is an error in the Swift 6 language mode
154 | let formatter = DateFormatter()
155 | formatter.locale = Locale(identifier: "en_US_POSIX")
Foundation.DateFormatter:1:12: note: class 'DateFormatter' does not conform to the 'Sendable' protocol
1 | open class DateFormatter : Formatter {
| `- note: class 'DateFormatter' does not conform to the 'Sendable' protocol
2 | override public init()
3 | required public init?(coder: NSCoder)
/host/spi-builder-workspace/Lift/JarElement+Primitives.swift:9:1: warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'Foundation'
7 | //
8 |
9 | import Foundation
| `- warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'Foundation'
10 |
11 | extension String: JarConvertible, JarRepresentable {
:
151 |
152 | public extension DateFormatter {
153 | @nonobjc static let iso8601: DateFormatter = {
| |- note: annotate 'iso8601' with '@MainActor' if property should only be accessed from the main actor
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
154 | let formatter = DateFormatter()
155 | formatter.locale = Locale(identifier: "en_US_POSIX")
error: emit-module command failed with exit code 1 (use -v to see invocation)
[9/14] Compiling Lift Jar+Context.swift
[10/14] Compiling Lift Jar+Dictionary.swift
[11/14] Emitting module Lift
/host/spi-builder-workspace/Lift/Jar+Additions.swift:78:1: error: type 'UserDefaults' does not conform to protocol 'ValueForKey'
76 | }
77 |
78 | extension UserDefaults: MutatingValueForKey { }
| `- error: type 'UserDefaults' does not conform to protocol 'ValueForKey'
79 |
/host/spi-builder-workspace/Lift/ValueForKey.swift:16:10: note: protocol requires function 'value(forKey:)' with type '(String) -> Any?'
14 | /// let value: Int = UserDefaults.standard["value"]^
15 | public protocol ValueForKey {
16 | func value(forKey key: String) -> Any?
| `- note: protocol requires function 'value(forKey:)' with type '(String) -> Any?'
17 | }
18 |
/host/spi-builder-workspace/Lift/Jar.swift:82:12: warning: let 'null' is not concurrency-safe because non-'Sendable' type 'Null' (aka 'NSNull') may have shared mutable state; this is an error in the Swift 6 language mode
80 |
81 | /// null value for explicit marking of nulls in jar's
82 | public let null = Null()
| `- warning: let 'null' is not concurrency-safe because non-'Sendable' type 'Null' (aka 'NSNull') may have shared mutable state; this is an error in the Swift 6 language mode
83 |
84 | postfix operator ^
Foundation.NSNull:1:12: note: class 'NSNull' does not conform to the 'Sendable' protocol
1 | open class NSNull : NSObject, NSCopying, NSSecureCoding {
| `- note: class 'NSNull' does not conform to the 'Sendable' protocol
2 | override open func copy() -> Any
3 | open func copy(with zone: NSZone? = nil) -> Any
/host/spi-builder-workspace/Lift/Jar.swift:9:1: warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'Foundation'
7 | //
8 |
9 | import Foundation
| `- warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'Foundation'
10 |
11 | /// `Jar` is used to access heterogenous objects such as JSON, plists and user defaults in a type safe manner.
:
80 |
81 | /// null value for explicit marking of nulls in jar's
82 | public let null = Null()
| |- note: annotate 'null' with '@MainActor' if property should only be accessed from the main actor
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
83 |
84 | postfix operator ^
/host/spi-builder-workspace/Lift/JarElement+Primitives.swift:153:25: warning: static property 'iso8601' is not concurrency-safe because non-'Sendable' type 'DateFormatter' may have shared mutable state; this is an error in the Swift 6 language mode
151 |
152 | public extension DateFormatter {
153 | @nonobjc static let iso8601: DateFormatter = {
| `- warning: static property 'iso8601' is not concurrency-safe because non-'Sendable' type 'DateFormatter' may have shared mutable state; this is an error in the Swift 6 language mode
154 | let formatter = DateFormatter()
155 | formatter.locale = Locale(identifier: "en_US_POSIX")
Foundation.DateFormatter:1:12: note: class 'DateFormatter' does not conform to the 'Sendable' protocol
1 | open class DateFormatter : Formatter {
| `- note: class 'DateFormatter' does not conform to the 'Sendable' protocol
2 | override public init()
3 | required public init?(coder: NSCoder)
/host/spi-builder-workspace/Lift/JarElement+Primitives.swift:9:1: warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'Foundation'
7 | //
8 |
9 | import Foundation
| `- warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'Foundation'
10 |
11 | extension String: JarConvertible, JarRepresentable {
:
151 |
152 | public extension DateFormatter {
153 | @nonobjc static let iso8601: DateFormatter = {
| |- note: annotate 'iso8601' with '@MainActor' if property should only be accessed from the main actor
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
154 | let formatter = DateFormatter()
155 | formatter.locale = Locale(identifier: "en_US_POSIX")
/host/spi-builder-workspace/Lift/LiftError.swift:21:21: warning: stored property '_context' of 'Sendable'-conforming struct 'LiftError' has non-sendable type '() -> String'; this is an error in the Swift 6 language mode
19 | /// The context jar. Helpful for debugging.
20 | public var context: String { return _context() }
21 | fileprivate let _context: () -> String
| |- warning: stored property '_context' of 'Sendable'-conforming struct 'LiftError' has non-sendable type '() -> String'; this is an error in the Swift 6 language mode
| `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
22 |
23 | /// The description of the error
[12/14] Compiling Lift Jar+Additions.swift
/host/spi-builder-workspace/Lift/Jar+Additions.swift:78:1: error: type 'UserDefaults' does not conform to protocol 'ValueForKey'
76 | }
77 |
78 | extension UserDefaults: MutatingValueForKey { }
| `- error: type 'UserDefaults' does not conform to protocol 'ValueForKey'
79 |
/host/spi-builder-workspace/Lift/ValueForKey.swift:16:10: note: protocol requires function 'value(forKey:)' with type '(String) -> Any?'
14 | /// let value: Int = UserDefaults.standard["value"]^
15 | public protocol ValueForKey {
16 | func value(forKey key: String) -> Any?
| `- note: protocol requires function 'value(forKey:)' with type '(String) -> Any?'
17 | }
18 |
[13/14] Compiling Lift Jar+Array.swift
/host/spi-builder-workspace/Lift/Jar+Additions.swift:78:1: error: type 'UserDefaults' does not conform to protocol 'ValueForKey'
76 | }
77 |
78 | extension UserDefaults: MutatingValueForKey { }
| `- error: type 'UserDefaults' does not conform to protocol 'ValueForKey'
79 |
/host/spi-builder-workspace/Lift/ValueForKey.swift:16:10: note: protocol requires function 'value(forKey:)' with type '(String) -> Any?'
14 | /// let value: Int = UserDefaults.standard["value"]^
15 | public protocol ValueForKey {
16 | func value(forKey key: String) -> Any?
| `- note: protocol requires function 'value(forKey:)' with type '(String) -> Any?'
17 | }
18 |
[14/14] Compiling Lift ValueForKey.swift
BUILD FAILURE 6.0 linux