impl TryFrom<&VersionSpecifiers> for PubGrubSpecifier (#4010)

Add a missing utility conversion method from PEP 440 versions specifiers
to a pubgrub range.
This commit is contained in:
konsti 2024-06-04 10:00:07 +02:00 committed by GitHub
parent 40e0dddd00
commit 36f7fa3917
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
3 changed files with 21 additions and 15 deletions

View file

@ -7,7 +7,6 @@ use std::thread;
use dashmap::DashMap;
use futures::{FutureExt, StreamExt, TryFutureExt};
use itertools::Itertools;
use pubgrub::error::PubGrubError;
use pubgrub::range::Range;
use pubgrub::solver::{Incompatibility, State};
@ -412,12 +411,8 @@ impl<InstalledPackages: InstalledPackagesProvider> ResolverState<InstalledPackag
)),
) = reason
{
let python_version = requires_python
.iter()
.map(PubGrubSpecifier::try_from)
.fold_ok(Range::full(), |range, specifier| {
range.intersection(&specifier.into())
})?;
let python_version: Range<Version> =
PubGrubSpecifier::try_from(&requires_python)?.into();
let package = &state.next;
state