@@ -501,32 +501,39 @@ fn print_lockfile_generation(
501
501
status_locking ( ws, num_pkgs) ?;
502
502
503
503
for change in changes {
504
- let possibilities = if let Some ( query) = change. alternatives_query ( ) {
505
- loop {
506
- match registry. query_vec ( & query, QueryKind :: Exact ) {
507
- std:: task:: Poll :: Ready ( res) => {
508
- break res?;
504
+ match change. kind {
505
+ PackageChangeKind :: Added => {
506
+ let possibilities = if let Some ( query) = change. alternatives_query ( ) {
507
+ loop {
508
+ match registry. query_vec ( & query, QueryKind :: Exact ) {
509
+ std:: task:: Poll :: Ready ( res) => {
510
+ break res?;
511
+ }
512
+ std:: task:: Poll :: Pending => registry. block_until_ready ( ) ?,
513
+ }
509
514
}
510
- std:: task:: Poll :: Pending => registry. block_until_ready ( ) ?,
511
- }
512
- }
513
- } else {
514
- vec ! [ ]
515
- } ;
515
+ } else {
516
+ vec ! [ ]
517
+ } ;
516
518
517
- {
518
- let package_id = change. package_id ;
519
- let required_rust_version = report_required_rust_version ( ws, resolve, package_id) ;
520
- let latest = report_latest ( & possibilities, package_id) ;
521
- let note = required_rust_version. or ( latest) ;
519
+ let package_id = change. package_id ;
520
+ let required_rust_version = report_required_rust_version ( ws, resolve, package_id) ;
521
+ let latest = report_latest ( & possibilities, package_id) ;
522
+ let note = required_rust_version. or ( latest) ;
522
523
523
- if let Some ( note) = note {
524
- assert_eq ! ( change. kind, PackageChangeKind :: Added ) ;
525
- ws. gctx ( ) . shell ( ) . status_with_color (
526
- change. kind . status ( ) ,
527
- format ! ( "{change}{note}" ) ,
528
- & change. kind . style ( ) ,
529
- ) ?;
524
+ if let Some ( note) = note {
525
+ ws. gctx ( ) . shell ( ) . status_with_color (
526
+ change. kind . status ( ) ,
527
+ format ! ( "{change}{note}" ) ,
528
+ & change. kind . style ( ) ,
529
+ ) ?;
530
+ }
531
+ }
532
+ PackageChangeKind :: Upgraded
533
+ | PackageChangeKind :: Downgraded
534
+ | PackageChangeKind :: Removed
535
+ | PackageChangeKind :: Unchanged => {
536
+ unreachable ! ( "without a previous resolve, everything should be added" )
530
537
}
531
538
}
532
539
}
@@ -548,42 +555,24 @@ fn print_lockfile_sync(
548
555
status_locking ( ws, num_pkgs) ?;
549
556
550
557
for change in changes {
551
- let possibilities = if let Some ( query) = change. alternatives_query ( ) {
552
- loop {
553
- match registry. query_vec ( & query, QueryKind :: Exact ) {
554
- std:: task:: Poll :: Ready ( res) => {
555
- break res?;
558
+ match change. kind {
559
+ PackageChangeKind :: Added
560
+ | PackageChangeKind :: Upgraded
561
+ | PackageChangeKind :: Downgraded => {
562
+ let possibilities = if let Some ( query) = change. alternatives_query ( ) {
563
+ loop {
564
+ match registry. query_vec ( & query, QueryKind :: Exact ) {
565
+ std:: task:: Poll :: Ready ( res) => {
566
+ break res?;
567
+ }
568
+ std:: task:: Poll :: Pending => registry. block_until_ready ( ) ?,
569
+ }
556
570
}
557
- std:: task:: Poll :: Pending => registry. block_until_ready ( ) ?,
558
- }
559
- }
560
- } else {
561
- vec ! [ ]
562
- } ;
563
-
564
- let package_id = change. package_id ;
565
- if change. previous_id . is_some ( ) {
566
- let required_rust_version = report_required_rust_version ( ws, resolve, package_id) ;
567
- let latest = report_latest ( & possibilities, package_id) ;
568
- let note = required_rust_version. or ( latest) . unwrap_or_default ( ) ;
569
-
570
- let msg = format ! ( "{change}{note}" ) ;
571
+ } else {
572
+ vec ! [ ]
573
+ } ;
571
574
572
- if change. kind == PackageChangeKind :: Downgraded {
573
- ws. gctx ( ) . shell ( ) . status_with_color (
574
- change. kind . status ( ) ,
575
- msg,
576
- & change. kind . style ( ) ,
577
- ) ?;
578
- } else {
579
- ws. gctx ( ) . shell ( ) . status_with_color (
580
- change. kind . status ( ) ,
581
- msg,
582
- & change. kind . style ( ) ,
583
- ) ?;
584
- }
585
- } else {
586
- if change. kind == PackageChangeKind :: Added {
575
+ let package_id = change. package_id ;
587
576
let required_rust_version = report_required_rust_version ( ws, resolve, package_id) ;
588
577
let latest = report_latest ( & possibilities, package_id) ;
589
578
let note = required_rust_version. or ( latest) . unwrap_or_default ( ) ;
@@ -594,6 +583,7 @@ fn print_lockfile_sync(
594
583
& change. kind . style ( ) ,
595
584
) ?;
596
585
}
586
+ PackageChangeKind :: Removed | PackageChangeKind :: Unchanged => { }
597
587
}
598
588
}
599
589
@@ -628,61 +618,45 @@ fn print_lockfile_updates(
628
618
vec ! [ ]
629
619
} ;
630
620
631
- let package_id = change. package_id ;
632
- if change. previous_id . is_some ( ) {
633
- let required_rust_version = report_required_rust_version ( ws, resolve, package_id) ;
634
- let latest = report_latest ( & possibilities, package_id) ;
635
- let note = required_rust_version. or ( latest) . unwrap_or_default ( ) ;
636
-
637
- let msg = format ! ( "{change}{note}" ) ;
621
+ match change. kind {
622
+ PackageChangeKind :: Added
623
+ | PackageChangeKind :: Upgraded
624
+ | PackageChangeKind :: Downgraded => {
625
+ let package_id = change. package_id ;
626
+ let required_rust_version = report_required_rust_version ( ws, resolve, package_id) ;
627
+ let latest = report_latest ( & possibilities, package_id) ;
628
+ let note = required_rust_version. or ( latest) . unwrap_or_default ( ) ;
638
629
639
- if change. kind == PackageChangeKind :: Downgraded {
640
630
ws. gctx ( ) . shell ( ) . status_with_color (
641
631
change. kind . status ( ) ,
642
- msg,
643
- & change. kind . style ( ) ,
644
- ) ?;
645
- } else {
646
- ws. gctx ( ) . shell ( ) . status_with_color (
647
- change. kind . status ( ) ,
648
- msg,
632
+ format ! ( "{change}{note}" ) ,
649
633
& change. kind . style ( ) ,
650
634
) ?;
651
635
}
652
- } else {
653
- if change. kind == PackageChangeKind :: Removed {
636
+ PackageChangeKind :: Removed => {
654
637
ws. gctx ( ) . shell ( ) . status_with_color (
655
638
change. kind . status ( ) ,
656
639
format ! ( "{change}" ) ,
657
640
& change. kind . style ( ) ,
658
641
) ?;
659
- } else if change. kind == PackageChangeKind :: Added {
642
+ }
643
+ PackageChangeKind :: Unchanged => {
644
+ let package_id = change. package_id ;
660
645
let required_rust_version = report_required_rust_version ( ws, resolve, package_id) ;
661
646
let latest = report_latest ( & possibilities, package_id) ;
662
- let note = required_rust_version. or ( latest) . unwrap_or_default ( ) ;
647
+ let note = required_rust_version. as_deref ( ) . or ( latest. as_deref ( ) ) ;
663
648
664
- ws. gctx ( ) . shell ( ) . status_with_color (
665
- change. kind . status ( ) ,
666
- format ! ( "{change}{note}" ) ,
667
- & change. kind . style ( ) ,
668
- ) ?;
669
- }
670
- }
671
- if change. kind == PackageChangeKind :: Unchanged {
672
- let required_rust_version = report_required_rust_version ( ws, resolve, package_id) ;
673
- let latest = report_latest ( & possibilities, package_id) ;
674
- let note = required_rust_version. as_deref ( ) . or ( latest. as_deref ( ) ) ;
675
-
676
- if let Some ( note) = note {
677
- if latest. is_some ( ) {
678
- unchanged_behind += 1 ;
679
- }
680
- if ws. gctx ( ) . shell ( ) . verbosity ( ) == Verbosity :: Verbose {
681
- ws. gctx ( ) . shell ( ) . status_with_color (
682
- change. kind . status ( ) ,
683
- format ! ( "{change}{note}" ) ,
684
- & change. kind . style ( ) ,
685
- ) ?;
649
+ if let Some ( note) = note {
650
+ if latest. is_some ( ) {
651
+ unchanged_behind += 1 ;
652
+ }
653
+ if ws. gctx ( ) . shell ( ) . verbosity ( ) == Verbosity :: Verbose {
654
+ ws. gctx ( ) . shell ( ) . status_with_color (
655
+ change. kind . status ( ) ,
656
+ format ! ( "{change}{note}" ) ,
657
+ & change. kind . style ( ) ,
658
+ ) ?;
659
+ }
686
660
}
687
661
}
688
662
}
0 commit comments