mirror of
https://github.com/astral-sh/uv.git
synced 2025-07-07 21:35:00 +00:00
Tweak response buffering (#224)
In my testing, we can both increase the number of concurrent requests and remove the `ready_chunks`.
This commit is contained in:
parent
1c5cdcd70a
commit
6da9c2f534
1 changed files with 44 additions and 50 deletions
|
@ -511,11 +511,9 @@ impl<'a, Context: BuildContext + Sync> Resolver<'a, Context> {
|
|||
async fn fetch(&self, request_stream: UnboundedReceiver<Request>) -> Result<(), ResolveError> {
|
||||
let mut response_stream = request_stream
|
||||
.map(|request| self.process_request(request))
|
||||
.buffer_unordered(32)
|
||||
.ready_chunks(32);
|
||||
.buffer_unordered(50);
|
||||
|
||||
while let Some(chunk) = response_stream.next().await {
|
||||
for response in chunk {
|
||||
while let Some(response) = response_stream.next().await {
|
||||
match response? {
|
||||
Response::Package(package_name, metadata) => {
|
||||
trace!("Received package metadata for {}", package_name);
|
||||
|
@ -532,22 +530,19 @@ impl<'a, Context: BuildContext + Sync> Resolver<'a, Context> {
|
|||
std::collections::btree_map::Entry::Occupied(mut entry) => {
|
||||
if let DistributionFile::Sdist(_) = entry.get() {
|
||||
// Wheels get precedence over source distributions
|
||||
entry.insert(DistributionFile::from(
|
||||
WheelFile::from(file),
|
||||
));
|
||||
}
|
||||
}
|
||||
std::collections::btree_map::Entry::Vacant(entry) => {
|
||||
entry.insert(DistributionFile::from(WheelFile::from(
|
||||
file,
|
||||
)));
|
||||
}
|
||||
}
|
||||
std::collections::btree_map::Entry::Vacant(entry) => {
|
||||
entry.insert(DistributionFile::from(WheelFile::from(file)));
|
||||
}
|
||||
} else if let Ok(name) = SourceDistributionFilename::parse(
|
||||
file.filename.as_str(),
|
||||
&package_name,
|
||||
) {
|
||||
}
|
||||
}
|
||||
} else if let Ok(name) =
|
||||
SourceDistributionFilename::parse(file.filename.as_str(), &package_name)
|
||||
{
|
||||
let version = PubGrubVersion::from(name.version);
|
||||
if let std::collections::btree_map::Entry::Vacant(entry) =
|
||||
version_map.entry(version)
|
||||
|
@ -575,7 +570,6 @@ impl<'a, Context: BuildContext + Sync> Resolver<'a, Context> {
|
|||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Ok::<(), ResolveError>(())
|
||||
}
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue