You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Use async HTTPClient in BinaryArtifactsManager (#8087)
### Motivation:
To adopt Swift concurrency in `ManifestLoader`, we need to convert
`RegistryClient` first, which then would require use of `HTTPClient`
instead of `LegacyHTTPClient`. That would also cascade to
`BinaryArtifactsManager`, so I'm starting there first to make PRs
smaller.
### Modifications:
Converted (and as a consequence, simplified) code in
`Workspace+BinaryArtifacts.swift`, also adopted `HTTPClient` in
`WorkspaceTests` to fix tests after the change.
### Result:
One major previous adopter of `LegacyHTTPClient` is now compatible with
Swift concurrency.
Since `BinaryArtifactsManager` was blocking Swift concurrency thread
pool and also used `.sharedConcurrent` dispatch queue, this potentially
fixes thread explosion/deadlocks that may have been caused by previously
broken code.
"artifact of binary target '\(targetName)' has changed checksum; this is a potential security risk so the new artifact won't be downloaded"
142
+
.init(
143
+
description:"artifact of binary target '\(targetName)' has changed checksum; this is a potential security risk so the new artifact won't be downloaded"
"checksum of downloaded artifact of binary target '\(targetName)' (\(actualChecksum ??"none")) does not match checksum specified by the manifest (\(expectedChecksum))"
148
+
.init(
149
+
description:"checksum of downloaded artifact of binary target '\(targetName)' (\(actualChecksum ??"none")) does not match checksum specified by the manifest (\(expectedChecksum))"
0 commit comments