@@ -7,6 +7,7 @@ use serde::{de, ser};
7
7
use url:: Url ;
8
8
9
9
use crate :: core:: PackageId ;
10
+ use crate :: core:: SourceKind ;
10
11
use crate :: util:: edit_distance;
11
12
use crate :: util:: errors:: CargoResult ;
12
13
use crate :: util:: PartialVersion ;
@@ -26,6 +27,7 @@ pub struct PackageIdSpec {
26
27
name : String ,
27
28
version : Option < PartialVersion > ,
28
29
url : Option < Url > ,
30
+ kind : Option < SourceKind > ,
29
31
}
30
32
31
33
impl PackageIdSpec {
@@ -78,6 +80,7 @@ impl PackageIdSpec {
78
80
name : String :: from ( name) ,
79
81
version,
80
82
url : None ,
83
+ kind : None ,
81
84
} )
82
85
}
83
86
@@ -101,6 +104,7 @@ impl PackageIdSpec {
101
104
name : String :: from ( package_id. name ( ) . as_str ( ) ) ,
102
105
version : Some ( package_id. version ( ) . clone ( ) . into ( ) ) ,
103
106
url : Some ( package_id. source_id ( ) . url ( ) . clone ( ) ) ,
107
+ kind : None ,
104
108
}
105
109
}
106
110
@@ -144,6 +148,7 @@ impl PackageIdSpec {
144
148
name,
145
149
version,
146
150
url : Some ( url) ,
151
+ kind : None ,
147
152
} )
148
153
}
149
154
@@ -216,6 +221,7 @@ impl PackageIdSpec {
216
221
name : self . name . clone ( ) ,
217
222
version : self . version . clone ( ) ,
218
223
url : None ,
224
+ kind : None ,
219
225
} ,
220
226
& mut suggestion,
221
227
) ;
@@ -226,6 +232,7 @@ impl PackageIdSpec {
226
232
name : self . name . clone ( ) ,
227
233
version : None ,
228
234
url : None ,
235
+ kind : None ,
229
236
} ,
230
237
& mut suggestion,
231
238
) ;
@@ -346,6 +353,7 @@ mod tests {
346
353
name : String :: from ( "foo" ) ,
347
354
version : None ,
348
355
url : Some ( Url :: parse ( "https://crates.io/foo" ) . unwrap ( ) ) ,
356
+ kind : None ,
349
357
} ,
350
358
"https://crates.io/foo" ,
351
359
) ;
@@ -355,6 +363,7 @@ mod tests {
355
363
name : String :: from ( "foo" ) ,
356
364
version : Some ( "1.2.3" . parse ( ) . unwrap ( ) ) ,
357
365
url : Some ( Url :: parse ( "https://crates.io/foo" ) . unwrap ( ) ) ,
366
+ kind : None ,
358
367
} ,
359
368
"https://crates.io/foo#1.2.3" ,
360
369
) ;
@@ -364,6 +373,7 @@ mod tests {
364
373
name : String :: from ( "foo" ) ,
365
374
version : Some ( "1.2" . parse ( ) . unwrap ( ) ) ,
366
375
url : Some ( Url :: parse ( "https://crates.io/foo" ) . unwrap ( ) ) ,
376
+ kind : None ,
367
377
} ,
368
378
"https://crates.io/foo#1.2" ,
369
379
) ;
@@ -373,6 +383,7 @@ mod tests {
373
383
name : String :: from ( "bar" ) ,
374
384
version : Some ( "1.2.3" . parse ( ) . unwrap ( ) ) ,
375
385
url : Some ( Url :: parse ( "https://crates.io/foo" ) . unwrap ( ) ) ,
386
+ kind : None ,
376
387
} ,
377
388
"https://crates.io/foo#[email protected] " ,
378
389
) ;
@@ -382,6 +393,7 @@ mod tests {
382
393
name : String :: from ( "bar" ) ,
383
394
version : Some ( "1.2.3" . parse ( ) . unwrap ( ) ) ,
384
395
url : Some ( Url :: parse ( "https://crates.io/foo" ) . unwrap ( ) ) ,
396
+ kind : None ,
385
397
} ,
386
398
"https://crates.io/foo#[email protected] " ,
387
399
) ;
@@ -391,6 +403,7 @@ mod tests {
391
403
name : String :: from ( "bar" ) ,
392
404
version : Some ( "1.2" . parse ( ) . unwrap ( ) ) ,
393
405
url : Some ( Url :: parse ( "https://crates.io/foo" ) . unwrap ( ) ) ,
406
+ kind : None ,
394
407
} ,
395
408
"https://crates.io/foo#[email protected] " ,
396
409
) ;
@@ -400,6 +413,7 @@ mod tests {
400
413
name : String :: from ( "foo" ) ,
401
414
version : None ,
402
415
url : None ,
416
+ kind : None ,
403
417
} ,
404
418
"foo" ,
405
419
) ;
@@ -409,6 +423,7 @@ mod tests {
409
423
name : String :: from ( "foo" ) ,
410
424
version : Some ( "1.2.3" . parse ( ) . unwrap ( ) ) ,
411
425
url : None ,
426
+ kind : None ,
412
427
} ,
413
428
414
429
) ;
@@ -418,6 +433,7 @@ mod tests {
418
433
name : String :: from ( "foo" ) ,
419
434
version : Some ( "1.2.3" . parse ( ) . unwrap ( ) ) ,
420
435
url : None ,
436
+ kind : None ,
421
437
} ,
422
438
423
439
) ;
@@ -427,6 +443,7 @@ mod tests {
427
443
name : String :: from ( "foo" ) ,
428
444
version : Some ( "1.2" . parse ( ) . unwrap ( ) ) ,
429
445
url : None ,
446
+ kind : None ,
430
447
} ,
431
448
432
449
) ;
0 commit comments