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

Successful build of ProjectNavigator, reference main (35005a), with Swift 6.1 for macOS (SPM) on 29 Apr 2025 13:16:22 UTC.

Swift 6 data race errors: 2

Build Command

env DEVELOPER_DIR=/Applications/Xcode-16.3.0.app xcrun swift build --arch arm64 -Xswiftc -Xfrontend -Xswiftc -stats-output-dir -Xswiftc -Xfrontend -Xswiftc .stats -Xswiftc -strict-concurrency=complete -Xswiftc -enable-upcoming-feature -Xswiftc StrictConcurrency -Xswiftc -enable-upcoming-feature -Xswiftc DisableOutwardActorInference -Xswiftc -enable-upcoming-feature -Xswiftc GlobalActorIsolatedTypesUsability -Xswiftc -enable-upcoming-feature -Xswiftc InferSendableFromCaptures

Build Log

========================================
RunAll
========================================
Builder version: 4.61.1
Interrupt handler set up.
========================================
Checkout
========================================
Clone URL: https://github.com/mchakravarty/ProjectNavigator.git
Reference: main
Initialized empty Git repository in /Users/admin/builder/spi-builder-workspace/.git/
From https://github.com/mchakravarty/ProjectNavigator
 * branch            main       -> FETCH_HEAD
 * [new branch]      main       -> origin/main
HEAD is now at 35005a1 Fix
Cloned https://github.com/mchakravarty/ProjectNavigator.git
Revision (git rev-parse @):
35005a147eb645cba1733b26e852bd243016345a
SPI manifest file found: $PWD/.spi.yml
SUCCESS checkout https://github.com/mchakravarty/ProjectNavigator.git at main
========================================
Build
========================================
Selected platform:         macosSpm
Swift version:             6.1
Building package at path:  $PWD
https://github.com/mchakravarty/ProjectNavigator.git
https://github.com/mchakravarty/ProjectNavigator.git
{
  "dependencies" : [
    {
      "identity" : "swift-collections",
      "requirement" : {
        "range" : [
          {
            "lower_bound" : "1.0.0",
            "upper_bound" : "2.0.0"
          }
        ]
      },
      "type" : "sourceControl",
      "url" : "https://github.com/apple/swift-collections.git"
    },
    {
      "identity" : "swift-docc-plugin",
      "requirement" : {
        "range" : [
          {
            "lower_bound" : "1.0.0",
            "upper_bound" : "2.0.0"
          }
        ]
      },
      "type" : "sourceControl",
      "url" : "https://github.com/apple/swift-docc-plugin"
    }
  ],
  "manifest_display_name" : "ProjectNavigator",
  "name" : "ProjectNavigator",
  "path" : "/Users/admin/builder/spi-builder-workspace",
  "platforms" : [
    {
      "name" : "macos",
      "version" : "14.0"
    },
    {
      "name" : "ios",
      "version" : "17.0"
    },
    {
      "name" : "visionos",
      "version" : "1.0"
    }
  ],
  "products" : [
    {
      "name" : "Files",
      "targets" : [
        "Files"
      ],
      "type" : {
        "library" : [
          "automatic"
        ]
      }
    },
    {
      "name" : "ProjectNavigator",
      "targets" : [
        "ProjectNavigator"
      ],
      "type" : {
        "library" : [
          "automatic"
        ]
      }
    }
  ],
  "targets" : [
    {
      "c99name" : "_FilesTestSupport",
      "module_type" : "SwiftTarget",
      "name" : "_FilesTestSupport",
      "path" : "Sources/_FilesTestSupport",
      "product_memberships" : [
        "ProjectNavigator"
      ],
      "sources" : [
        "Payload.swift"
      ],
      "target_dependencies" : [
        "Files"
      ],
      "type" : "library"
    },
    {
      "c99name" : "ProjectNavigatorTests",
      "module_type" : "SwiftTarget",
      "name" : "ProjectNavigatorTests",
      "path" : "Tests/ProjectNavigatorTests",
      "sources" : [
        "NavigationViewTests.swift"
      ],
      "target_dependencies" : [
        "ProjectNavigator"
      ],
      "type" : "test"
    },
    {
      "c99name" : "ProjectNavigator",
      "module_type" : "SwiftTarget",
      "name" : "ProjectNavigator",
      "path" : "Sources/ProjectNavigator",
      "product_dependencies" : [
        "OrderedCollections"
      ],
      "product_memberships" : [
        "ProjectNavigator"
      ],
      "sources" : [
        "EditableLabel.swift",
        "FileNavigator.swift",
        "SwitchFileOrFolder.swift",
        "WrappedUUIDSet.swift"
      ],
      "target_dependencies" : [
        "Files",
        "_FilesTestSupport"
      ],
      "type" : "library"
    },
    {
      "c99name" : "FilesTests",
      "module_type" : "SwiftTarget",
      "name" : "FilesTests",
      "path" : "Tests/FilesTests",
      "sources" : [
        "FileOperationsTests.swift",
        "FilesTests.swift"
      ],
      "target_dependencies" : [
        "Files",
        "_FilesTestSupport"
      ],
      "type" : "test"
    },
    {
      "c99name" : "Files",
      "module_type" : "SwiftTarget",
      "name" : "Files",
      "path" : "Sources/Files",
      "product_dependencies" : [
        "OrderedCollections"
      ],
      "product_memberships" : [
        "Files",
        "ProjectNavigator"
      ],
      "sources" : [
        "FileOperations.swift",
        "FileTree.swift",
        "Files.swift"
      ],
      "type" : "library"
    }
  ],
  "tools_version" : "5.9"
}
Running build ...
env DEVELOPER_DIR=/Applications/Xcode-16.3.0.app xcrun swift build --arch arm64 -Xswiftc -Xfrontend -Xswiftc -stats-output-dir -Xswiftc -Xfrontend -Xswiftc .stats -Xswiftc -strict-concurrency=complete -Xswiftc -enable-upcoming-feature -Xswiftc StrictConcurrency -Xswiftc -enable-upcoming-feature -Xswiftc DisableOutwardActorInference -Xswiftc -enable-upcoming-feature -Xswiftc GlobalActorIsolatedTypesUsability -Xswiftc -enable-upcoming-feature -Xswiftc InferSendableFromCaptures
[1/1] Compiling plugin Swift-DocC Preview
[2/2] Compiling plugin Swift-DocC
Building for debugging...
[2/8] Write sources
[7/8] Write swift-version-2F0A5646E1D333AE.txt
[9/26] Compiling InternalCollectionsUtilities UnsafeBufferPointer+Extras.swift
[10/26] Compiling InternalCollectionsUtilities RandomAccessCollection+Offsets.swift
[11/26] Compiling InternalCollectionsUtilities Specialize.swift
[12/26] Compiling InternalCollectionsUtilities Debugging.swift
[13/26] Compiling InternalCollectionsUtilities Descriptions.swift
[14/26] Compiling InternalCollectionsUtilities _SortedCollection.swift
[15/26] Compiling InternalCollectionsUtilities _UniqueCollection.swift
[16/26] Compiling InternalCollectionsUtilities Integer rank.swift
[17/26] Compiling InternalCollectionsUtilities UInt+first and last set bit.swift
[18/26] Compiling InternalCollectionsUtilities UInt+reversed.swift
[19/26] Compiling InternalCollectionsUtilities _UnsafeBitSet+Index.swift
[20/26] Compiling InternalCollectionsUtilities UnsafeMutableBufferPointer+SE-0370.swift
[21/26] Compiling InternalCollectionsUtilities UnsafeMutablePointer+SE-0370.swift
[22/26] Compiling InternalCollectionsUtilities UnsafeRawPointer extensions.swift
[23/26] Compiling InternalCollectionsUtilities FixedWidthInteger+roundUpToPowerOfTwo.swift
[24/26] Emitting module InternalCollectionsUtilities
[25/26] Compiling InternalCollectionsUtilities _UnsafeBitSet+_Word.swift
[26/26] Compiling InternalCollectionsUtilities _UnsafeBitSet.swift
[27/27] Compiling InternalCollectionsUtilities UnsafeMutableBufferPointer+Extras.swift
[28/83] Compiling OrderedCollections OrderedSet+Partial SetAlgebra formIntersection.swift
[29/83] Compiling OrderedCollections OrderedSet+Partial SetAlgebra formSymmetricDifference.swift
[30/83] Compiling OrderedCollections OrderedSet+Partial SetAlgebra formUnion.swift
[31/83] Compiling OrderedCollections OrderedSet+Partial SetAlgebra intersection.swift
[32/83] Compiling OrderedCollections OrderedSet+Partial SetAlgebra isDisjoint.swift
[33/83] Compiling OrderedCollections OrderedSet+Partial SetAlgebra isEqualSet.swift
[34/83] Compiling OrderedCollections OrderedSet+Codable.swift
[35/83] Compiling OrderedCollections OrderedSet+CustomReflectable.swift
[36/83] Compiling OrderedCollections OrderedSet+Descriptions.swift
[37/83] Compiling OrderedCollections OrderedSet+Diffing.swift
[38/83] Compiling OrderedCollections OrderedSet+Equatable.swift
[39/83] Compiling OrderedCollections OrderedSet+ExpressibleByArrayLiteral.swift
[40/89] Compiling OrderedCollections OrderedSet+Partial SetAlgebra isStrictSubset.swift
[41/89] Compiling OrderedCollections OrderedSet+Partial SetAlgebra isStrictSuperset.swift
[42/89] Compiling OrderedCollections OrderedSet+Partial SetAlgebra isSubset.swift
[43/89] Compiling OrderedCollections OrderedSet+Partial SetAlgebra isSuperset.swift
[44/89] Compiling OrderedCollections OrderedSet+Partial SetAlgebra subtract.swift
[45/89] Compiling OrderedCollections OrderedSet+Partial SetAlgebra subtracting.swift
[46/89] Compiling OrderedCollections OrderedSet+Partial SetAlgebra symmetricDifference.swift
[47/89] Compiling OrderedCollections OrderedSet+Partial SetAlgebra union.swift
[48/89] Compiling OrderedCollections OrderedSet+Partial SetAlgebra+Basics.swift
[49/89] Compiling OrderedCollections OrderedSet+RandomAccessCollection.swift
[50/89] Compiling OrderedCollections OrderedSet+ReserveCapacity.swift
[51/89] Compiling OrderedCollections OrderedSet+Sendable.swift
[52/89] Compiling OrderedCollections _Hashtable+Header.swift
[53/89] Compiling OrderedCollections OrderedDictionary+Codable.swift
[54/89] Compiling OrderedCollections OrderedDictionary+CustomReflectable.swift
[55/89] Compiling OrderedCollections OrderedDictionary+Deprecations.swift
[56/89] Compiling OrderedCollections OrderedDictionary+Descriptions.swift
[57/89] Compiling OrderedCollections OrderedDictionary+Elements.SubSequence.swift
[58/89] Compiling OrderedCollections OrderedDictionary+Elements.swift
[59/89] Compiling OrderedCollections OrderedDictionary+Equatable.swift
[60/89] Compiling OrderedCollections OrderedDictionary+ExpressibleByDictionaryLiteral.swift
[61/89] Compiling OrderedCollections OrderedDictionary+Hashable.swift
[62/89] Compiling OrderedCollections OrderedDictionary+Initializers.swift
[63/89] Compiling OrderedCollections OrderedDictionary+Invariants.swift
[64/89] Compiling OrderedCollections OrderedSet+Hashable.swift
[65/89] Compiling OrderedCollections OrderedSet+Initializers.swift
[66/89] Compiling OrderedCollections OrderedSet+Insertions.swift
[67/89] Compiling OrderedCollections OrderedSet+Invariants.swift
[68/89] Compiling OrderedCollections OrderedSet+Partial MutableCollection.swift
[69/89] Compiling OrderedCollections OrderedSet+Partial RangeReplaceableCollection.swift
[70/89] Compiling OrderedCollections OrderedDictionary+Partial MutableCollection.swift
[71/89] Compiling OrderedCollections OrderedDictionary+Partial RangeReplaceableCollection.swift
[72/89] Compiling OrderedCollections OrderedDictionary+Sendable.swift
[73/89] Compiling OrderedCollections OrderedDictionary+Sequence.swift
[74/89] Compiling OrderedCollections OrderedDictionary+Values.swift
[75/89] Compiling OrderedCollections OrderedDictionary.swift
[76/89] Compiling OrderedCollections _HashTable+Bucket.swift
[77/89] Compiling OrderedCollections _HashTable+BucketIterator.swift
[78/89] Compiling OrderedCollections _HashTable+Constants.swift
[79/89] Compiling OrderedCollections _HashTable+CustomStringConvertible.swift
[80/89] Compiling OrderedCollections _HashTable+Testing.swift
[81/89] Compiling OrderedCollections _HashTable+UnsafeHandle.swift
[82/89] Compiling OrderedCollections _HashTable.swift
[83/89] Compiling OrderedCollections OrderedSet+SubSequence.swift
[84/89] Compiling OrderedCollections OrderedSet+Testing.swift
[85/89] Compiling OrderedCollections OrderedSet+UnorderedView.swift
[86/89] Compiling OrderedCollections OrderedSet+UnstableInternals.swift
[87/89] Compiling OrderedCollections OrderedSet.swift
[88/89] Compiling OrderedCollections _UnsafeBitset.swift
[89/89] Emitting module OrderedCollections
[90/93] Compiling Files Files.swift
[91/93] Compiling Files FileTree.swift
/Users/admin/builder/spi-builder-workspace/Sources/Files/FileTree.swift:191:22: warning: capture of 'self' with non-sendable type 'File<Contents>.Proxy' in a '@Sendable' closure
189 |   ///
190 |   public var binding: Binding<File<Contents>?> {
191 |     return Binding { file } set: { newValue in
    |                      `- warning: capture of 'self' with non-sendable type 'File<Contents>.Proxy' in a '@Sendable' closure
192 |
193 |       if let newFile = newValue {
/Users/admin/builder/spi-builder-workspace/Sources/Files/Files.swift:78:17: note: consider making struct 'Proxy' conform to the 'Sendable' protocol
 76 |   /// Id-only representation of a file aka file proxy.
 77 |   ///
 78 |   public struct Proxy: FileProtocol {
    |                 `- note: consider making struct 'Proxy' conform to the 'Sendable' protocol
 79 |     public let id: UUID
 80 |
/Users/admin/builder/spi-builder-workspace/Sources/Files/FileTree.swift:196:26: warning: capture of 'self' with non-sendable type 'File<Contents>.Proxy' in a '@Sendable' closure
194 |
195 |         // Assigning a file with a different id makes no sense.
196 |         if newFile.id == id { fileTree?.update(file: newFile) }
    |                          `- warning: capture of 'self' with non-sendable type 'File<Contents>.Proxy' in a '@Sendable' closure
197 |
198 |       }
/Users/admin/builder/spi-builder-workspace/Sources/Files/Files.swift:78:17: note: consider making struct 'Proxy' conform to the 'Sendable' protocol
 76 |   /// Id-only representation of a file aka file proxy.
 77 |   ///
 78 |   public struct Proxy: FileProtocol {
    |                 `- note: consider making struct 'Proxy' conform to the 'Sendable' protocol
 79 |     public let id: UUID
 80 |
[92/93] Compiling Files FileOperations.swift
[93/93] Emitting module Files
[94/95] Emitting module _FilesTestSupport
[95/95] Compiling _FilesTestSupport Payload.swift
[96/100] Compiling ProjectNavigator SwitchFileOrFolder.swift
[97/100] Compiling ProjectNavigator WrappedUUIDSet.swift
[98/100] Compiling ProjectNavigator EditableLabel.swift
/Users/admin/builder/spi-builder-workspace/Sources/ProjectNavigator/EditableLabel.swift:92:14: warning: capture of 'binding' with non-sendable type 'Binding<Value?>' in a '@Sendable' closure
 90 |     self.init(
 91 |              // TODO: The last delivered value would be better, but that isn't available...
 92 |       get: { binding.wrappedValue ?? value },
    |              `- warning: capture of 'binding' with non-sendable type 'Binding<Value?>' in a '@Sendable' closure
 93 |       set: { binding.wrappedValue = $0 }
 94 |     )
/Users/admin/builder/spi-builder-workspace/Sources/ProjectNavigator/EditableLabel.swift:92:38: warning: capture of 'value' with non-sendable type 'Value' in a '@Sendable' closure
 90 |     self.init(
 91 |              // TODO: The last delivered value would be better, but that isn't available...
 92 |       get: { binding.wrappedValue ?? value },
    |                                      `- warning: capture of 'value' with non-sendable type 'Value' in a '@Sendable' closure
 93 |       set: { binding.wrappedValue = $0 }
 94 |     )
/Users/admin/builder/spi-builder-workspace/Sources/ProjectNavigator/EditableLabel.swift:92:38: warning: implicit capture of 'value' requires that 'Value' conforms to 'Sendable'; this is an error in the Swift 6 language mode
 90 |     self.init(
 91 |              // TODO: The last delivered value would be better, but that isn't available...
 92 |       get: { binding.wrappedValue ?? value },
    |                                      `- warning: implicit capture of 'value' requires that 'Value' conforms to 'Sendable'; this is an error in the Swift 6 language mode
 93 |       set: { binding.wrappedValue = $0 }
 94 |     )
/Users/admin/builder/spi-builder-workspace/Sources/ProjectNavigator/EditableLabel.swift:93:14: warning: capture of 'binding' with non-sendable type 'Binding<Value?>' in a '@Sendable' closure
 91 |              // TODO: The last delivered value would be better, but that isn't available...
 92 |       get: { binding.wrappedValue ?? value },
 93 |       set: { binding.wrappedValue = $0 }
    |              `- warning: capture of 'binding' with non-sendable type 'Binding<Value?>' in a '@Sendable' closure
 94 |     )
 95 |   }
[99/100] Compiling ProjectNavigator FileNavigator.swift
<unknown>:0: note: a function type must be marked '@Sendable' to conform to 'Sendable'
/Users/admin/builder/spi-builder-workspace/Sources/ProjectNavigator/FileNavigator.swift:21:21: warning: static property 'defaultValue' is not concurrency-safe because non-'Sendable' type '(String) -> Bool' may have shared mutable state; this is an error in the Swift 6 language mode
 19 |
 20 | public struct NavigatorFilter: EnvironmentKey {
 21 |   public static let defaultValue: (String) -> Bool = { _ in true }
    |                     |- warning: static property 'defaultValue' is not concurrency-safe because non-'Sendable' type '(String) -> Bool' may have shared mutable state; this is an error in the Swift 6 language mode
    |                     |- note: add '@MainActor' to make static property 'defaultValue' part of global actor 'MainActor'
    |                     `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 22 | }
 23 |
/Users/admin/builder/spi-builder-workspace/Sources/ProjectNavigator/FileNavigator.swift:482:5: warning: let '_tree' is not concurrency-safe because non-'Sendable' type 'OrderedDictionary<String, Any>' may have shared mutable state; this is an error in the Swift 6 language mode
480 | import _FilesTestSupport
481 |
482 | let _tree = ["Alice"  : "Hello",
    |     |- warning: let '_tree' is not concurrency-safe because non-'Sendable' type 'OrderedDictionary<String, Any>' may have shared mutable state; this is an error in the Swift 6 language mode
    |     |- note: add '@MainActor' to make let '_tree' part of global actor 'MainActor'
    |     `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
483 |              "Bob"    : "Howdy",
484 |              "More"   : ["Sun"  : "Light",
/Users/admin/builder/spi-builder-workspace/Sources/ProjectNavigator/FileNavigator.swift:134:38: warning: capture of 'self' with non-sendable type 'FileNavigatorViewState<Payload>?' in a '@Sendable' closure
 46 | ///
 47 | @Observable
 48 | public final class FileNavigatorViewState<Payload: FileContents> {
    |                    `- note: generic class 'FileNavigatorViewState' does not conform to the 'Sendable' protocol
 49 |
 50 |   /// The `UUID` and name of a label that is being edited.
    :
132 |         // the id and text. Hence, this code path can be used to turn editing for this `id` on (if there is no other
133 |         // edited label yet).
134 |         if thisLabelIsBeingEdited || self?.editedLabel == nil {
    |                                      `- warning: capture of 'self' with non-sendable type 'FileNavigatorViewState<Payload>?' in a '@Sendable' closure
135 |           self?.editedLabel = FileNavigatorViewState.EditedLabel(id: id, text: newText)
136 |         }
/Users/admin/builder/spi-builder-workspace/Sources/ProjectNavigator/FileNavigator.swift:134:38: warning: implicit capture of 'self' requires that 'FileNavigatorViewState<Payload>?' conforms to 'Sendable'; this is an error in the Swift 6 language mode
 46 | ///
 47 | @Observable
 48 | public final class FileNavigatorViewState<Payload: FileContents> {
    |                    `- note: generic class 'FileNavigatorViewState' does not conform to the 'Sendable' protocol
 49 |
 50 |   /// The `UUID` and name of a label that is being edited.
    :
132 |         // the id and text. Hence, this code path can be used to turn editing for this `id` on (if there is no other
133 |         // edited label yet).
134 |         if thisLabelIsBeingEdited || self?.editedLabel == nil {
    |                                      `- warning: implicit capture of 'self' requires that 'FileNavigatorViewState<Payload>?' conforms to 'Sendable'; this is an error in the Swift 6 language mode
135 |           self?.editedLabel = FileNavigatorViewState.EditedLabel(id: id, text: newText)
136 |         }
[100/100] Emitting module ProjectNavigator
<unknown>:0: note: a function type must be marked '@Sendable' to conform to 'Sendable'
/Users/admin/builder/spi-builder-workspace/Sources/ProjectNavigator/FileNavigator.swift:21:21: warning: static property 'defaultValue' is not concurrency-safe because non-'Sendable' type '(String) -> Bool' may have shared mutable state; this is an error in the Swift 6 language mode
 19 |
 20 | public struct NavigatorFilter: EnvironmentKey {
 21 |   public static let defaultValue: (String) -> Bool = { _ in true }
    |                     |- warning: static property 'defaultValue' is not concurrency-safe because non-'Sendable' type '(String) -> Bool' may have shared mutable state; this is an error in the Swift 6 language mode
    |                     |- note: add '@MainActor' to make static property 'defaultValue' part of global actor 'MainActor'
    |                     `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 22 | }
 23 |
/Users/admin/builder/spi-builder-workspace/Sources/ProjectNavigator/FileNavigator.swift:482:5: warning: let '_tree' is not concurrency-safe because non-'Sendable' type 'OrderedDictionary<String, Any>' may have shared mutable state; this is an error in the Swift 6 language mode
480 | import _FilesTestSupport
481 |
482 | let _tree = ["Alice"  : "Hello",
    |     |- warning: let '_tree' is not concurrency-safe because non-'Sendable' type 'OrderedDictionary<String, Any>' may have shared mutable state; this is an error in the Swift 6 language mode
    |     |- note: add '@MainActor' to make let '_tree' part of global actor 'MainActor'
    |     `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
483 |              "Bob"    : "Howdy",
484 |              "More"   : ["Sun"  : "Light",
Build complete! (24.29s)
Fetching https://github.com/apple/swift-docc-plugin
Fetching https://github.com/apple/swift-collections.git from cache
[1/2049] Fetching swift-docc-plugin
Fetched https://github.com/apple/swift-docc-plugin from cache (1.10s)
Fetched https://github.com/apple/swift-collections.git from cache (1.12s)
Computing version for https://github.com/apple/swift-docc-plugin
Computed https://github.com/apple/swift-docc-plugin at 1.4.3 (2.12s)
Fetching https://github.com/swiftlang/swift-docc-symbolkit from cache
Fetched https://github.com/swiftlang/swift-docc-symbolkit from cache (0.73s)
Computing version for https://github.com/swiftlang/swift-docc-symbolkit
Computed https://github.com/swiftlang/swift-docc-symbolkit at 1.0.0 (1.38s)
Computing version for https://github.com/apple/swift-collections.git
Computed https://github.com/apple/swift-collections.git at 1.1.4 (0.66s)
Creating working copy for https://github.com/swiftlang/swift-docc-symbolkit
Working copy of https://github.com/swiftlang/swift-docc-symbolkit resolved at 1.0.0
Creating working copy for https://github.com/apple/swift-collections.git
Working copy of https://github.com/apple/swift-collections.git resolved at 1.1.4
Creating working copy for https://github.com/apple/swift-docc-plugin
Working copy of https://github.com/apple/swift-docc-plugin resolved at 1.4.3
Build complete.
{
  "dependencies" : [
    {
      "identity" : "swift-collections",
      "requirement" : {
        "range" : [
          {
            "lower_bound" : "1.0.0",
            "upper_bound" : "2.0.0"
          }
        ]
      },
      "type" : "sourceControl",
      "url" : "https://github.com/apple/swift-collections.git"
    },
    {
      "identity" : "swift-docc-plugin",
      "requirement" : {
        "range" : [
          {
            "lower_bound" : "1.0.0",
            "upper_bound" : "2.0.0"
          }
        ]
      },
      "type" : "sourceControl",
      "url" : "https://github.com/apple/swift-docc-plugin"
    }
  ],
  "manifest_display_name" : "ProjectNavigator",
  "name" : "ProjectNavigator",
  "path" : "/Users/admin/builder/spi-builder-workspace",
  "platforms" : [
    {
      "name" : "macos",
      "version" : "14.0"
    },
    {
      "name" : "ios",
      "version" : "17.0"
    },
    {
      "name" : "visionos",
      "version" : "1.0"
    }
  ],
  "products" : [
    {
      "name" : "Files",
      "targets" : [
        "Files"
      ],
      "type" : {
        "library" : [
          "automatic"
        ]
      }
    },
    {
      "name" : "ProjectNavigator",
      "targets" : [
        "ProjectNavigator"
      ],
      "type" : {
        "library" : [
          "automatic"
        ]
      }
    }
  ],
  "targets" : [
    {
      "c99name" : "_FilesTestSupport",
      "module_type" : "SwiftTarget",
      "name" : "_FilesTestSupport",
      "path" : "Sources/_FilesTestSupport",
      "product_memberships" : [
        "ProjectNavigator"
      ],
      "sources" : [
        "Payload.swift"
      ],
      "target_dependencies" : [
        "Files"
      ],
      "type" : "library"
    },
    {
      "c99name" : "ProjectNavigatorTests",
      "module_type" : "SwiftTarget",
      "name" : "ProjectNavigatorTests",
      "path" : "Tests/ProjectNavigatorTests",
      "sources" : [
        "NavigationViewTests.swift"
      ],
      "target_dependencies" : [
        "ProjectNavigator"
      ],
      "type" : "test"
    },
    {
      "c99name" : "ProjectNavigator",
      "module_type" : "SwiftTarget",
      "name" : "ProjectNavigator",
      "path" : "Sources/ProjectNavigator",
      "product_dependencies" : [
        "OrderedCollections"
      ],
      "product_memberships" : [
        "ProjectNavigator"
      ],
      "sources" : [
        "EditableLabel.swift",
        "FileNavigator.swift",
        "SwitchFileOrFolder.swift",
        "WrappedUUIDSet.swift"
      ],
      "target_dependencies" : [
        "Files",
        "_FilesTestSupport"
      ],
      "type" : "library"
    },
    {
      "c99name" : "FilesTests",
      "module_type" : "SwiftTarget",
      "name" : "FilesTests",
      "path" : "Tests/FilesTests",
      "sources" : [
        "FileOperationsTests.swift",
        "FilesTests.swift"
      ],
      "target_dependencies" : [
        "Files",
        "_FilesTestSupport"
      ],
      "type" : "test"
    },
    {
      "c99name" : "Files",
      "module_type" : "SwiftTarget",
      "name" : "Files",
      "path" : "Sources/Files",
      "product_dependencies" : [
        "OrderedCollections"
      ],
      "product_memberships" : [
        "Files",
        "ProjectNavigator"
      ],
      "sources" : [
        "FileOperations.swift",
        "FileTree.swift",
        "Files.swift"
      ],
      "type" : "library"
    }
  ],
  "tools_version" : "5.9"
}
Done.