Upgrade rs-async-zip to support data descriptors (#2809)

## Summary

Upgrading `rs-async-zip` enables us to support data descriptors in
streaming. This both greatly improves performance for indexes that use
data descriptors _and_ ensures that we support them in a few other
places (e.g., zipped source distributions created in Finder).

Closes #2808.
This commit is contained in:
Charlie Marsh 2024-04-03 21:31:40 -04:00 committed by GitHub
parent 34341bd6e9
commit dc2c289dff
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
8 changed files with 19 additions and 19 deletions

View file

@ -481,8 +481,7 @@ impl<'a, Context: BuildContext + Send + Sync> DistributionDatabase<'a, Context>
file.seek(io::SeekFrom::Start(0))
.await
.map_err(Error::CacheWrite)?;
let reader = tokio::io::BufReader::new(file);
uv_extract::seek::unzip(reader, temp_dir.path()).await?;
uv_extract::seek::unzip(file, temp_dir.path()).await?;
// Persist the temporary directory to the directory store.
let archive = self