Build Information
Successful build of SwiftUIPHPicker, reference 0.3.1 (f91179
), with Swift 6.0 for macOS (SPM) on 30 Nov 2024 19:18:47 UTC.
Swift 6 data race errors: 1
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 -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.58.1
Interrupt handler set up.
========================================
Checkout
========================================
Clone URL: https://github.com/edonv/SwiftUIPHPicker.git
Reference: 0.3.1
Initialized empty Git repository in /Users/admin/builder/spi-builder-workspace/.git/
From https://github.com/edonv/SwiftUIPHPicker
* tag 0.3.1 -> FETCH_HEAD
HEAD is now at f91179f Added empty privacy manifest
Cloned https://github.com/edonv/SwiftUIPHPicker.git
Revision (git rev-parse @):
f91179f7318805da94e096b87cc938d58aa30383
SPI manifest file found: $PWD/.spi.yml
SUCCESS checkout https://github.com/edonv/SwiftUIPHPicker.git at 0.3.1
========================================
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": "swiftuiphpicker",
"name": "SwiftUIPHPicker",
"url": "https://github.com/edonv/SwiftUIPHPicker.git",
"version": "unspecified",
"path": "/Users/admin/builder/spi-builder-workspace/.resolve-product-dependencies/.build/checkouts/SwiftUIPHPicker",
"dependencies": [
]
}
]
}
Fetching https://github.com/edonv/SwiftUIPHPicker.git
[1/481] Fetching swiftuiphpicker
Fetched https://github.com/edonv/SwiftUIPHPicker.git from cache (0.73s)
Creating working copy for https://github.com/edonv/SwiftUIPHPicker.git
Working copy of https://github.com/edonv/SwiftUIPHPicker.git resolved at 0.3.1 (f91179f)
warning: '.resolve-product-dependencies': dependency 'swiftuiphpicker' 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/edonv/SwiftUIPHPicker.git
{
"dependencies" : [
],
"manifest_display_name" : "SwiftUIPHPicker",
"name" : "SwiftUIPHPicker",
"path" : "/Users/admin/builder/spi-builder-workspace",
"platforms" : [
{
"name" : "ios",
"version" : "14.0"
},
{
"name" : "macos",
"version" : "13.0"
},
{
"name" : "maccatalyst",
"version" : "14.0"
}
],
"products" : [
{
"name" : "SwiftUIPHPicker",
"targets" : [
"SwiftUIPHPicker"
],
"type" : {
"library" : [
"automatic"
]
}
}
],
"targets" : [
{
"c99name" : "SwiftUIPHPickerTests",
"module_type" : "SwiftTarget",
"name" : "SwiftUIPHPickerTests",
"path" : "Tests/SwiftUIPHPickerTests",
"sources" : [
"SwiftUIPHPickerTests.swift"
],
"target_dependencies" : [
"SwiftUIPHPicker"
],
"type" : "test"
},
{
"c99name" : "SwiftUIPHPicker",
"module_type" : "SwiftTarget",
"name" : "SwiftUIPHPicker",
"path" : "Sources/SwiftUIPHPicker",
"product_memberships" : [
"SwiftUIPHPicker"
],
"sources" : [
"FileManager+Extensions.swift",
"NSItemProvider+Extensions.swift",
"PHImage.swift",
"PHPicker+EnvironmentValues.swift",
"PHPicker+PresentationModifier.swift",
"PHPicker.swift",
"PHSelectedObject.swift"
],
"type" : "library"
}
],
"tools_version" : "5.7"
}
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 -Xswiftc -enable-upcoming-feature -Xswiftc StrictConcurrency -Xswiftc -enable-upcoming-feature -Xswiftc DisableOutwardActorInference -Xswiftc -enable-upcoming-feature -Xswiftc GlobalActorIsolatedTypesUsability -Xswiftc -enable-upcoming-feature -Xswiftc InferSendableFromCaptures
Building for debugging...
[0/2] Write sources
[1/2] Write swift-version--7754E27361AE5C74.txt
[3/10] Compiling SwiftUIPHPicker PHSelectedObject.swift
[4/10] Compiling SwiftUIPHPicker PHPicker+PresentationModifier.swift
[5/10] Compiling SwiftUIPHPicker PHImage.swift
[6/10] Compiling SwiftUIPHPicker NSItemProvider+Extensions.swift
/Users/admin/builder/spi-builder-workspace/Sources/SwiftUIPHPicker/NSItemProvider+Extensions.swift:18:28: warning: capture of 'destinationHandler' with non-sendable type '((URL) -> URL?)?' in a `@Sendable` closure; this is an error in the Swift 6 language mode
16 | loadFileRepresentation(forTypeIdentifier: typeIdentifier) { (url, error) in
17 | if let url {
18 | if let destinationHandler,
| |- warning: capture of 'destinationHandler' with non-sendable type '((URL) -> URL?)?' in a `@Sendable` closure; this is an error in the Swift 6 language mode
| `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
19 | let newURL = destinationHandler(url),
20 | FileManager.default.secureCopyItem(at: url, to: newURL) {
/Users/admin/builder/spi-builder-workspace/Sources/SwiftUIPHPicker/NSItemProvider+Extensions.swift:38:34: warning: task-isolated value of type 'T' passed as a strongly transferred parameter; later accesses could race; this is an error in the Swift 6 language mode
36 | loadObject(ofClass: aClass.self) { object, error in
37 | if let object {
38 | continuation.resume(returning: object as! T)
| `- warning: task-isolated value of type 'T' passed as a strongly transferred parameter; later accesses could race; this is an error in the Swift 6 language mode
39 | } else if let error {
40 | continuation.resume(throwing: error)
[7/10] Compiling SwiftUIPHPicker PHPicker+EnvironmentValues.swift
<unknown>:0: note: a function type must be marked '@Sendable' to conform to 'Sendable'
/Users/admin/builder/spi-builder-workspace/Sources/SwiftUIPHPicker/PHPicker+EnvironmentValues.swift:27:16: warning: static property 'defaultValue' is not concurrency-safe because non-'Sendable' type '((URL) -> URL?)?' may have shared mutable state; this is an error in the Swift 6 language mode
25 |
26 | private struct PHPickerVideoDestinationEnvironmentKey: EnvironmentKey {
27 | static let defaultValue: ((URL) -> URL?)? = nil
| |- warning: static property 'defaultValue' is not concurrency-safe because non-'Sendable' type '((URL) -> URL?)?' may have shared mutable state; this is an error in the Swift 6 language mode
| |- note: annotate 'defaultValue' 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
28 | }
29 |
[8/10] Compiling SwiftUIPHPicker FileManager+Extensions.swift
[9/10] Emitting module SwiftUIPHPicker
<unknown>:0: note: a function type must be marked '@Sendable' to conform to 'Sendable'
/Users/admin/builder/spi-builder-workspace/Sources/SwiftUIPHPicker/PHPicker+EnvironmentValues.swift:27:16: warning: static property 'defaultValue' is not concurrency-safe because non-'Sendable' type '((URL) -> URL?)?' may have shared mutable state; this is an error in the Swift 6 language mode
25 |
26 | private struct PHPickerVideoDestinationEnvironmentKey: EnvironmentKey {
27 | static let defaultValue: ((URL) -> URL?)? = nil
| |- warning: static property 'defaultValue' is not concurrency-safe because non-'Sendable' type '((URL) -> URL?)?' may have shared mutable state; this is an error in the Swift 6 language mode
| |- note: annotate 'defaultValue' 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
28 | }
29 |
[10/10] Compiling SwiftUIPHPicker PHPicker.swift
/Users/admin/builder/spi-builder-workspace/Sources/SwiftUIPHPicker/PHPicker.swift:36:9: warning: call to main actor-isolated initializer 'init(_:)' in a synchronous nonisolated context; this is an error in the Swift 6 language mode
33 | }
34 |
35 | public func makeCoordinator() -> Coordinator {
| `- note: add '@MainActor' to make instance method 'makeCoordinator()' part of global actor 'MainActor'
36 | Coordinator(self)
| `- warning: call to main actor-isolated initializer 'init(_:)' in a synchronous nonisolated context; this is an error in the Swift 6 language mode
37 | }
38 | }
:
74 | var parent: PHPicker
75 |
76 | init(_ parent: PHPicker) {
| `- note: calls to initializer 'init(_:)' from outside of its actor context are implicitly asynchronous
77 | self.parent = parent
78 | }
/Users/admin/builder/spi-builder-workspace/Sources/SwiftUIPHPicker/PHPicker.swift:98:48: warning: type 'PHSelectedObject' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
96 | Task { [keepLivePhotosIntact, destinationHandler] in
97 | do {
98 | let selections = try await withThrowingTaskGroup(of: PHSelectedObject?.self,
| `- warning: type 'PHSelectedObject' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
99 | returning: [PHSelectedObject].self) { taskGroup in
100 | for result in results {
/Users/admin/builder/spi-builder-workspace/Sources/SwiftUIPHPicker/PHSelectedObject.swift:12:13: note: consider making enum 'PHSelectedObject' conform to the 'Sendable' protocol
10 |
11 | /// A container type for storing different types of resulting selections from ``PHPicker``.
12 | public enum PHSelectedObject: Hashable {
| `- note: consider making enum 'PHSelectedObject' conform to the 'Sendable' protocol
13 | /// Contains a ``PHPicker/PHImage`` (which is just `NSImage` on macOS and `UIImage` on iOS/macCatalyst).
14 | case photo(fileName: String?, image: PHPicker.PHImage)
/Users/admin/builder/spi-builder-workspace/Sources/SwiftUIPHPicker/PHPicker.swift:99:106: warning: type 'PHSelectedObject' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
97 | do {
98 | let selections = try await withThrowingTaskGroup(of: PHSelectedObject?.self,
99 | returning: [PHSelectedObject].self) { taskGroup in
| `- warning: type 'PHSelectedObject' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
100 | for result in results {
101 | taskGroup.addTask {
/Users/admin/builder/spi-builder-workspace/Sources/SwiftUIPHPicker/PHSelectedObject.swift:12:13: note: consider making enum 'PHSelectedObject' conform to the 'Sendable' protocol
10 |
11 | /// A container type for storing different types of resulting selections from ``PHPicker``.
12 | public enum PHSelectedObject: Hashable {
| `- note: consider making enum 'PHSelectedObject' conform to the 'Sendable' protocol
13 | /// Contains a ``PHPicker/PHImage`` (which is just `NSImage` on macOS and `UIImage` on iOS/macCatalyst).
14 | case photo(fileName: String?, image: PHPicker.PHImage)
/Users/admin/builder/spi-builder-workspace/Sources/SwiftUIPHPicker/PHPicker.swift:101:39: warning: type 'PHSelectedObject' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
99 | returning: [PHSelectedObject].self) { taskGroup in
100 | for result in results {
101 | taskGroup.addTask {
| `- warning: type 'PHSelectedObject' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
102 | let provider = result.itemProvider
103 |
/Users/admin/builder/spi-builder-workspace/Sources/SwiftUIPHPicker/PHSelectedObject.swift:12:13: note: consider making enum 'PHSelectedObject' conform to the 'Sendable' protocol
10 |
11 | /// A container type for storing different types of resulting selections from ``PHPicker``.
12 | public enum PHSelectedObject: Hashable {
| `- note: consider making enum 'PHSelectedObject' conform to the 'Sendable' protocol
13 | /// Contains a ``PHPicker/PHImage`` (which is just `NSImage` on macOS and `UIImage` on iOS/macCatalyst).
14 | case photo(fileName: String?, image: PHPicker.PHImage)
/Users/admin/builder/spi-builder-workspace/Sources/SwiftUIPHPicker/PHPicker.swift:141:30: warning: type 'PHSelectedObject' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
139 |
140 | return try await taskGroup
141 | .compactMap { $0 }
| `- warning: type 'PHSelectedObject' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
142 | .reduce(into: []) { $0.append($1) }
143 | }
/Users/admin/builder/spi-builder-workspace/Sources/SwiftUIPHPicker/PHSelectedObject.swift:12:13: note: consider making enum 'PHSelectedObject' conform to the 'Sendable' protocol
10 |
11 | /// A container type for storing different types of resulting selections from ``PHPicker``.
12 | public enum PHSelectedObject: Hashable {
| `- note: consider making enum 'PHSelectedObject' conform to the 'Sendable' protocol
13 | /// Contains a ``PHPicker/PHImage`` (which is just `NSImage` on macOS and `UIImage` on iOS/macCatalyst).
14 | case photo(fileName: String?, image: PHPicker.PHImage)
/Users/admin/builder/spi-builder-workspace/Sources/SwiftUIPHPicker/PHPicker.swift:141:41: warning: type 'PHSelectedObject' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
139 |
140 | return try await taskGroup
141 | .compactMap { $0 }
| `- warning: type 'PHSelectedObject' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
142 | .reduce(into: []) { $0.append($1) }
143 | }
/Users/admin/builder/spi-builder-workspace/Sources/SwiftUIPHPicker/PHSelectedObject.swift:12:13: note: consider making enum 'PHSelectedObject' conform to the 'Sendable' protocol
10 |
11 | /// A container type for storing different types of resulting selections from ``PHPicker``.
12 | public enum PHSelectedObject: Hashable {
| `- note: consider making enum 'PHSelectedObject' conform to the 'Sendable' protocol
13 | /// Contains a ``PHPicker/PHImage`` (which is just `NSImage` on macOS and `UIImage` on iOS/macCatalyst).
14 | case photo(fileName: String?, image: PHPicker.PHImage)
/Users/admin/builder/spi-builder-workspace/Sources/SwiftUIPHPicker/PHPicker.swift:141:41: warning: type 'PHSelectedObject' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
139 |
140 | return try await taskGroup
141 | .compactMap { $0 }
| `- warning: type 'PHSelectedObject' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
142 | .reduce(into: []) { $0.append($1) }
143 | }
/Users/admin/builder/spi-builder-workspace/Sources/SwiftUIPHPicker/PHSelectedObject.swift:12:13: note: consider making enum 'PHSelectedObject' conform to the 'Sendable' protocol
10 |
11 | /// A container type for storing different types of resulting selections from ``PHPicker``.
12 | public enum PHSelectedObject: Hashable {
| `- note: consider making enum 'PHSelectedObject' conform to the 'Sendable' protocol
13 | /// Contains a ``PHPicker/PHImage`` (which is just `NSImage` on macOS and `UIImage` on iOS/macCatalyst).
14 | case photo(fileName: String?, image: PHPicker.PHImage)
/Users/admin/builder/spi-builder-workspace/Sources/SwiftUIPHPicker/PHPicker.swift:141:41: warning: type 'PHSelectedObject' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
139 |
140 | return try await taskGroup
141 | .compactMap { $0 }
| `- warning: type 'PHSelectedObject' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
142 | .reduce(into: []) { $0.append($1) }
143 | }
/Users/admin/builder/spi-builder-workspace/Sources/SwiftUIPHPicker/PHSelectedObject.swift:12:13: note: consider making enum 'PHSelectedObject' conform to the 'Sendable' protocol
10 |
11 | /// A container type for storing different types of resulting selections from ``PHPicker``.
12 | public enum PHSelectedObject: Hashable {
| `- note: consider making enum 'PHSelectedObject' conform to the 'Sendable' protocol
13 | /// Contains a ``PHPicker/PHImage`` (which is just `NSImage` on macOS and `UIImage` on iOS/macCatalyst).
14 | case photo(fileName: String?, image: PHPicker.PHImage)
/Users/admin/builder/spi-builder-workspace/Sources/SwiftUIPHPicker/PHPicker.swift:141:41: warning: type 'PHSelectedObject' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
139 |
140 | return try await taskGroup
141 | .compactMap { $0 }
| `- warning: type 'PHSelectedObject' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
142 | .reduce(into: []) { $0.append($1) }
143 | }
/Users/admin/builder/spi-builder-workspace/Sources/SwiftUIPHPicker/PHSelectedObject.swift:12:13: note: consider making enum 'PHSelectedObject' conform to the 'Sendable' protocol
10 |
11 | /// A container type for storing different types of resulting selections from ``PHPicker``.
12 | public enum PHSelectedObject: Hashable {
| `- note: consider making enum 'PHSelectedObject' conform to the 'Sendable' protocol
13 | /// Contains a ``PHPicker/PHImage`` (which is just `NSImage` on macOS and `UIImage` on iOS/macCatalyst).
14 | case photo(fileName: String?, image: PHPicker.PHImage)
/Users/admin/builder/spi-builder-workspace/Sources/SwiftUIPHPicker/PHPicker.swift:142:30: warning: type 'PHSelectedObject' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
140 | return try await taskGroup
141 | .compactMap { $0 }
142 | .reduce(into: []) { $0.append($1) }
| `- warning: type 'PHSelectedObject' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
143 | }
144 |
/Users/admin/builder/spi-builder-workspace/Sources/SwiftUIPHPicker/PHSelectedObject.swift:12:13: note: consider making enum 'PHSelectedObject' conform to the 'Sendable' protocol
10 |
11 | /// A container type for storing different types of resulting selections from ``PHPicker``.
12 | public enum PHSelectedObject: Hashable {
| `- note: consider making enum 'PHSelectedObject' conform to the 'Sendable' protocol
13 | /// Contains a ``PHPicker/PHImage`` (which is just `NSImage` on macOS and `UIImage` on iOS/macCatalyst).
14 | case photo(fileName: String?, image: PHPicker.PHImage)
/Users/admin/builder/spi-builder-workspace/Sources/SwiftUIPHPicker/PHPicker.swift:142:30: warning: non-sendable type '[PHSelectedObject]' returned by implicitly asynchronous call to nonisolated function cannot cross actor boundary; this is an error in the Swift 6 language mode
140 | return try await taskGroup
141 | .compactMap { $0 }
142 | .reduce(into: []) { $0.append($1) }
| `- warning: non-sendable type '[PHSelectedObject]' returned by implicitly asynchronous call to nonisolated function cannot cross actor boundary; this is an error in the Swift 6 language mode
143 | }
144 |
/Users/admin/builder/spi-builder-workspace/Sources/SwiftUIPHPicker/PHSelectedObject.swift:12:13: note: consider making enum 'PHSelectedObject' conform to the 'Sendable' protocol
10 |
11 | /// A container type for storing different types of resulting selections from ``PHPicker``.
12 | public enum PHSelectedObject: Hashable {
| `- note: consider making enum 'PHSelectedObject' conform to the 'Sendable' protocol
13 | /// Contains a ``PHPicker/PHImage`` (which is just `NSImage` on macOS and `UIImage` on iOS/macCatalyst).
14 | case photo(fileName: String?, image: PHPicker.PHImage)
/Users/admin/builder/spi-builder-workspace/Sources/SwiftUIPHPicker/PHPicker.swift:36:9: warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
34 |
35 | public func makeCoordinator() -> Coordinator {
36 | Coordinator(self)
| |- warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
| `- note: sending task-isolated 'self' to main actor-isolated initializer 'init(_:)' risks causing data races between main actor-isolated and task-isolated uses
37 | }
38 | }
/Users/admin/builder/spi-builder-workspace/Sources/SwiftUIPHPicker/PHPicker.swift:101:47: warning: passing closure as a 'sending' parameter risks causing data races between main actor-isolated code and concurrent execution of the closure; this is an error in the Swift 6 language mode
99 | returning: [PHSelectedObject].self) { taskGroup in
100 | for result in results {
101 | taskGroup.addTask {
| `- warning: passing closure as a 'sending' parameter risks causing data races between main actor-isolated code and concurrent execution of the closure; this is an error in the Swift 6 language mode
102 | let provider = result.itemProvider
| `- note: closure captures non-Sendable 'result'
103 |
104 | // Define functions for platform-specific behavior
:
126 | } else if provider.hasItemConformingToTypeIdentifier(UTType.movie.identifier) {
127 | // TODO: This path needs testing
128 | guard let destinationHandler else { return nil }
| `- note: closure captures non-Sendable 'destinationHandler'
129 |
130 | let url = try await provider.loadFileRepresentation(forTypeIdentifier: UTType.movie.identifier, destinationHandler: destinationHandler)
/Users/admin/builder/spi-builder-workspace/Sources/SwiftUIPHPicker/PHPicker.swift:142:30: warning: sending main actor-isolated value of type '(inout [PHSelectedObject], PHSelectedObject) async -> Void' with later accesses to nonisolated context risks causing data races; this is an error in the Swift 6 language mode
140 | return try await taskGroup
141 | .compactMap { $0 }
142 | .reduce(into: []) { $0.append($1) }
| `- warning: sending main actor-isolated value of type '(inout [PHSelectedObject], PHSelectedObject) async -> Void' with later accesses to nonisolated context risks causing data races; this is an error in the Swift 6 language mode
143 | }
144 |
/Users/admin/builder/spi-builder-workspace/Sources/SwiftUIPHPicker/PHPicker.swift:142:30: warning: sending main actor-isolated value of type 'AsyncCompactMapSequence<ThrowingTaskGroup<PHSelectedObject?, any Error>, PHSelectedObject>' with later accesses to nonisolated context risks causing data races; this is an error in the Swift 6 language mode
140 | return try await taskGroup
141 | .compactMap { $0 }
142 | .reduce(into: []) { $0.append($1) }
| `- warning: sending main actor-isolated value of type 'AsyncCompactMapSequence<ThrowingTaskGroup<PHSelectedObject?, any Error>, PHSelectedObject>' with later accesses to nonisolated context risks causing data races; this is an error in the Swift 6 language mode
143 | }
144 |
Build complete! (13.72s)
Build complete.
{
"dependencies" : [
],
"manifest_display_name" : "SwiftUIPHPicker",
"name" : "SwiftUIPHPicker",
"path" : "/Users/admin/builder/spi-builder-workspace",
"platforms" : [
{
"name" : "ios",
"version" : "14.0"
},
{
"name" : "macos",
"version" : "13.0"
},
{
"name" : "maccatalyst",
"version" : "14.0"
}
],
"products" : [
{
"name" : "SwiftUIPHPicker",
"targets" : [
"SwiftUIPHPicker"
],
"type" : {
"library" : [
"automatic"
]
}
}
],
"targets" : [
{
"c99name" : "SwiftUIPHPickerTests",
"module_type" : "SwiftTarget",
"name" : "SwiftUIPHPickerTests",
"path" : "Tests/SwiftUIPHPickerTests",
"sources" : [
"SwiftUIPHPickerTests.swift"
],
"target_dependencies" : [
"SwiftUIPHPicker"
],
"type" : "test"
},
{
"c99name" : "SwiftUIPHPicker",
"module_type" : "SwiftTarget",
"name" : "SwiftUIPHPicker",
"path" : "Sources/SwiftUIPHPicker",
"product_memberships" : [
"SwiftUIPHPicker"
],
"sources" : [
"FileManager+Extensions.swift",
"NSItemProvider+Extensions.swift",
"PHImage.swift",
"PHPicker+EnvironmentValues.swift",
"PHPicker+PresentationModifier.swift",
"PHPicker.swift",
"PHSelectedObject.swift"
],
"type" : "library"
}
],
"tools_version" : "5.7"
}
Done.