@@ -419,26 +419,31 @@ extension Workspace {
419
419
}
420
420
421
421
// Retrieve the required resolved packages.
422
- for resolvedPackage in requiredResolvedPackages {
423
- await observabilityScope. makeChildScope (
424
- description: " retrieving resolved package versions for dependencies " ,
425
- metadata: resolvedPackage. packageRef. diagnosticsMetadata
426
- ) . trap {
427
- switch resolvedPackage. packageRef. kind {
428
- case . localSourceControl, . remoteSourceControl:
429
- _ = try await self . checkoutRepository (
430
- package : resolvedPackage. packageRef,
431
- at: resolvedPackage. state,
432
- observabilityScope: observabilityScope
433
- )
434
- case . registry:
435
- _ = try await self . downloadRegistryArchive (
436
- package : resolvedPackage. packageRef,
437
- at: resolvedPackage. state,
438
- observabilityScope: observabilityScope
439
- )
440
- default :
441
- throw InternalError ( " invalid resolved package type \( resolvedPackage. packageRef. kind) " )
422
+ await withThrowingTaskGroup ( of: Void . self) { taskGroup in
423
+ for resolvedPackage in requiredResolvedPackages {
424
+ let observabilityScope = observabilityScope. makeChildScope (
425
+ description: " retrieving resolved package versions for dependencies " ,
426
+ metadata: resolvedPackage. packageRef. diagnosticsMetadata
427
+ )
428
+ taskGroup. addTask {
429
+ await observabilityScope. trap {
430
+ switch resolvedPackage. packageRef. kind {
431
+ case . localSourceControl, . remoteSourceControl:
432
+ _ = try await self . checkoutRepository (
433
+ package : resolvedPackage. packageRef,
434
+ at: resolvedPackage. state,
435
+ observabilityScope: observabilityScope
436
+ )
437
+ case . registry:
438
+ _ = try await self . downloadRegistryArchive (
439
+ package : resolvedPackage. packageRef,
440
+ at: resolvedPackage. state,
441
+ observabilityScope: observabilityScope
442
+ )
443
+ default :
444
+ throw InternalError ( " invalid resolved package type \( resolvedPackage. packageRef. kind) " )
445
+ }
446
+ }
442
447
}
443
448
}
444
449
}
0 commit comments