Build Information
Successful build of EmojiKit, reference main (b57c28
), with Swift 6.0 for macOS (SPM) on 4 Nov 2024 08:48:22 UTC.
Swift 6 data race errors: 2
Build Command
env DEVELOPER_DIR=/Applications/Xcode-16.1.0.app xcrun swift build --arch arm64 -Xswiftc -Xfrontend -Xswiftc -stats-output-dir -Xswiftc -Xfrontend -Xswiftc .stats -Xswiftc -strict-concurrency=complete
Build Log
========================================
RunAll
========================================
Builder version: 4.56.0
Interrupt handler set up.
========================================
Checkout
========================================
Clone URL: https://github.com/niklasamslgruber/EmojiKit.git
Reference: main
Initialized empty Git repository in /Users/admin/builder/spi-builder-workspace/.git/
From https://github.com/niklasamslgruber/EmojiKit
* branch main -> FETCH_HEAD
* [new branch] main -> origin/main
HEAD is now at b57c289 Fix category names to match Apple categories (#5)
Cloned https://github.com/niklasamslgruber/EmojiKit.git
Revision (git rev-parse @):
b57c28995b8e398d31be0c8b07de0917b0ebb84b
SUCCESS checkout https://github.com/niklasamslgruber/EmojiKit.git at main
Fetching https://github.com/apple/swift-argument-parser.git
Fetching https://github.com/scinfu/SwiftSoup.git
[1/3184] Fetching swiftsoup
[670/15537] Fetching swiftsoup, swift-argument-parser
Fetched https://github.com/scinfu/SwiftSoup.git from cache (1.61s)
Fetched https://github.com/apple/swift-argument-parser.git from cache (1.61s)
Computing version for https://github.com/scinfu/SwiftSoup.git
Computed https://github.com/scinfu/SwiftSoup.git at 2.6.0 (3.28s)
Computing version for https://github.com/apple/swift-argument-parser.git
Computed https://github.com/apple/swift-argument-parser.git at 1.2.2 (0.73s)
Creating working copy for https://github.com/scinfu/SwiftSoup.git
Working copy of https://github.com/scinfu/SwiftSoup.git resolved at 2.6.0
Creating working copy for https://github.com/apple/swift-argument-parser.git
Working copy of https://github.com/apple/swift-argument-parser.git resolved at 1.2.2
========================================
ResolveProductDependencies
========================================
Resolving dependencies ...
{
"identity": ".resolve-product-dependencies",
"name": "resolve-dependencies",
"url": "/Users/admin/builder/spi-builder-workspace/.resolve-product-dependencies",
"version": "unspecified",
"path": "/Users/admin/builder/spi-builder-workspace/.resolve-product-dependencies",
"dependencies": [
{
"identity": "emojikit",
"name": "EmojiKit",
"url": "https://github.com/niklasamslgruber/EmojiKit.git",
"version": "unspecified",
"path": "/Users/admin/builder/spi-builder-workspace/.resolve-product-dependencies/.build/checkouts/EmojiKit",
"dependencies": [
]
}
]
}
Fetching https://github.com/niklasamslgruber/EmojiKit.git
[1/193] Fetching emojikit
Fetched https://github.com/niklasamslgruber/EmojiKit.git from cache (0.66s)
Creating working copy for https://github.com/niklasamslgruber/EmojiKit.git
Working copy of https://github.com/niklasamslgruber/EmojiKit.git resolved at main (b57c289)
warning: '.resolve-product-dependencies': dependency 'emojikit' is not used by any target
Found 0 product dependencies
========================================
Build
========================================
Selected platform: macosSpm
Swift version: 6.0
Building package at path: $PWD
https://github.com/niklasamslgruber/EmojiKit.git
Running build ...
env DEVELOPER_DIR=/Applications/Xcode-16.1.0.app xcrun swift build --arch arm64 -Xswiftc -Xfrontend -Xswiftc -stats-output-dir -Xswiftc -Xfrontend -Xswiftc .stats -Xswiftc -strict-concurrency=complete
[1/1] Compiling plugin GenerateManual
Building for debugging...
[1/15] Write sources
[5/15] Write EmojiSourceKit-entitlement.plist
[6/15] Copying emojis_v14.0.json
[7/15] Write sources
[8/15] Copying emojis_v13.1.json
[8/15] Copying emojis_v15.1.json
[8/15] Copying emojis_v15.0.json
[11/15] Write swift-version--7754E27361AE5C74.txt
[13/76] Emitting module ArgumentParserToolInfo
[14/76] Compiling ArgumentParserToolInfo ToolInfo.swift
[15/114] Compiling ArgumentParser Flag.swift
[16/114] Compiling ArgumentParser NameSpecification.swift
[17/114] Compiling ArgumentParser Option.swift
[18/114] Compiling ArgumentParser OptionGroup.swift
[19/114] Compiling ArgumentParser InputOrigin.swift
[20/114] Compiling ArgumentParser Name.swift
[21/114] Compiling ArgumentParser Parsed.swift
[22/114] Compiling ArgumentParser ParsedValues.swift
[23/118] Compiling ArgumentParser BashCompletionsGenerator.swift
[24/118] Compiling ArgumentParser CompletionsGenerator.swift
[25/118] Compiling ArgumentParser FishCompletionsGenerator.swift
[26/118] Compiling ArgumentParser ZshCompletionsGenerator.swift
[27/118] Compiling ArgumentParser Argument.swift
[28/118] Compiling ArgumentParser ArgumentHelp.swift
[29/118] Compiling ArgumentParser ArgumentVisibility.swift
[30/118] Compiling ArgumentParser CompletionKind.swift
[31/118] Compiling ArgumentParser Errors.swift
[32/118] Compiling ArgumentParser AsyncParsableCommand.swift
[33/118] Compiling ArgumentParser CommandConfiguration.swift
[34/118] Compiling ArgumentParser EnumerableFlag.swift
[35/118] Compiling ArgumentParser ExpressibleByArgument.swift
[36/118] Emitting module ArgumentParser
[37/118] Compiling ArgumentParser Platform.swift
[38/118] Compiling ArgumentParser SequenceExtensions.swift
[39/118] Compiling ArgumentParser StringExtensions.swift
[40/118] Compiling ArgumentParser Tree.swift
[41/118] Compiling EmojiKit resource_bundle_accessor.swift
[42/118] Compiling EmojiKit UnicodeEmojiCategory.swift
[43/118] Compiling EmojiKit EmojiManager.swift
[44/118] Emitting module EmojiKit
[45/118] Compiling EmojiKit AppleEmojiCategory.swift
[46/118] Compiling ArgumentParser ParsableArguments.swift
[47/118] Compiling ArgumentParser ParsableArgumentsValidation.swift
[48/118] Compiling ArgumentParser ParsableCommand.swift
[49/118] Compiling ArgumentParser ArgumentDecoder.swift
[50/118] Compiling SwiftSoup CharacterReader.swift
[51/118] Compiling SwiftSoup Cleaner.swift
[52/118] Compiling SwiftSoup Collector.swift
[53/118] Compiling SwiftSoup CombiningEvaluator.swift
[54/118] Compiling SwiftSoup Comment.swift
[55/118] Compiling SwiftSoup Connection.swift
[56/118] Compiling ArgumentParser HelpGenerator.swift
[57/118] Compiling ArgumentParser MessageInfo.swift
[58/118] Compiling ArgumentParser UsageGenerator.swift
[59/118] Compiling ArgumentParser CollectionExtensions.swift
[60/118] Compiling ArgumentParser ParserError.swift
[61/118] Compiling ArgumentParser SplitArguments.swift
[62/118] Compiling ArgumentParser DumpHelpGenerator.swift
[63/119] Compiling ArgumentParser HelpCommand.swift
[64/119] Compiling ArgumentParser ArgumentDefinition.swift
[65/120] Compiling ArgumentParser ArgumentSet.swift
[66/120] Compiling ArgumentParser CommandParser.swift
[67/120] Compiling ArgumentParser InputKey.swift
[86/123] Emitting module SwiftSoup
[110/123] Compiling SwiftSoup HtmlTreeBuilderState.swift
[111/123] Compiling SwiftSoup HttpStatusException.swift
[112/123] Compiling SwiftSoup Mutex.swift
[113/123] Compiling SwiftSoup Node.swift
[114/123] Compiling SwiftSoup NodeTraversor.swift
[115/123] Compiling SwiftSoup NodeVisitor.swift
[116/123] Compiling SwiftSoup UnicodeScalar.swift
[117/123] Compiling SwiftSoup Validate.swift
[118/123] Compiling SwiftSoup Whitelist.swift
[119/123] Compiling SwiftSoup XmlDeclaration.swift
[120/123] Compiling SwiftSoup XmlTreeBuilder.swift
[121/128] Emitting module EmojiSourceKit
/Users/admin/builder/spi-builder-workspace/Sources/EmojiSourceKit/EmojiDownloader.swift:15:16: warning: static property 'configuration' is not concurrency-safe because non-'Sendable' type 'CommandConfiguration' may have shared mutable state; this is an error in the Swift 6 language mode
13 | struct EmojiDownloader: ParsableCommand, AsyncParsableCommand {
14 |
15 | static let configuration: CommandConfiguration = CommandConfiguration(
| `- warning: static property 'configuration' is not concurrency-safe because non-'Sendable' type 'CommandConfiguration' may have shared mutable state; this is an error in the Swift 6 language mode
16 | commandName: "download",
17 | abstract: "Downloads a list of all available emojis and their counts from unicode.rog for the respective unicode version"
/Users/admin/builder/spi-builder-workspace/.build/checkouts/swift-argument-parser/Sources/ArgumentParser/Parsable Types/CommandConfiguration.swift:13:15: note: struct 'CommandConfiguration' does not conform to the 'Sendable' protocol
11 |
12 | /// The configuration for a command.
13 | public struct CommandConfiguration {
| `- note: struct 'CommandConfiguration' does not conform to the 'Sendable' protocol
14 | /// The name of the command to use on the command line.
15 | ///
/Users/admin/builder/spi-builder-workspace/Sources/EmojiSourceKit/EmojiDownloader.swift:9:1: warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'ArgumentParser'
7 |
8 | import Foundation
9 | import ArgumentParser
| `- warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'ArgumentParser'
10 | import EmojiKit
11 |
:
13 | struct EmojiDownloader: ParsableCommand, AsyncParsableCommand {
14 |
15 | static let configuration: CommandConfiguration = CommandConfiguration(
| |- note: annotate 'configuration' 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
16 | commandName: "download",
17 | abstract: "Downloads a list of all available emojis and their counts from unicode.rog for the respective unicode version"
/Users/admin/builder/spi-builder-workspace/Sources/EmojiSourceKit/EmojiDownloader.swift:126:1: warning: extension declares a conformance of imported type 'Version' to imported protocol 'ExpressibleByArgument'; this will not behave correctly if the owners of 'EmojiKit' introduce this conformance in the future
124 | }
125 | #endif
126 | extension EmojiManager.Version: ExpressibleByArgument {}
| |- warning: extension declares a conformance of imported type 'Version' to imported protocol 'ExpressibleByArgument'; this will not behave correctly if the owners of 'EmojiKit' introduce this conformance in the future
| `- note: add '@retroactive' to silence this warning
127 |
/Users/admin/builder/spi-builder-workspace/Sources/EmojiSourceKit/EmojiScripts.swift:15:16: warning: static property 'configuration' is not concurrency-safe because non-'Sendable' type 'CommandConfiguration' may have shared mutable state; this is an error in the Swift 6 language mode
13 |
14 | #if os(macOS)
15 | static let configuration: CommandConfiguration = CommandConfiguration(
| `- warning: static property 'configuration' is not concurrency-safe because non-'Sendable' type 'CommandConfiguration' may have shared mutable state; this is an error in the Swift 6 language mode
16 | commandName: "emojis",
17 | abstract: "Manage Emojis from Unicode",
/Users/admin/builder/spi-builder-workspace/.build/checkouts/swift-argument-parser/Sources/ArgumentParser/Parsable Types/CommandConfiguration.swift:13:15: note: struct 'CommandConfiguration' does not conform to the 'Sendable' protocol
11 |
12 | /// The configuration for a command.
13 | public struct CommandConfiguration {
| `- note: struct 'CommandConfiguration' does not conform to the 'Sendable' protocol
14 | /// The name of the command to use on the command line.
15 | ///
/Users/admin/builder/spi-builder-workspace/Sources/EmojiSourceKit/EmojiScripts.swift:9:1: warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'ArgumentParser'
7 |
8 | import Foundation
9 | import ArgumentParser
| `- warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'ArgumentParser'
10 |
11 | @main
:
13 |
14 | #if os(macOS)
15 | static let configuration: CommandConfiguration = CommandConfiguration(
| |- note: annotate 'configuration' 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
16 | commandName: "emojis",
17 | abstract: "Manage Emojis from Unicode",
[122/128] Compiling EmojiSourceKit StringHelper.swift
[123/128] Compiling EmojiSourceKit UnicodeParser.swift
[124/128] Compiling EmojiSourceKit EmojiScripts.swift
/Users/admin/builder/spi-builder-workspace/Sources/EmojiSourceKit/EmojiScripts.swift:15:16: warning: static property 'configuration' is not concurrency-safe because non-'Sendable' type 'CommandConfiguration' may have shared mutable state; this is an error in the Swift 6 language mode
13 |
14 | #if os(macOS)
15 | static let configuration: CommandConfiguration = CommandConfiguration(
| `- warning: static property 'configuration' is not concurrency-safe because non-'Sendable' type 'CommandConfiguration' may have shared mutable state; this is an error in the Swift 6 language mode
16 | commandName: "emojis",
17 | abstract: "Manage Emojis from Unicode",
/Users/admin/builder/spi-builder-workspace/.build/checkouts/swift-argument-parser/Sources/ArgumentParser/Parsable Types/CommandConfiguration.swift:13:15: note: struct 'CommandConfiguration' does not conform to the 'Sendable' protocol
11 |
12 | /// The configuration for a command.
13 | public struct CommandConfiguration {
| `- note: struct 'CommandConfiguration' does not conform to the 'Sendable' protocol
14 | /// The name of the command to use on the command line.
15 | ///
/Users/admin/builder/spi-builder-workspace/Sources/EmojiSourceKit/EmojiScripts.swift:9:1: warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'ArgumentParser'
7 |
8 | import Foundation
9 | import ArgumentParser
| `- warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'ArgumentParser'
10 |
11 | @main
:
13 |
14 | #if os(macOS)
15 | static let configuration: CommandConfiguration = CommandConfiguration(
| |- note: annotate 'configuration' 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
16 | commandName: "emojis",
17 | abstract: "Manage Emojis from Unicode",
[125/128] Compiling EmojiSourceKit EmojiDownloader.swift
/Users/admin/builder/spi-builder-workspace/Sources/EmojiSourceKit/EmojiDownloader.swift:15:16: warning: static property 'configuration' is not concurrency-safe because non-'Sendable' type 'CommandConfiguration' may have shared mutable state; this is an error in the Swift 6 language mode
13 | struct EmojiDownloader: ParsableCommand, AsyncParsableCommand {
14 |
15 | static let configuration: CommandConfiguration = CommandConfiguration(
| `- warning: static property 'configuration' is not concurrency-safe because non-'Sendable' type 'CommandConfiguration' may have shared mutable state; this is an error in the Swift 6 language mode
16 | commandName: "download",
17 | abstract: "Downloads a list of all available emojis and their counts from unicode.rog for the respective unicode version"
/Users/admin/builder/spi-builder-workspace/.build/checkouts/swift-argument-parser/Sources/ArgumentParser/Parsable Types/CommandConfiguration.swift:13:15: note: struct 'CommandConfiguration' does not conform to the 'Sendable' protocol
11 |
12 | /// The configuration for a command.
13 | public struct CommandConfiguration {
| `- note: struct 'CommandConfiguration' does not conform to the 'Sendable' protocol
14 | /// The name of the command to use on the command line.
15 | ///
/Users/admin/builder/spi-builder-workspace/Sources/EmojiSourceKit/EmojiDownloader.swift:9:1: warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'ArgumentParser'
7 |
8 | import Foundation
9 | import ArgumentParser
| `- warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'ArgumentParser'
10 | import EmojiKit
11 |
:
13 | struct EmojiDownloader: ParsableCommand, AsyncParsableCommand {
14 |
15 | static let configuration: CommandConfiguration = CommandConfiguration(
| |- note: annotate 'configuration' 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
16 | commandName: "download",
17 | abstract: "Downloads a list of all available emojis and their counts from unicode.rog for the respective unicode version"
/Users/admin/builder/spi-builder-workspace/Sources/EmojiSourceKit/EmojiDownloader.swift:126:1: warning: extension declares a conformance of imported type 'Version' to imported protocol 'ExpressibleByArgument'; this will not behave correctly if the owners of 'EmojiKit' introduce this conformance in the future
124 | }
125 | #endif
126 | extension EmojiManager.Version: ExpressibleByArgument {}
| |- warning: extension declares a conformance of imported type 'Version' to imported protocol 'ExpressibleByArgument'; this will not behave correctly if the owners of 'EmojiKit' introduce this conformance in the future
| `- note: add '@retroactive' to silence this warning
127 |
[125/128] Write Objects.LinkFileList
[126/128] Linking EmojiSourceKit
[127/128] Applying EmojiSourceKit
Build complete! (20.55s)
Build complete.
{
"dependencies" : [
{
"identity" : "swift-argument-parser",
"requirement" : {
"range" : [
{
"lower_bound" : "1.0.0",
"upper_bound" : "2.0.0"
}
]
},
"type" : "sourceControl",
"url" : "https://github.com/apple/swift-argument-parser.git"
},
{
"identity" : "swiftsoup",
"requirement" : {
"range" : [
{
"lower_bound" : "2.6.0",
"upper_bound" : "3.0.0"
}
]
},
"type" : "sourceControl",
"url" : "https://github.com/scinfu/SwiftSoup.git"
}
],
"manifest_display_name" : "EmojiKit",
"name" : "EmojiKit",
"path" : "/Users/admin/builder/spi-builder-workspace",
"platforms" : [
{
"name" : "macos",
"version" : "13.0"
},
{
"name" : "ios",
"version" : "15.0"
},
{
"name" : "watchos",
"version" : "8.0"
},
{
"name" : "tvos",
"version" : "15.0"
}
],
"products" : [
{
"name" : "EmojiKit",
"targets" : [
"EmojiKit"
],
"type" : {
"library" : [
"automatic"
]
}
},
{
"name" : "EmojiSourceKit",
"targets" : [
"EmojiSourceKit"
],
"type" : {
"executable" : null
}
}
],
"targets" : [
{
"c99name" : "EmojiSourceKit",
"module_type" : "SwiftTarget",
"name" : "EmojiSourceKit",
"path" : "Sources/EmojiSourceKit",
"product_dependencies" : [
"ArgumentParser",
"SwiftSoup"
],
"product_memberships" : [
"EmojiSourceKit"
],
"sources" : [
"EmojiDownloader.swift",
"EmojiScripts.swift",
"StringHelper.swift",
"UnicodeParser.swift"
],
"target_dependencies" : [
"EmojiKit"
],
"type" : "executable"
},
{
"c99name" : "EmojiKit",
"module_type" : "SwiftTarget",
"name" : "EmojiKit",
"path" : "Sources/EmojiKit",
"product_memberships" : [
"EmojiKit",
"EmojiSourceKit"
],
"resources" : [
{
"path" : "/Users/admin/builder/spi-builder-workspace/Sources/EmojiKit/Resources/emojis_v13.1.json",
"rule" : {
"process" : {
}
}
},
{
"path" : "/Users/admin/builder/spi-builder-workspace/Sources/EmojiKit/Resources/emojis_v14.0.json",
"rule" : {
"process" : {
}
}
},
{
"path" : "/Users/admin/builder/spi-builder-workspace/Sources/EmojiKit/Resources/emojis_v15.0.json",
"rule" : {
"process" : {
}
}
},
{
"path" : "/Users/admin/builder/spi-builder-workspace/Sources/EmojiKit/Resources/emojis_v15.1.json",
"rule" : {
"process" : {
}
}
}
],
"sources" : [
"AppleEmojiCategory.swift",
"EmojiManager.swift",
"UnicodeEmojiCategory.swift"
],
"type" : "library"
}
],
"tools_version" : "5.8"
}
Done.