The Swift Package Index logo.Swift Package Index

Track the adoption of Swift 6 strict concurrency checks for data race safety. How many packages are Ready for Swift 6?

Build Information

Failed to build UnicodeEmoji, reference 1.3.0 (cf5568), with Swift 6.0 for Linux on 4 Nov 2024 18:08:21 UTC.

Build Command

bash -c docker run --pull=always --rm -v "checkouts-4606859-0":/host -w "$PWD" registry.gitlab.com/finestructure/spi-images:basic-6.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.56.0
Interrupt handler set up.
========================================
Checkout
========================================
Clone URL: https://github.com/rootstrap/UnicodeEmoji.git
Reference: 1.3.0
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/rootstrap/UnicodeEmoji
 * tag               1.3.0      -> FETCH_HEAD
HEAD is now at cf55686 Merge pull request #4 from rootstrap/update/emoji-15.1
Cloned https://github.com/rootstrap/UnicodeEmoji.git
Revision (git rev-parse @):
cf556865f32b6938bc9c8f2218bc0e1395d74634
SUCCESS checkout https://github.com/rootstrap/UnicodeEmoji.git at 1.3.0
========================================
Build
========================================
Selected platform:         linux
Swift version:             6.0
Building package at path:  $PWD
https://github.com/rootstrap/UnicodeEmoji.git
Running build ...
bash -c docker run --pull=always --rm -v "checkouts-4606859-0":/host -w "$PWD" 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
basic-6.0-latest: Pulling from finestructure/spi-images
Digest: sha256:47d26c99ca4f1ac0a332c85fd5b13ff4390e72115219984a57a68fe9d1063a05
Status: Image is up to date for registry.gitlab.com/finestructure/spi-images:basic-6.0-latest
Building for debugging...
[0/3] Write sources
[2/3] Write swift-version-24593BA9C3E375BF.txt
[4/13] Compiling UnicodeEmoji UILabel+UnicodeEmoji.swift
[5/13] Compiling UnicodeEmoji CGPoint+UnicodeEmoji.swift
[6/14] Compiling UnicodeEmoji UIView+UnicodeEmoji.swift
[7/14] Compiling UnicodeEmoji StickerCollectionCell.swift
[8/14] Compiling UnicodeEmoji EmojiVariantsView.swift
[9/14] Compiling UnicodeEmoji UserDefaults+UnicodeEmoji.swift
/host/spi-builder-workspace/Sources/Extensions/UserDefaults+UnicodeEmoji.swift:20:34: error: cannot find 'value' in scope
18 |         get {
19 |             if
20 |                 let storedData = value(forKey: Key.storedEmojiVersions) as? Data,
   |                                  `- error: cannot find 'value' in scope
21 |                 let value = try? PropertyListDecoder().decode(
22 |                     VersionedUnicodeEmojis.self, from: storedData
[10/14] Compiling UnicodeEmoji Emoji.swift
/host/spi-builder-workspace/Sources/Emoji.swift:32:24: warning: static property 'genderIdentifiers' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
30 |     public var variants: [Emoji] = []
31 |
32 |     private static var genderIdentifiers = ["2642", "2640"]
   |                        |- warning: static property 'genderIdentifiers' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
   |                        |- note: convert 'genderIdentifiers' to a 'let' constant to make 'Sendable' shared state immutable
   |                        |- note: annotate 'genderIdentifiers' 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
33 |     private static var skinToneIdentifiers = ["1F3FB", "1F3FC", "1F3FD", "1F3FE", "1F3FF"]
34 |     private static var joinersAndSelectors = ["200D", "FE0F"]
/host/spi-builder-workspace/Sources/Emoji.swift:33:24: warning: static property 'skinToneIdentifiers' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
31 |
32 |     private static var genderIdentifiers = ["2642", "2640"]
33 |     private static var skinToneIdentifiers = ["1F3FB", "1F3FC", "1F3FD", "1F3FE", "1F3FF"]
   |                        |- warning: static property 'skinToneIdentifiers' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
   |                        |- note: convert 'skinToneIdentifiers' to a 'let' constant to make 'Sendable' shared state immutable
   |                        |- note: annotate 'skinToneIdentifiers' 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
34 |     private static var joinersAndSelectors = ["200D", "FE0F"]
35 |
/host/spi-builder-workspace/Sources/Emoji.swift:34:24: warning: static property 'joinersAndSelectors' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
32 |     private static var genderIdentifiers = ["2642", "2640"]
33 |     private static var skinToneIdentifiers = ["1F3FB", "1F3FC", "1F3FD", "1F3FE", "1F3FF"]
34 |     private static var joinersAndSelectors = ["200D", "FE0F"]
   |                        |- warning: static property 'joinersAndSelectors' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
   |                        |- note: convert 'joinersAndSelectors' to a 'let' constant to make 'Sendable' shared state immutable
   |                        |- note: annotate 'joinersAndSelectors' 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
35 |
36 |     var prettyPrinted: String {
[11/14] Compiling UnicodeEmoji EmojiCollection.swift
/host/spi-builder-workspace/Sources/Emoji.swift:32:24: warning: static property 'genderIdentifiers' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
30 |     public var variants: [Emoji] = []
31 |
32 |     private static var genderIdentifiers = ["2642", "2640"]
   |                        |- warning: static property 'genderIdentifiers' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
   |                        |- note: convert 'genderIdentifiers' to a 'let' constant to make 'Sendable' shared state immutable
   |                        |- note: annotate 'genderIdentifiers' 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
33 |     private static var skinToneIdentifiers = ["1F3FB", "1F3FC", "1F3FD", "1F3FE", "1F3FF"]
34 |     private static var joinersAndSelectors = ["200D", "FE0F"]
/host/spi-builder-workspace/Sources/Emoji.swift:33:24: warning: static property 'skinToneIdentifiers' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
31 |
32 |     private static var genderIdentifiers = ["2642", "2640"]
33 |     private static var skinToneIdentifiers = ["1F3FB", "1F3FC", "1F3FD", "1F3FE", "1F3FF"]
   |                        |- warning: static property 'skinToneIdentifiers' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
   |                        |- note: convert 'skinToneIdentifiers' to a 'let' constant to make 'Sendable' shared state immutable
   |                        |- note: annotate 'skinToneIdentifiers' 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
34 |     private static var joinersAndSelectors = ["200D", "FE0F"]
35 |
/host/spi-builder-workspace/Sources/Emoji.swift:34:24: warning: static property 'joinersAndSelectors' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
32 |     private static var genderIdentifiers = ["2642", "2640"]
33 |     private static var skinToneIdentifiers = ["1F3FB", "1F3FC", "1F3FD", "1F3FE", "1F3FF"]
34 |     private static var joinersAndSelectors = ["200D", "FE0F"]
   |                        |- warning: static property 'joinersAndSelectors' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
   |                        |- note: convert 'joinersAndSelectors' to a 'let' constant to make 'Sendable' shared state immutable
   |                        |- note: annotate 'joinersAndSelectors' 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
35 |
36 |     var prettyPrinted: String {
[12/14] Emitting module UnicodeEmoji
/host/spi-builder-workspace/Sources/Emoji.swift:32:24: warning: static property 'genderIdentifiers' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
30 |     public var variants: [Emoji] = []
31 |
32 |     private static var genderIdentifiers = ["2642", "2640"]
   |                        |- warning: static property 'genderIdentifiers' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
   |                        |- note: convert 'genderIdentifiers' to a 'let' constant to make 'Sendable' shared state immutable
   |                        |- note: annotate 'genderIdentifiers' 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
33 |     private static var skinToneIdentifiers = ["1F3FB", "1F3FC", "1F3FD", "1F3FE", "1F3FF"]
34 |     private static var joinersAndSelectors = ["200D", "FE0F"]
/host/spi-builder-workspace/Sources/Emoji.swift:33:24: warning: static property 'skinToneIdentifiers' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
31 |
32 |     private static var genderIdentifiers = ["2642", "2640"]
33 |     private static var skinToneIdentifiers = ["1F3FB", "1F3FC", "1F3FD", "1F3FE", "1F3FF"]
   |                        |- warning: static property 'skinToneIdentifiers' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
   |                        |- note: convert 'skinToneIdentifiers' to a 'let' constant to make 'Sendable' shared state immutable
   |                        |- note: annotate 'skinToneIdentifiers' 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
34 |     private static var joinersAndSelectors = ["200D", "FE0F"]
35 |
/host/spi-builder-workspace/Sources/Emoji.swift:34:24: warning: static property 'joinersAndSelectors' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
32 |     private static var genderIdentifiers = ["2642", "2640"]
33 |     private static var skinToneIdentifiers = ["1F3FB", "1F3FC", "1F3FD", "1F3FE", "1F3FF"]
34 |     private static var joinersAndSelectors = ["200D", "FE0F"]
   |                        |- warning: static property 'joinersAndSelectors' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
   |                        |- note: convert 'joinersAndSelectors' to a 'let' constant to make 'Sendable' shared state immutable
   |                        |- note: annotate 'joinersAndSelectors' 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
35 |
36 |     var prettyPrinted: String {
/host/spi-builder-workspace/Sources/EmojiLoader.swift:37:23: warning: static property 'shared' is not concurrency-safe because non-'Sendable' type 'EmojiLoader' may have shared mutable state; this is an error in the Swift 6 language mode
 33 | }
 34 |
 35 | public class EmojiLoader {
    |              `- note: class 'EmojiLoader' does not conform to the 'Sendable' protocol
 36 |
 37 |     public static let shared = EmojiLoader()
    |                       |- warning: static property 'shared' is not concurrency-safe because non-'Sendable' type 'EmojiLoader' may have shared mutable state; this is an error in the Swift 6 language mode
    |                       |- note: annotate 'shared' 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
 38 |
 39 |     private let unicodePublicFolder = "https://unicode.org/Public/emoji/"
[13/14] Compiling UnicodeEmoji EmojiGroup.swift
/host/spi-builder-workspace/Sources/EmojiLoader.swift:37:23: warning: static property 'shared' is not concurrency-safe because non-'Sendable' type 'EmojiLoader' may have shared mutable state; this is an error in the Swift 6 language mode
 33 | }
 34 |
 35 | public class EmojiLoader {
    |              `- note: class 'EmojiLoader' does not conform to the 'Sendable' protocol
 36 |
 37 |     public static let shared = EmojiLoader()
    |                       |- warning: static property 'shared' is not concurrency-safe because non-'Sendable' type 'EmojiLoader' may have shared mutable state; this is an error in the Swift 6 language mode
    |                       |- note: annotate 'shared' 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
 38 |
 39 |     private let unicodePublicFolder = "https://unicode.org/Public/emoji/"
/host/spi-builder-workspace/Sources/EmojiLoader.swift:74:17: warning: capture of 'completion' with non-sendable type 'EmojiListCompletion?' (aka 'Optional<(Optional<EmojiCollection>, Optional<any Error>) -> ()>') in a `@Sendable` closure; this is an error in the Swift 6 language mode
 72 |         load(unicodeVersion: UnicodeEmojiVersion.current, reload: forceReload) { (emojis, error) in
 73 |             DispatchQueue.main.async {
 74 |                 completion?(emojis, error)
    |                 |- warning: capture of 'completion' with non-sendable type 'EmojiListCompletion?' (aka 'Optional<(Optional<EmojiCollection>, Optional<any Error>) -> ()>') in a `@Sendable` closure; this is an error in the Swift 6 language mode
    |                 `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
 75 |             }
 76 |         }
/host/spi-builder-workspace/Sources/EmojiLoader.swift:74:29: warning: capture of 'emojis' with non-sendable type 'EmojiCollection?' in a `@Sendable` closure; this is an error in the Swift 6 language mode
 72 |         load(unicodeVersion: UnicodeEmojiVersion.current, reload: forceReload) { (emojis, error) in
 73 |             DispatchQueue.main.async {
 74 |                 completion?(emojis, error)
    |                             `- warning: capture of 'emojis' with non-sendable type 'EmojiCollection?' in a `@Sendable` closure; this is an error in the Swift 6 language mode
 75 |             }
 76 |         }
/host/spi-builder-workspace/Sources/EmojiCollection.swift:11:14: note: class 'EmojiCollection' does not conform to the 'Sendable' protocol
  9 | import Foundation
 10 |
 11 | public class EmojiCollection: Codable {
    |              `- note: class 'EmojiCollection' does not conform to the 'Sendable' protocol
 12 |
 13 |     private static let fileEndPattern = "#EOF"
/host/spi-builder-workspace/Sources/EmojiLoader.swift:114:31: error: type 'URLSession' (aka 'AnyObject') has no member 'shared'
112 |         completion: @escaping (_ testResponse: String?, _ error: Error?) -> Void
113 |     ) {
114 |         let task = URLSession.shared.dataTask(with: url) { (data, _, error) in
    |                               `- error: type 'URLSession' (aka 'AnyObject') has no member 'shared'
115 |             guard
116 |                 let data = data,
[14/14] Compiling UnicodeEmoji EmojiLoader.swift
/host/spi-builder-workspace/Sources/EmojiLoader.swift:37:23: warning: static property 'shared' is not concurrency-safe because non-'Sendable' type 'EmojiLoader' may have shared mutable state; this is an error in the Swift 6 language mode
 33 | }
 34 |
 35 | public class EmojiLoader {
    |              `- note: class 'EmojiLoader' does not conform to the 'Sendable' protocol
 36 |
 37 |     public static let shared = EmojiLoader()
    |                       |- warning: static property 'shared' is not concurrency-safe because non-'Sendable' type 'EmojiLoader' may have shared mutable state; this is an error in the Swift 6 language mode
    |                       |- note: annotate 'shared' 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
 38 |
 39 |     private let unicodePublicFolder = "https://unicode.org/Public/emoji/"
/host/spi-builder-workspace/Sources/EmojiLoader.swift:74:17: warning: capture of 'completion' with non-sendable type 'EmojiListCompletion?' (aka 'Optional<(Optional<EmojiCollection>, Optional<any Error>) -> ()>') in a `@Sendable` closure; this is an error in the Swift 6 language mode
 72 |         load(unicodeVersion: UnicodeEmojiVersion.current, reload: forceReload) { (emojis, error) in
 73 |             DispatchQueue.main.async {
 74 |                 completion?(emojis, error)
    |                 |- warning: capture of 'completion' with non-sendable type 'EmojiListCompletion?' (aka 'Optional<(Optional<EmojiCollection>, Optional<any Error>) -> ()>') in a `@Sendable` closure; this is an error in the Swift 6 language mode
    |                 `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
 75 |             }
 76 |         }
/host/spi-builder-workspace/Sources/EmojiLoader.swift:74:29: warning: capture of 'emojis' with non-sendable type 'EmojiCollection?' in a `@Sendable` closure; this is an error in the Swift 6 language mode
 72 |         load(unicodeVersion: UnicodeEmojiVersion.current, reload: forceReload) { (emojis, error) in
 73 |             DispatchQueue.main.async {
 74 |                 completion?(emojis, error)
    |                             `- warning: capture of 'emojis' with non-sendable type 'EmojiCollection?' in a `@Sendable` closure; this is an error in the Swift 6 language mode
 75 |             }
 76 |         }
/host/spi-builder-workspace/Sources/EmojiCollection.swift:11:14: note: class 'EmojiCollection' does not conform to the 'Sendable' protocol
  9 | import Foundation
 10 |
 11 | public class EmojiCollection: Codable {
    |              `- note: class 'EmojiCollection' does not conform to the 'Sendable' protocol
 12 |
 13 |     private static let fileEndPattern = "#EOF"
/host/spi-builder-workspace/Sources/EmojiLoader.swift:114:31: error: type 'URLSession' (aka 'AnyObject') has no member 'shared'
112 |         completion: @escaping (_ testResponse: String?, _ error: Error?) -> Void
113 |     ) {
114 |         let task = URLSession.shared.dataTask(with: url) { (data, _, error) in
    |                               `- error: type 'URLSession' (aka 'AnyObject') has no member 'shared'
115 |             guard
116 |                 let data = data,
BUILD FAILURE 6.0 linux