Good day!
When your project have total 887 or more SPM local targets and then you try to build it, xcodebuild will be crash.
Crash log:
SWBBuildService-2025-08-11-151103.ips
Thread 2 Crashed:: Dispatch queue: com.apple.root.default-qos.cooperative
0 libxpc.dylib 0x197c4826c _availability_version_check + 8
1 libswiftCore.dylib 0x1a9b44428 __isPlatformVersionAtLeast + 92
2 libswiftCore.dylib 0x1a9a6e054 _swift_allocObject_ + 1100
3 SWBMacro 0x104a9c408 specialized _ArrayBuffer._consumeAndCreateNew(bufferIsUnique:minimumCapacity:growForAppend:) + 116
4 SWBMacro 0x104a97b58 specialized Array.append<A>(contentsOf:) + 116
5 SWBMacro 0x104a954e8 MacroEvaluationProgram.executeInContext(_:withResultBuilder:alwaysEvalAsString:) + 160
6 SWBMacro 0x104a96548 MacroEvaluationProgram.executeInContext(_:withResultBuilder:alwaysEvalAsString:) + 4352
7 SWBMacro 0x104a96548 MacroEvaluationProgram.executeInContext(_:withResultBuilder:alwaysEvalAsString:) + 4352
8 SWBMacro 0x104a96548 MacroEvaluationProgram.executeInContext(_:withResultBuilder:alwaysEvalAsString:) + 4352
9 SWBMacro 0x104a96548 MacroEvaluationProgram.executeInContext(_:withResultBuilder:alwaysEvalAsString:) + 4352
10 SWBMacro 0x104a96548 MacroEvaluationProgram.executeInContext(_:withResultBuilder:alwaysEvalAsString:) + 4352
But if you try to build Package.swift via swift build command, it works.
Here you can open sample project:
Just Package.swift with SPM 900 targets
Open Package.swift via Xcode 26 any beta and try to build
Xcode workspace with SPM 900 targets
Open MyApp.xcworkspace and try to build
You can also make by self the Package.swift (also make required directories for SPM):
// swift-tools-version: 5.9
import PackageDescription
// let count = 800 // no crash
let count = 900 // crash
let targetsNames = (1...count).map { "Pkg1Target\($0)" }
let targets = targetsNames.map { Target.target(name: $0) }
let package = Package(
name: "Pkg1TargetLibrary",
platforms: [.iOS(.v16)],
products: [
.library(name: "Pkg1TargetLibrary", targets: targets.map(\.name)),
],
targets: targets
)
Selecting any option will automatically load the page