1
1
// SPDX-License-Identifier: MPL-2.0
2
2
3
+ #![ allow( clippy:: type_complexity) ]
4
+
3
5
use std:: collections:: BTreeSet as Set ;
4
6
use std:: convert:: Infallible ;
5
7
@@ -9,7 +11,9 @@ use pubgrub::range::Range;
9
11
use pubgrub:: report:: { DefaultStringReporter , DerivationTree , External , Reporter } ;
10
12
use pubgrub:: solver:: { resolve, Dependencies , DependencyProvider , OfflineDependencyProvider } ;
11
13
use pubgrub:: type_aliases:: SelectedDependencies ;
12
- use pubgrub:: version:: { NumberVersion , SemanticVersion } ;
14
+ use pubgrub:: version:: NumberVersion ;
15
+ #[ cfg( feature = "serde" ) ]
16
+ use pubgrub:: version:: SemanticVersion ;
13
17
use pubgrub:: version_set:: VersionSet ;
14
18
15
19
use proptest:: collection:: { btree_map, btree_set, vec} ;
@@ -115,6 +119,7 @@ fn timeout_resolve<P: Package, VS: VersionSet, DP: DependencyProvider<P, VS>>(
115
119
}
116
120
117
121
type NumVS = Range < NumberVersion > ;
122
+ #[ cfg( feature = "serde" ) ]
118
123
type SemVS = Range < SemanticVersion > ;
119
124
120
125
#[ test]
@@ -303,7 +308,7 @@ fn retain_versions<N: Package + Ord, VS: VersionSet>(
303
308
if !retain ( n, v) {
304
309
continue ;
305
310
}
306
- let deps = match dependency_provider. get_dependencies ( & n, & v) . unwrap ( ) {
311
+ let deps = match dependency_provider. get_dependencies ( n, v) . unwrap ( ) {
307
312
Dependencies :: Unknown => panic ! ( ) ,
308
313
Dependencies :: Known ( deps) => deps,
309
314
} ;
@@ -327,7 +332,7 @@ fn retain_dependencies<N: Package + Ord, VS: VersionSet>(
327
332
let mut smaller_dependency_provider = OfflineDependencyProvider :: new ( ) ;
328
333
for n in dependency_provider. packages ( ) {
329
334
for v in dependency_provider. versions ( n) . unwrap ( ) {
330
- let deps = match dependency_provider. get_dependencies ( & n, & v) . unwrap ( ) {
335
+ let deps = match dependency_provider. get_dependencies ( n, v) . unwrap ( ) {
331
336
Dependencies :: Unknown => panic ! ( ) ,
332
337
Dependencies :: Known ( deps) => deps,
333
338
} ;
@@ -543,7 +548,7 @@ proptest! {
543
548
// If resolution was successful, then unpublishing a version of a crate
544
549
// that was not selected should not change that.
545
550
let smaller_dependency_provider = retain_versions( & dependency_provider, |n, v| {
546
- used. get( & n) == Some ( & v) // it was used
551
+ used. get( n) == Some ( v) // it was used
547
552
|| to_remove. get( & ( * n, * v) ) . is_none( ) // or it is not one to be removed
548
553
} ) ;
549
554
prop_assert!(
@@ -588,7 +593,7 @@ fn large_case() {
588
593
let mut sat = SatResolve :: new ( & dependency_provider) ;
589
594
for p in dependency_provider. packages ( ) {
590
595
for v in dependency_provider. versions ( p) . unwrap ( ) {
591
- let res = resolve ( & dependency_provider, p . clone ( ) , v) ;
596
+ let res = resolve ( & dependency_provider, * p , v) ;
592
597
sat. check_resolve ( & res, p, v) ;
593
598
}
594
599
}
@@ -598,7 +603,7 @@ fn large_case() {
598
603
let mut sat = SatResolve :: new ( & dependency_provider) ;
599
604
for p in dependency_provider. packages ( ) {
600
605
for v in dependency_provider. versions ( p) . unwrap ( ) {
601
- let res = resolve ( & dependency_provider, p . clone ( ) , v) ;
606
+ let res = resolve ( & dependency_provider, * p , v) ;
602
607
sat. check_resolve ( & res, p, v) ;
603
608
}
604
609
}
0 commit comments