The Swift Package Index logo.Swift Package Index

Build Information

Successful build of IMessage, reference main (fdc564), with Swift 6.4 for macOS (SPM) on 9 Oct 2026 08:02:30 UTC.

Swift 6 data race errors: 0

Build Command

env DEVELOPER_DIR=/Applications/Xcode-27.0.0-Release.Candidate.app xcrun swift build --arch arm64

Build Log

========================================
RunAll
========================================
Builder version: 5.1.1
Interrupt handler set up.
========================================
Checkout
========================================
Clone URL: https://github.com/beeper/platform-imessage.git
Reference: main
Initialized empty Git repository in /Users/admin/builder/spi-builder-workspace/.git/
From https://github.com/beeper/platform-imessage
 * branch            main       -> FETCH_HEAD
 * [new branch]      main       -> origin/main
HEAD is now at fdc5640 0.24.9
Cloned https://github.com/beeper/platform-imessage.git
Revision (git rev-parse @):
fdc5640bfcf936c3d8208bc15411944b7ed9819c
SUCCESS checkout https://github.com/beeper/platform-imessage.git at main
========================================
Build
========================================
Selected platform:         macosSpm
Swift version:             6.4
Building package at path:  $PWD
https://github.com/beeper/platform-imessage.git
Running build ...
env DEVELOPER_DIR=/Applications/Xcode-27.0.0-Release.Candidate.app xcrun swift build --arch arm64
Building for debugging...
[Computing dependencies]
[Provisioning 6 / 75]
[Pre-planning 1 / 1741]
[Planning 1657 / 1741]
[Planning deferred tasks]
[Constructing 1546 / 3817]
[59 / 768] SwiftSyntaxBuilder
[322 / 768]
[356 / 768]
[367 / 782] Yams
[373 / 799]
[379 / 817] ExceptionCatcher
[381 / 830] Rainbow
[386 / 905]
[391 / 905] SwiftSyntax602
[423 / 982]
[442 / 1033]
[461 / 1050]
[475 / 1116]
[493 / 1116]
[509 / 1116] InternalCollectionsUtilities
[528 / 1116]
[543 / 1116]
[557 / 1116]
[564 / 1116] CYaml
[567 / 1116] CYaml
[574 / 1116] CYaml
[580 / 1116]
[588 / 1116]
[598 / 1116] SwiftSyntax602
[615 / 1116]
[626 / 1116]
[638 / 1116] _SwiftSyntaxCShims
[647 / 1116]
[662 / 1116]
[668 / 1116]
[675 / 1116] Rainbow-product
[682 / 1116]
[688 / 1116]
[694 / 1116]
[699 / 1116] Rainbow-product
[705 / 1116]
[709 / 1116]
[712 / 1116] Rainbow
[715 / 1116]
[724 / 1116] EmojiSPIObjc
[732 / 1116] ExceptionCatcher
[744 / 1116]
[749 / 1116]
[755 / 1116] Yams
[766 / 1116]
[770 / 1116]
[774 / 1116]
[777 / 1116] Logging
[780 / 1116] Logging-product
[782 / 1116] SQLite
[788 / 1116] InternalCollectionsUtilities
[796 / 1116] Logging
[798 / 1116] InternalCollectionsUtilities
[806 / 1116] ExceptionCatcher-product
[819 / 1117] WindowControl
[822 / 1128] _RopeModule
[824 / 1134] WindowControl
[831 / 1134] ExceptionCatcher
[836 / 1134]
[840 / 1134]
[842 / 1134] _RopeModule
[850 / 1134] _RopeModule
[853 / 1134] SwiftSyntax602
[861 / 1134] SwiftSyntax601
[872 / 1141] HashTreeCollections
[875 / 1147] HeapModule
[878 / 1154] SpanPreview
[890 / 1176] HashTreeCollections
[900 / 1200] OrderedCollections
[906 / 1211] Chroma
[907 / 1211] OrderedCollections
[912 / 1225] SQLite
[920 / 1225] IMessageCore
[923 / 1225] Chroma
[936 / 1225] SwiftSyntax
[937 / 1225] OrderedCollections
[939 / 1225] OrderedCollections
[947 / 1225] HashTreeCollections
[956 / 1225] SQLite
[958 / 1225] SQLite
[962 / 1225] OrderedCollections
[964 / 1225] OrderedCollections
[965 / 1225] SQLite
[967 / 1225] IMessageCore
[968 / 1225] IMessageCore
[972 / 1225] OrderedCollections
[976 / 1225] IMessageCore
[977 / 1225] HeapModule
[980 / 1225] HeapModule
[984 / 1225] HashTreeCollections
[987 / 1225] IMessageCore
[989 / 1225] HashTreeCollections
[993 / 1225] HashTreeCollections
[994 / 1225] HashTreeCollections
[995 / 1225] GenerateIMessageCLIVersion-product
[997 / 1225] Chroma
[999 / 1225] Chroma-product
[1010 / 1225] SwiftSyntax
[1012 / 1225] SwiftSyntax-product
[1014 / 1227]
[1015 / 1228] Logging-product
[1019 / 1242] AccessibilityControl
[1022 / 1260] SwiftParser
[1023 / 1271] SwiftBasicFormat
[1037 / 1271] SwiftParser
[1038 / 1285] AccessibilityControl
[1041 / 1296] BitCollections
[1050 / 1296] SwiftParser
[1052 / 1296] AccessibilityControl
[1066 / 1296] ArgumentParser
[1068 / 1296] ArgumentParser
[1074 / 1296] SwiftDiagnostics
[1076 / 1296] SwiftDiagnostics
[1078 / 1296] SwiftDiagnostics
[1079 / 1296] SwiftDiagnostics
[1082 / 1296] SwiftOperators
[1089 / 1296] SwiftBasicFormat
[1096 / 1296] BitCollections
[1098 / 1296] BitCollections
[1101 / 1296] SwiftParser
[1107 / 1296] ArgumentParser
[1108 / 1296] ArgumentParser
[1111 / 1296] ArgumentParser-product
[1113 / 1296] ArgumentParser
[1115 / 1296] ArgumentParser
[1118 / 1296] AccessibilityControl
[1122 / 1296] AccessibilityControl
[1124 / 1296] BetterSwiftAX-product
[1127 / 1297]
[1130 / 1309] AccessibilityControl
[1136 / 1320] SwiftOperators
[1138 / 1320] SwiftParserDiagnostics
[1140 / 1320] SwiftParserDiagnostics
[1155 / 1320] SwiftSyntaxBuilder
[1161 / 1320] SwiftOperators
[1167 / 1321] SwiftParserDiagnostics
[1176 / 1323] SwiftOperators
[1188 / 1334] DequeModule
[1189 / 1345] SwiftSyntaxBuilder
[1193 / 1345] SwiftSyntaxBuilder
[1194 / 1345] SwiftSyntaxBuilder
[1198 / 1349] SwiftSyntaxBuilder
[1202 / 1349] SwiftSyntaxBuilder
[1212 / 1349] EmojiSPI
[1221 / 1349] DequeModule
[1221 / 1349]
[1225 / 1350] DequeModule
[1225 / 1350] SwiftIfConfig
[1235 / 1361] DequeModule
[1242 / 1361] SwiftIfConfig
[1253 / 1366] Collections
[1261 / 1366] DequeModule
[1264 / 1367] AsyncAlgorithms
[1274 / 1388] SwiftSyntaxMacros
[1276 / 1388] SwiftSyntaxMacros
[1288 / 1388] SwiftSyntaxMacros
[1293 / 1389]
[1293 / 1389] AsyncAlgorithms
[1301 / 1390] SwiftSyntaxMacroExpansion
[1308 / 1400] SwiftSyntaxMacroExpansion
[1310 / 1400] SwiftSyntaxMacroExpansion
[1318 / 1401] SwiftSyntaxMacroExpansion
[1326 / 1423] SwiftCompilerPluginMessageHandling
[1330 / 1423] IMDatabase
[1336 / 1423] IMDatabase
[1342 / 1423] SwiftCompilerPluginMessageHandling
[1350 / 1423] SwiftCompilerPlugin
[1357 / 1423]
[1359 / 1425] SwiftCompilerPluginMessageHandling
[1360 / 1425] IMDatabase
[1364 / 1427] SwiftCompilerPlugin
[1371 / 1427] IMDatabaseTestBench-product
[1377 / 1433] IMDatabaseTestBench-product
[1378 / 1433] SwiftSyntax
[1380 / 1433] SwiftSyntax
[1386 / 1433] SwiftSyntaxBuilder
[1390 / 1433] SwiftCompilerPluginMessageHandling
[1401 / 1434] PlatformSDKMacros
[1404 / 1437] PlatformSDKMacros
[1406 / 1437] PlatformSDKMacros
[1409 / 1437] PlatformSDKMacros
[1412 / 1438] PlatformSDK
[1423 / 1449] PlatformSDK
[1431 / 1449] PlatformSDK
[1433 / 1450] IMessage
[1440 / 1469]
[1441 / 1469]
[1452 / 1469] IMessage
[1453 / 1469] IMessage
[1460 / 1469] IMessage
[1464 / 1469] IMessage-product
[1464 / 1469] imessage-cli-product
[1465 / 1470] imessage-cli-product
[1472 / 1477] imessage-cli-product
[1473 / 1477] imessage-cli-product
[1475 / 1477] imessage-cli-product
Build complete! (39.23 sec)
Fetching https://github.com/swiftlang/swift-syntax.git
Fetching https://github.com/apple/swift-async-algorithms
Fetching https://github.com/apple/swift-collections.git
Fetching https://github.com/onevcat/Chroma.git
Fetching https://github.com/jpsim/Yams.git
Fetching https://github.com/apple/swift-argument-parser
Fetching https://github.com/apple/swift-log.git
[1/845] Fetching chroma
[35/9102] Fetching chroma, swift-log
[36/15908] Fetching chroma, swift-log, swift-async-algorithms
[37/27790] Fetching chroma, swift-log, swift-async-algorithms, yams
[4605/46886] Fetching chroma, swift-log, swift-async-algorithms, yams, swift-argument-parser
[6212/75577] Fetching chroma, swift-log, swift-async-algorithms, yams, swift-argument-parser, swift-collections
[47832/155979] Fetching chroma, swift-log, swift-async-algorithms, yams, swift-argument-parser, swift-collections, swift-syntax
Fetched https://github.com/apple/swift-collections.git (3.49s)
Fetched https://github.com/apple/swift-async-algorithms (3.49s)
Fetched https://github.com/onevcat/Chroma.git (3.49s)
Fetching https://github.com/beeper/BetterSwiftAX.git
[69377/119637] Fetching swift-log, yams, swift-argument-parser, swift-syntax
Fetching https://github.com/sindresorhus/ExceptionCatcher
Fetched https://github.com/apple/swift-argument-parser (4.04s)
Fetched https://github.com/apple/swift-log.git (4.04s)
Fetched https://github.com/jpsim/Yams.git (4.04s)
[49046/80402] Fetching swift-syntax
[53067/80506] Fetching swift-syntax, exceptioncatcher
[53171/81077] Fetching swift-syntax, exceptioncatcher, betterswiftax
Fetched https://github.com/sindresorhus/ExceptionCatcher (0.70s)
[53996/80973] Fetching swift-syntax, betterswiftax
Fetched https://github.com/beeper/BetterSwiftAX.git (0.99s)
[61106/80402] Fetching swift-syntax
Fetched https://github.com/swiftlang/swift-syntax.git (6.89s)
Computing version for https://github.com/onevcat/Chroma.git
Computed https://github.com/onevcat/Chroma.git at 0.3.1 (7.52s)
Fetching https://github.com/onevcat/Rainbow.git
Fetching https://github.com/apple/swift-configuration
[1/1514] Fetching rainbow
[2/5410] Fetching rainbow, swift-configuration
Fetched https://github.com/onevcat/Rainbow.git (1.12s)
Fetched https://github.com/apple/swift-configuration (1.12s)
Computing version for https://github.com/apple/swift-configuration
Computed https://github.com/apple/swift-configuration at 0.2.0 (3.37s)
Fetching https://github.com/apple/swift-system
Fetching https://github.com/swift-server/swift-service-lifecycle
[1/2867] Fetching swift-service-lifecycle
[718/10108] Fetching swift-service-lifecycle, swift-system
Fetched https://github.com/apple/swift-system (1.39s)
Fetched https://github.com/swift-server/swift-service-lifecycle (1.39s)
Computing version for https://github.com/jpsim/Yams.git
Computed https://github.com/jpsim/Yams.git at 6.2.2 (1.96s)
Computing version for https://github.com/beeper/BetterSwiftAX.git
Computed https://github.com/beeper/BetterSwiftAX.git at 0.1.3 (0.54s)
Computing version for https://github.com/onevcat/Rainbow.git
Computed https://github.com/onevcat/Rainbow.git at 4.2.2 (2.13s)
Computing version for https://github.com/sindresorhus/ExceptionCatcher
Computed https://github.com/sindresorhus/ExceptionCatcher at 2.2.1 (0.53s)
Computing version for https://github.com/apple/swift-argument-parser
Computed https://github.com/apple/swift-argument-parser at 1.8.2 (0.55s)
Computing version for https://github.com/swift-server/swift-service-lifecycle
Computed https://github.com/swift-server/swift-service-lifecycle at 2.12.1 (0.53s)
Computing version for https://github.com/apple/swift-async-algorithms
Computed https://github.com/apple/swift-async-algorithms at 1.1.7 (0.59s)
Computing version for https://github.com/apple/swift-collections.git
Computed https://github.com/apple/swift-collections.git at 1.7.2 (0.65s)
Computing version for https://github.com/apple/swift-log.git
Computed https://github.com/apple/swift-log.git at 1.16.1 (0.54s)
Computing version for https://github.com/apple/swift-system
Computed https://github.com/apple/swift-system at 1.8.1 (0.56s)
Computing version for https://github.com/swiftlang/swift-syntax.git
Computed https://github.com/swiftlang/swift-syntax.git at 603.0.0-prerelease-2025-10-30 (0.72s)
Creating working copy for https://github.com/apple/swift-async-algorithms
Working copy of https://github.com/apple/swift-async-algorithms resolved at 1.1.7
Creating working copy for https://github.com/jpsim/Yams.git
Working copy of https://github.com/jpsim/Yams.git resolved at 6.2.2
Creating working copy for https://github.com/apple/swift-argument-parser
Working copy of https://github.com/apple/swift-argument-parser resolved at 1.8.2
Creating working copy for https://github.com/swift-server/swift-service-lifecycle
Working copy of https://github.com/swift-server/swift-service-lifecycle resolved at 2.12.1
Creating working copy for https://github.com/apple/swift-system
Working copy of https://github.com/apple/swift-system resolved at 1.8.1
Creating working copy for https://github.com/sindresorhus/ExceptionCatcher
Working copy of https://github.com/sindresorhus/ExceptionCatcher resolved at 2.2.1
Creating working copy for https://github.com/beeper/BetterSwiftAX.git
Working copy of https://github.com/beeper/BetterSwiftAX.git resolved at 0.1.3
Creating working copy for https://github.com/apple/swift-collections.git
Working copy of https://github.com/apple/swift-collections.git resolved at 1.7.2
Creating working copy for https://github.com/onevcat/Rainbow.git
Working copy of https://github.com/onevcat/Rainbow.git resolved at 4.2.2
Creating working copy for https://github.com/apple/swift-log.git
Working copy of https://github.com/apple/swift-log.git resolved at 1.16.1
Creating working copy for https://github.com/onevcat/Chroma.git
Working copy of https://github.com/onevcat/Chroma.git resolved at 0.3.1
Creating working copy for https://github.com/swiftlang/swift-syntax.git
Working copy of https://github.com/swiftlang/swift-syntax.git resolved at 603.0.0-prerelease-2025-10-30
Creating working copy for https://github.com/apple/swift-configuration
Working copy of https://github.com/apple/swift-configuration resolved at 0.2.0
<module-includes>:1:9: note: in file included from <module-includes>:1:
1 | #import "WindowControl.h"
  |         `- note: in file included from <module-includes>:1:
2 |
1 warning generated.
/Users/admin/builder/spi-builder-workspace/.build/checkouts/BetterSwiftAX/Sources/CWindowControl/include/WindowControl.h:12:1: warning: umbrella header for module 'CWindowControl' does not include header 'SkyLight.h'
10 |
11 | #endif /* WindowList_h */
12 |
   | `- warning: umbrella header for module 'CWindowControl' does not include header 'SkyLight.h'
/Users/admin/builder/spi-builder-workspace/src/IMessage/Sources/IMDatabase/Support/AttributedBodyDecoder.swift:13:32: warning: 'NSUnarchiver' was deprecated in macOS 10.13: Use NSKeyedUnarchiver instead [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/deprecated-declaration\DeprecatedDeclaration]8;;\]
11 |
12 |     public static func attributedString(from data: Data) throws -> NSAttributedString {
13 |         guard let unarchiver = NSUnarchiver(forReadingWith: data) else {
   |                                `- warning: 'NSUnarchiver' was deprecated in macOS 10.13: Use NSKeyedUnarchiver instead [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/deprecated-declaration\DeprecatedDeclaration]8;;\]
14 |             throw ErrorMessage("couldn't create NSUnarchiver")
15 |         }
[#DeprecatedDeclaration]: <https://docs.swift.org/compiler/documentation/diagnostics/deprecated-declaration>
/Users/admin/builder/spi-builder-workspace/src/IMessage/Sources/IMDatabaseTestBench/TestBench.swift:412:13: warning: unstructured throwing task created by 'init(name:priority:operation:)' is not used, which may accidentally ignore errors thrown inside the task [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/no-use-throwing-unstructured-task\NoUseUnstructuredThrowingTask]8;;\]
410 |             print("total watcher count: \(watchers.count)")
411 |
412 |             Task {
    |             |- warning: unstructured throwing task created by 'init(name:priority:operation:)' is not used, which may accidentally ignore errors thrown inside the task [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/no-use-throwing-unstructured-task\NoUseUnstructuredThrowingTask]8;;\]
    |             `- note: to silence this warning, handle the error inside the task, or store/discard the task value explicitly
413 |                 for try await event in topic.subscribe() {
414 |                     switch event {
[#NoUseUnstructuredThrowingTask]: <https://docs.swift.org/compiler/documentation/diagnostics/no-use-throwing-unstructured-task>
/Users/admin/builder/spi-builder-workspace/src/IMessage/Sources/IMessage/Mappers/MessageMapper+Payloads.swift:14:48: warning: 'unarchiveTopLevelObjectWithData' was deprecated in macOS 10.14: Use unarchivedObject(ofClass:from:) instead [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/deprecated-declaration\DeprecatedDeclaration]8;;\]
 12 |             return unarchiveKeyedPayload(normalized) ?? normalized
 13 |         }
 14 |         if let object = try? NSKeyedUnarchiver.unarchiveTopLevelObjectWithData(data) {
    |                                                `- warning: 'unarchiveTopLevelObjectWithData' was deprecated in macOS 10.14: Use unarchivedObject(ofClass:from:) instead [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/deprecated-declaration\DeprecatedDeclaration]8;;\]
 15 |             return normalizeFoundationObject(object)
 16 |         }
[#DeprecatedDeclaration]: <https://docs.swift.org/compiler/documentation/diagnostics/deprecated-declaration>
/Users/admin/builder/spi-builder-workspace/src/IMessage/Sources/IMessage/OnboardingView.swift:222:16: warning: result builder 'ContentBuilder' (aka 'ViewBuilder') does not implement 'buildLimitedAvailability'; this code may crash on earlier versions of the OS [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/result-builder-methods\ResultBuilderMethods]8;;\]
220 |     var body: some View {
221 |         HStack(spacing: 0) {
222 |             if #available(macOS 13.0, *) {
    |                `- warning: result builder 'ContentBuilder' (aka 'ViewBuilder') does not implement 'buildLimitedAvailability'; this code may crash on earlier versions of the OS [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/result-builder-methods\ResultBuilderMethods]8;;\]
223 |                 MessageBubble(text: "Turn on \(PermissionsAppName.current) in the list", tl: 16, tr: 16, bl: 8, br: 16)
224 |                     .frame(maxWidth: .infinity, maxHeight: .infinity, alignment: .bottomTrailing)
/Users/admin/builder/spi-builder-workspace/src/IMessage/Sources/IMessage/OnboardingView.swift:221:9: warning: conformance of 'TupleContent<repeat each Content>' to 'View' is only available in macOS 26.0 or newer; this is an error in the Swift 6 language mode
217 | }
218 |
219 | struct OnboardingView: View {
    |        `- note: add '@available' attribute to enclosing struct
220 |     var body: some View {
    |         `- note: add '@available' attribute to enclosing property
221 |         HStack(spacing: 0) {
    |         |- warning: conformance of 'TupleContent<repeat each Content>' to 'View' is only available in macOS 26.0 or newer; this is an error in the Swift 6 language mode
    |         `- note: add 'if #available' version check
222 |             if #available(macOS 13.0, *) {
223 |                 MessageBubble(text: "Turn on \(PermissionsAppName.current) in the list", tl: 16, tr: 16, bl: 8, br: 16)
/Users/admin/builder/spi-builder-workspace/src/IMessage/Sources/IMessage/OnboardingView.swift:221:9: warning: conformance of 'TupleContent<repeat each Content>' to 'View' is only available in macOS 26.0 or newer; this is an error in the Swift 6 language mode
217 | }
218 |
219 | struct OnboardingView: View {
    |        `- note: add '@available' attribute to enclosing struct
220 |     var body: some View {
    |         `- note: add '@available' attribute to enclosing property
221 |         HStack(spacing: 0) {
    |         |- warning: conformance of 'TupleContent<repeat each Content>' to 'View' is only available in macOS 26.0 or newer; this is an error in the Swift 6 language mode
    |         `- note: add 'if #available' version check
222 |             if #available(macOS 13.0, *) {
223 |                 MessageBubble(text: "Turn on \(PermissionsAppName.current) in the list", tl: 16, tr: 16, bl: 8, br: 16)
/Users/admin/builder/spi-builder-workspace/src/IMessage/Sources/IMessage/OnboardingView.swift:220:25: warning: conformance of 'TupleContent<repeat each Content>' to 'View' is only available in macOS 26.0 or newer; this is an error in the Swift 6 language mode
217 | }
218 |
219 | struct OnboardingView: View {
    |        `- note: add '@available' attribute to enclosing struct
220 |     var body: some View {
    |         |               |- warning: conformance of 'TupleContent<repeat each Content>' to 'View' is only available in macOS 26.0 or newer; this is an error in the Swift 6 language mode
    |         |               `- note: add 'if #available' version check
    |         `- note: add '@available' attribute to enclosing property
221 |         HStack(spacing: 0) {
222 |             if #available(macOS 13.0, *) {
[#ResultBuilderMethods]: <https://docs.swift.org/compiler/documentation/diagnostics/result-builder-methods>
/Users/admin/builder/spi-builder-workspace/src/IMessage/Sources/IMessage/PromptAutomation.swift:69:42: warning: 'open(_:options:configuration:)' was deprecated in macOS 11.0: Use -[NSWorkspace openURL:configuration:completionHandler:] instead. [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/deprecated-declaration\DeprecatedDeclaration]8;;\]
 67 |
 68 |     static func disableNotificationsForApp(named appName: String) throws -> Bool {
 69 |         let app = try NSWorkspace.shared.open(
    |                                          `- warning: 'open(_:options:configuration:)' was deprecated in macOS 11.0: Use -[NSWorkspace openURL:configuration:completionHandler:] instead. [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/deprecated-declaration\DeprecatedDeclaration]8;;\]
 70 |             URL(string: "x-apple.systempreferences:com.apple.preference.notifications")!,
 71 |             options: [.withoutActivation], // .andHide shows a gray background and doesn't render the UI
/Users/admin/builder/spi-builder-workspace/src/IMessage/Sources/IMessage/PromptAutomation.swift:71:24: warning: 'withoutActivation' was deprecated in macOS 11.0: Use -[NSWorkspaceOpenConfiguration setActivates:NO] instead. [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/deprecated-declaration\DeprecatedDeclaration]8;;\]
 69 |         let app = try NSWorkspace.shared.open(
 70 |             URL(string: "x-apple.systempreferences:com.apple.preference.notifications")!,
 71 |             options: [.withoutActivation], // .andHide shows a gray background and doesn't render the UI
    |                        `- warning: 'withoutActivation' was deprecated in macOS 11.0: Use -[NSWorkspaceOpenConfiguration setActivates:NO] instead. [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/deprecated-declaration\DeprecatedDeclaration]8;;\]
 72 |             configuration: [:]
 73 |         )
[#DeprecatedDeclaration]: <https://docs.swift.org/compiler/documentation/diagnostics/deprecated-declaration>
Build complete.
{
  "dependencies" : [
    {
      "identity" : "exceptioncatcher",
      "requirement" : {
        "range" : [
          {
            "lower_bound" : "2.0.1",
            "upper_bound" : "3.0.0"
          }
        ]
      },
      "type" : "sourceControl",
      "url" : "https://github.com/sindresorhus/ExceptionCatcher"
    },
    {
      "identity" : "betterswiftax",
      "requirement" : {
        "range" : [
          {
            "lower_bound" : "0.1.2",
            "upper_bound" : "1.0.0"
          }
        ]
      },
      "type" : "sourceControl",
      "url" : "https://github.com/beeper/BetterSwiftAX.git"
    },
    {
      "identity" : "swift-log",
      "requirement" : {
        "range" : [
          {
            "lower_bound" : "1.0.0",
            "upper_bound" : "2.0.0"
          }
        ]
      },
      "type" : "sourceControl",
      "url" : "https://github.com/apple/swift-log.git"
    },
    {
      "identity" : "swift-collections",
      "requirement" : {
        "range" : [
          {
            "lower_bound" : "1.2.0",
            "upper_bound" : "2.0.0"
          }
        ]
      },
      "type" : "sourceControl",
      "url" : "https://github.com/apple/swift-collections.git"
    },
    {
      "identity" : "swift-async-algorithms",
      "requirement" : {
        "range" : [
          {
            "lower_bound" : "1.0.0",
            "upper_bound" : "2.0.0"
          }
        ]
      },
      "type" : "sourceControl",
      "url" : "https://github.com/apple/swift-async-algorithms"
    },
    {
      "identity" : "swift-argument-parser",
      "requirement" : {
        "range" : [
          {
            "lower_bound" : "1.6.1",
            "upper_bound" : "2.0.0"
          }
        ]
      },
      "type" : "sourceControl",
      "url" : "https://github.com/apple/swift-argument-parser"
    },
    {
      "identity" : "yams",
      "requirement" : {
        "range" : [
          {
            "lower_bound" : "6.2.1",
            "upper_bound" : "7.0.0"
          }
        ]
      },
      "type" : "sourceControl",
      "url" : "https://github.com/jpsim/Yams.git"
    },
    {
      "identity" : "swift-syntax",
      "requirement" : {
        "exact" : [
          "603.0.0-prerelease-2025-10-30"
        ]
      },
      "type" : "sourceControl",
      "url" : "https://github.com/swiftlang/swift-syntax.git"
    },
    {
      "identity" : "chroma",
      "requirement" : {
        "range" : [
          {
            "lower_bound" : "0.3.1",
            "upper_bound" : "1.0.0"
          }
        ]
      },
      "type" : "sourceControl",
      "url" : "https://github.com/onevcat/Chroma.git"
    }
  ],
  "manifest_display_name" : "IMessage",
  "name" : "IMessage",
  "path" : "/Users/admin/builder/spi-builder-workspace",
  "platforms" : [
    {
      "name" : "macos",
      "version" : "13.0"
    }
  ],
  "products" : [
    {
      "name" : "PlatformSDK",
      "targets" : [
        "PlatformSDK"
      ],
      "type" : {
        "library" : [
          "automatic"
        ]
      }
    },
    {
      "name" : "IMessage",
      "targets" : [
        "IMessage"
      ],
      "type" : {
        "library" : [
          "automatic"
        ]
      }
    },
    {
      "name" : "imessage-cli",
      "targets" : [
        "IMessageCLI"
      ],
      "type" : {
        "executable" : null
      }
    },
    {
      "name" : "IMDatabaseTestBench",
      "targets" : [
        "IMDatabaseTestBench"
      ],
      "type" : {
        "executable" : null
      }
    },
    {
      "name" : "GenerateIMessageCLIVersion",
      "targets" : [
        "GenerateIMessageCLIVersion"
      ],
      "type" : {
        "executable" : null
      }
    },
    {
      "name" : "PlatformSDKMacros",
      "targets" : [
        "PlatformSDKMacros"
      ],
      "type" : {
        "macro" : null
      }
    }
  ],
  "targets" : [
    {
      "c99name" : "SQLiteTests",
      "module_type" : "SwiftTarget",
      "name" : "SQLiteTests",
      "path" : "src/IMessage/Sources/SQLiteTests",
      "sources" : [
        "main.swift"
      ],
      "target_dependencies" : [
        "SQLite"
      ],
      "type" : "test"
    },
    {
      "c99name" : "SQLite",
      "module_type" : "SwiftTarget",
      "name" : "SQLite",
      "path" : "src/IMessage/Sources/SQLite",
      "product_dependencies" : [
        "Logging"
      ],
      "product_memberships" : [
        "IMessage",
        "imessage-cli",
        "IMDatabaseTestBench"
      ],
      "sources" : [
        "Column+Type.swift",
        "Column.swift",
        "ColumnValue.swift",
        "Database.swift",
        "Row.swift",
        "SQLiteBindable.swift",
        "SQLiteError.swift",
        "SQLiteLibrary.swift",
        "SourceLocation.swift",
        "Statement.swift"
      ],
      "type" : "library"
    },
    {
      "c99name" : "PlatformSDKMacros",
      "module_type" : "SwiftTarget",
      "name" : "PlatformSDKMacros",
      "path" : "src/IMessage/Sources/PlatformSDKMacros",
      "product_dependencies" : [
        "SwiftCompilerPlugin",
        "SwiftSyntax",
        "SwiftSyntaxBuilder",
        "SwiftSyntaxMacros"
      ],
      "product_memberships" : [
        "PlatformSDK",
        "IMessage",
        "imessage-cli",
        "PlatformSDKMacros"
      ],
      "sources" : [
        "PlatformSDKJSONObjectMacro.swift"
      ],
      "type" : "macro"
    },
    {
      "c99name" : "PlatformSDK",
      "module_type" : "SwiftTarget",
      "name" : "PlatformSDK",
      "path" : "src/IMessage/Sources/PlatformSDK",
      "product_memberships" : [
        "PlatformSDK",
        "IMessage",
        "imessage-cli"
      ],
      "sources" : [
        "ActivityStatus.swift",
        "JSON.swift",
        "PlatformSDK.swift",
        "PlatformSDKAttachment.swift",
        "PlatformSDKMessage.swift",
        "PlatformSDKMessageAction.swift",
        "PlatformSDKMessageObject.swift",
        "PlatformSDKPagination.swift",
        "PlatformSDKPlatformAPI.swift",
        "PlatformSDKText.swift",
        "PlatformSDKThread.swift",
        "PlatformSDKUser.swift",
        "ServerEvent.swift"
      ],
      "target_dependencies" : [
        "PlatformSDKMacros"
      ],
      "type" : "library"
    },
    {
      "c99name" : "IMessageTests",
      "module_type" : "SwiftTarget",
      "name" : "IMessageTests",
      "path" : "src/IMessage/Sources/IMessageTests",
      "resources" : [
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/src/IMessage/Sources/IMessageTests/Fixtures/cgbi-fixture.png",
          "rule" : {
            "process" : {
            }
          }
        },
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/src/IMessage/Sources/IMessageTests/Fixtures/message_brand_logo_assignment.json",
          "rule" : {
            "process" : {
            }
          }
        },
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/src/IMessage/Sources/IMessageTests/Fixtures/message_digital_touch.json",
          "rule" : {
            "process" : {
            }
          }
        },
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/src/IMessage/Sources/IMessageTests/Fixtures/message_event_edited.json",
          "rule" : {
            "process" : {
            }
          }
        },
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/src/IMessage/Sources/IMessageTests/Fixtures/message_event_new_incoming.json",
          "rule" : {
            "process" : {
            }
          }
        },
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/src/IMessage/Sources/IMessageTests/Fixtures/message_event_new_outgoing.json",
          "rule" : {
            "process" : {
            }
          }
        },
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/src/IMessage/Sources/IMessageTests/Fixtures/message_event_reaction_add.json",
          "rule" : {
            "process" : {
            }
          }
        },
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/src/IMessage/Sources/IMessageTests/Fixtures/message_event_reaction_remove.json",
          "rule" : {
            "process" : {
            }
          }
        },
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/src/IMessage/Sources/IMessageTests/Fixtures/message_event_read.json",
          "rule" : {
            "process" : {
            }
          }
        },
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/src/IMessage/Sources/IMessageTests/Fixtures/message_event_undo_send.json",
          "rule" : {
            "process" : {
            }
          }
        },
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/src/IMessage/Sources/IMessageTests/Fixtures/message_findmy_payload.json",
          "rule" : {
            "process" : {
            }
          }
        },
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/src/IMessage/Sources/IMessageTests/Fixtures/message_gamepigeon_associated.json",
          "rule" : {
            "process" : {
            }
          }
        },
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/src/IMessage/Sources/IMessageTests/Fixtures/message_gamepigeon_fallback.json",
          "rule" : {
            "process" : {
            }
          }
        },
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/src/IMessage/Sources/IMessageTests/Fixtures/message_gamepigeon_invite.json",
          "rule" : {
            "process" : {
            }
          }
        },
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/src/IMessage/Sources/IMessageTests/Fixtures/message_gamepigeon_update.json",
          "rule" : {
            "process" : {
            }
          }
        },
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/src/IMessage/Sources/IMessageTests/Fixtures/message_multipart_incoming_with_attachments.json",
          "rule" : {
            "process" : {
            }
          }
        },
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/src/IMessage/Sources/IMessageTests/Fixtures/message_multipart_outgoing_edited_caption.json",
          "rule" : {
            "process" : {
            }
          }
        },
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/src/IMessage/Sources/IMessageTests/Fixtures/message_multipart_outgoing_with_reactions.json",
          "rule" : {
            "process" : {
            }
          }
        },
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/src/IMessage/Sources/IMessageTests/Fixtures/message_partial_leading_unsends.json",
          "rule" : {
            "process" : {
            }
          }
        },
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/src/IMessage/Sources/IMessageTests/Fixtures/message_partial_multiple_middle_adjacent_unsends.json",
          "rule" : {
            "process" : {
            }
          }
        },
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/src/IMessage/Sources/IMessageTests/Fixtures/message_partial_trailing_unsends.json",
          "rule" : {
            "process" : {
            }
          }
        },
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/src/IMessage/Sources/IMessageTests/Fixtures/message_poll_payload_incoming.json",
          "rule" : {
            "process" : {
            }
          }
        },
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/src/IMessage/Sources/IMessageTests/Fixtures/message_poll_payload_outgoing.json",
          "rule" : {
            "process" : {
            }
          }
        },
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/src/IMessage/Sources/IMessageTests/Fixtures/message_poll_sent_incoming.json",
          "rule" : {
            "process" : {
            }
          }
        },
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/src/IMessage/Sources/IMessageTests/Fixtures/message_poll_sent_outgoing.json",
          "rule" : {
            "process" : {
            }
          }
        },
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/src/IMessage/Sources/IMessageTests/Fixtures/message_poll_vote.json",
          "rule" : {
            "process" : {
            }
          }
        },
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/src/IMessage/Sources/IMessageTests/Fixtures/message_sticker_associated.json",
          "rule" : {
            "process" : {
            }
          }
        },
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/src/IMessage/Sources/IMessageTests/Fixtures/message_unsupported_extension_incoming.json",
          "rule" : {
            "process" : {
            }
          }
        },
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/src/IMessage/Sources/IMessageTests/Fixtures/message_unsupported_extension_outgoing.json",
          "rule" : {
            "process" : {
            }
          }
        },
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/src/IMessage/Sources/IMessageTests/Fixtures/message_url_balloon.json",
          "rule" : {
            "process" : {
            }
          }
        }
      ],
      "sources" : [
        "CgBIPNGTests.swift",
        "DatabaseTickWaitTests.swift",
        "EventWatcherLifecycleTests.swift",
        "EventWatcherUpdateTests.swift",
        "FixtureHelpers.swift",
        "FixturePrivacyTests.swift",
        "HashingTests.swift",
        "JSONEncodingTests.swift",
        "KeyedPayloadUnarchiverTests.swift",
        "MessageEventFixtureTests.swift",
        "MessageIDTests.swift",
        "MessageMapperFixtureTests.swift",
        "MessageUpdateCursorTests.swift",
        "MessagesDirectoryAccessTests.swift",
        "PassivelyAwareDispatchQueueTests.swift",
        "ReactionRetryTests.swift",
        "ReactionTests.swift",
        "ResolveMessageCellTests.swift",
        "SearchTests.swift",
        "SkinToneTests.swift",
        "TahoeChatDatabaseFixture.swift"
      ],
      "target_dependencies" : [
        "IMessage",
        "IMessageCore",
        "IMDatabase",
        "PlatformSDK",
        "SQLite"
      ],
      "type" : "test"
    },
    {
      "c99name" : "IMessagePrivateSPI",
      "module_type" : "ClangTarget",
      "name" : "IMessagePrivateSPI",
      "path" : "src/IMessage/Sources/IMessagePrivateSPI",
      "product_memberships" : [
        "IMessage",
        "imessage-cli"
      ],
      "sources" : [
        "IMessagePrivateSPI.m"
      ],
      "type" : "library"
    },
    {
      "c99name" : "IMessageCore",
      "module_type" : "SwiftTarget",
      "name" : "IMessageCore",
      "path" : "src/IMessage/Sources/IMessageCore",
      "product_dependencies" : [
        "Logging",
        "ExceptionCatcher"
      ],
      "product_memberships" : [
        "IMessage",
        "imessage-cli",
        "IMDatabaseTestBench"
      ],
      "sources" : [
        "BalloonBundle.swift",
        "Data+DataURL.swift",
        "Date+Formatting.swift",
        "Date+Latency.swift",
        "Dictionary+JSONAccessors.swift",
        "ErrorMessage.swift",
        "HexStrings.swift",
        "Logging/IMessageLogHandler.swift",
        "Logging/LogFileCoordinator.swift",
        "Logging/Logging.swift",
        "Optional+AnyValue.swift",
        "Optional+OrThrow.swift",
        "PassivelyAwareDispatchQueue.swift",
        "Protected.swift",
        "Retry.swift",
        "String+NonEmpty.swift",
        "Topic.swift",
        "UnfairLock.swift",
        "Utilities/Array+Chunks.swift"
      ],
      "target_dependencies" : [
        "CUnfairLock"
      ],
      "type" : "library"
    },
    {
      "c99name" : "IMessageCLI",
      "module_type" : "SwiftTarget",
      "name" : "IMessageCLI",
      "path" : "src/IMessage/Sources/IMessageCLI",
      "product_dependencies" : [
        "ArgumentParser",
        "Yams",
        "Chroma"
      ],
      "product_memberships" : [
        "imessage-cli"
      ],
      "sources" : [
        "CLIContactEnrichment.swift",
        "CLIOutputFormatter.swift",
        "IMessageCLI.swift",
        "ShellLineReader.swift"
      ],
      "target_dependencies" : [
        "IMessage",
        "IMessageCore",
        "GenerateIMessageCLIVersionPlugin"
      ],
      "type" : "executable"
    },
    {
      "c99name" : "IMessage",
      "module_type" : "SwiftTarget",
      "name" : "IMessage",
      "path" : "src/IMessage/Sources/IMessage",
      "product_dependencies" : [
        "BetterSwiftAX",
        "ExceptionCatcher",
        "Collections"
      ],
      "product_memberships" : [
        "IMessage",
        "imessage-cli"
      ],
      "sources" : [
        "Accessibility+Debug.swift",
        "CgBIPNG.swift",
        "Contacts.swift",
        "CurrentUser.swift",
        "DatabaseTickWaits.swift",
        "Defaults.swift",
        "DigitalTouchAssetRenderer.swift",
        "DraftsManager.swift",
        "EventWatcher/EventWatcher+Unreads.swift",
        "EventWatcher/EventWatcher+Updates.swift",
        "EventWatcher/EventWatcher.swift",
        "EventWatcher/EventWatcherLifecycle.swift",
        "Extensions.swift",
        "HandwritingAssetRenderer.swift",
        "Hashing/Hasher.swift",
        "Hashing/PlatformAPI+Hashing.swift",
        "IMessageHost.swift",
        "ImageMetadata.swift",
        "KeyMap.swift",
        "KeyPresser.swift",
        "KeyedPayloadUnarchiver.swift",
        "LifecycleObserver.swift",
        "LocalizedStrings.swift",
        "MacPermissions.swift",
        "Mappers/MessageDraft.swift",
        "Mappers/MessageMapper+Associated.swift",
        "Mappers/MessageMapper+Attachments.swift",
        "Mappers/MessageMapper+EditHistory.swift",
        "Mappers/MessageMapper+Parts.swift",
        "Mappers/MessageMapper+Payloads.swift",
        "Mappers/MessageMapper.swift",
        "Mappers/MessageMapperTypes.swift",
        "Mappers/MessageMapperUtilities.swift",
        "Mappers/ThreadMapper.swift",
        "Messages/MessagesAccessManager.swift",
        "Messages/MessagesAppElements.swift",
        "Messages/MessagesController+PlatformOperations.swift",
        "Messages/MessagesController+ResolveMessageCell.swift",
        "Messages/MessagesController+Window Title Prediction.swift",
        "Messages/MessagesController.swift",
        "Messages/MessagesDeepLink.swift",
        "Messages/MessagesInstanceTarget.swift",
        "MessagesPaths.swift",
        "NSWorkspace++.swift",
        "OSA.swift",
        "OnboardingManager.swift",
        "OnboardingView.swift",
        "Pasteboard+Backup.swift",
        "PlatformAPI+MessageReferences.swift",
        "PlatformAPI+MessagesController.swift",
        "PlatformAPI+OriginalObjects.swift",
        "PlatformAPI+PluginPayloadAssets.swift",
        "PlatformAPI.swift",
        "PluginPayloadAssetSupport.swift",
        "Preferences.swift",
        "PromptAutomation.swift",
        "Reaction.swift",
        "RunLoopConveyor.swift",
        "SPI/IMCoreSPI.swift",
        "SystemSettingsOnboarding.swift",
        "ThreadActivityObservation.swift",
        "UI/HelpButton.swift",
        "UI/MenuMaintainer.swift",
        "UI/SettingsView+MenuItem.swift",
        "UI/SettingsView.swift",
        "UI/SettingsWindowController.swift",
        "Utilities/FilePaths.swift",
        "Utilities/JSONEncoding.swift",
        "Utilities/MessageID.swift",
        "Utilities/SystemInfo.swift",
        "Utilities/Task+Sleep.swift",
        "Utilities/ThreadID.swift",
        "Utilities/UncheckedSendableBox.swift",
        "WindowCoordination/HideDebouncer.swift",
        "WindowCoordination/WindowCoordinators/BestWindowCoordinator.swift",
        "WindowCoordination/WindowCoordinators/Eclipsing/EclipsingDebugger.swift",
        "WindowCoordination/WindowCoordinators/Eclipsing/EclipsingDebuggerView.swift",
        "WindowCoordination/WindowCoordinators/EclipsingWindowCoordinator.swift",
        "WindowCoordination/WindowCoordinators/SpacesWindowCoordinator.swift",
        "WindowCoordination/WindowCoordinators/WindowCoordinator.swift"
      ],
      "target_dependencies" : [
        "IMessageCore",
        "IMessagePrivateSPI",
        "EmojiSPI",
        "IMDatabase",
        "PlatformSDK"
      ],
      "type" : "library"
    },
    {
      "c99name" : "IMDatabaseTestBench",
      "module_type" : "SwiftTarget",
      "name" : "IMDatabaseTestBench",
      "path" : "src/IMessage/Sources/IMDatabaseTestBench",
      "product_dependencies" : [
        "ArgumentParser",
        "Logging"
      ],
      "product_memberships" : [
        "IMDatabaseTestBench"
      ],
      "sources" : [
        "ArgumentParsing.swift",
        "Support/DispatchSource+Formatting.swift",
        "Support/String+Formatting.swift",
        "Support/Task+Never.swift",
        "TestBench.swift"
      ],
      "target_dependencies" : [
        "IMDatabase",
        "IMessageCore",
        "SQLite"
      ],
      "type" : "executable"
    },
    {
      "c99name" : "IMDatabase",
      "module_type" : "SwiftTarget",
      "name" : "IMDatabase",
      "path" : "src/IMessage/Sources/IMDatabase",
      "product_dependencies" : [
        "Logging",
        "AsyncAlgorithms",
        "Collections",
        "ExceptionCatcher"
      ],
      "product_memberships" : [
        "IMessage",
        "imessage-cli",
        "IMDatabaseTestBench"
      ],
      "sources" : [
        "Database/IMDatabase+Accounts.swift",
        "Database/IMDatabase+Attachments.swift",
        "Database/IMDatabase+Chats.swift",
        "Database/IMDatabase+Closest.swift",
        "Database/IMDatabase+MappedMessages.swift",
        "Database/IMDatabase+MappedPagination.swift",
        "Database/IMDatabase+MappedShared.swift",
        "Database/IMDatabase+MappedThreads.swift",
        "Database/IMDatabase+Messages.swift",
        "Database/IMDatabase+PluginPayloadAssets.swift",
        "Database/IMDatabase+Search.swift",
        "Database/IMDatabase+Unreads.swift",
        "Database/IMDatabase+Updates.swift",
        "Database/IMDatabase.swift",
        "Filesystem/FSEventsWatcher.swift",
        "Filesystem/FileWatcher.swift",
        "Filesystem/MessagesDirectoryAccess.swift",
        "Models/Attachment.swift",
        "Models/Chat.swift",
        "Models/GUID.swift",
        "Models/Handle.swift",
        "Models/MappedDatabaseRows+DictionaryBridges.swift",
        "Models/MappedDatabaseRows.swift",
        "Models/Message+Part+Index.swift",
        "Models/Message+Part.swift",
        "Models/Message+Parts.swift",
        "Models/Message+SummaryInfo.swift",
        "Models/Message.swift",
        "Models/MessageUpdatesCursor.swift",
        "Support/AttributedBodyDecoder.swift",
        "Support/Column+.swift",
        "Support/Date+NanosecondsApple.swift",
        "Support/DispatchTimeInterval+Nanoseconds.swift",
        "Support/NSAttributedString+IM.swift",
        "Support/Sensitive.swift"
      ],
      "target_dependencies" : [
        "SQLite",
        "IMessageCore"
      ],
      "type" : "library"
    },
    {
      "c99name" : "GenerateIMessageCLIVersionPlugin",
      "module_type" : "PluginTarget",
      "name" : "GenerateIMessageCLIVersionPlugin",
      "path" : "src/IMessage/Plugins/GenerateIMessageCLIVersionPlugin",
      "plugin_capability" : {
        "type" : "buildTool"
      },
      "product_memberships" : [
        "imessage-cli"
      ],
      "sources" : [
        "Plugin.swift"
      ],
      "target_dependencies" : [
        "GenerateIMessageCLIVersion"
      ],
      "type" : "plugin"
    },
    {
      "c99name" : "GenerateIMessageCLIVersion",
      "module_type" : "SwiftTarget",
      "name" : "GenerateIMessageCLIVersion",
      "path" : "src/IMessage/Plugins/GenerateIMessageCLIVersion",
      "product_memberships" : [
        "imessage-cli",
        "GenerateIMessageCLIVersion"
      ],
      "sources" : [
        "GenerateIMessageCLIVersion.swift"
      ],
      "type" : "executable"
    },
    {
      "c99name" : "EmojiSPITests",
      "module_type" : "SwiftTarget",
      "name" : "EmojiSPITests",
      "path" : "src/IMessage/Sources/EmojiSPITests",
      "sources" : [
        "EmojiSPITests.swift"
      ],
      "target_dependencies" : [
        "EmojiSPI"
      ],
      "type" : "test"
    },
    {
      "c99name" : "EmojiSPIObjc",
      "module_type" : "ClangTarget",
      "name" : "EmojiSPIObjc",
      "path" : "src/IMessage/Sources/EmojiSPIObjc",
      "product_memberships" : [
        "IMessage",
        "imessage-cli"
      ],
      "sources" : [
        "EmojiSPIObjc.m"
      ],
      "type" : "library"
    },
    {
      "c99name" : "EmojiSPI",
      "module_type" : "SwiftTarget",
      "name" : "EmojiSPI",
      "path" : "src/IMessage/Sources/EmojiSPI",
      "product_memberships" : [
        "IMessage",
        "imessage-cli"
      ],
      "sources" : [
        "CharacterPickerSearch.swift",
        "SPI.swift"
      ],
      "target_dependencies" : [
        "IMessageCore",
        "EmojiSPIObjc"
      ],
      "type" : "library"
    },
    {
      "c99name" : "CUnfairLock",
      "module_type" : "ClangTarget",
      "name" : "CUnfairLock",
      "path" : "src/IMessage/Sources/CUnfairLock",
      "product_memberships" : [
        "IMessage",
        "imessage-cli",
        "IMDatabaseTestBench"
      ],
      "sources" : [
        "shim.c"
      ],
      "type" : "library"
    }
  ],
  "tools_version" : "5.9"
}
Done.