Skip to content

Commit b6e1749

Browse files
committed
PR feedback
1 parent a139a17 commit b6e1749

File tree

3 files changed

+28
-17
lines changed

3 files changed

+28
-17
lines changed

compiler-cli/src/cli.rs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
use gleam_core::{
22
build::Telemetry,
33
error::{Error, StandardIoAction},
4-
manifest::Resolved,
4+
manifest::{Changed, Resolved},
55
};
66
use hexpm::version::Version;
77
use itertools::Itertools as _;
@@ -158,7 +158,7 @@ pub(crate) fn print_resolved(resolved: &Resolved) {
158158
for (name, version) in resolved.added.iter().sorted() {
159159
print_added(&format!("{name} v{version}"));
160160
}
161-
for (name, old, new) in resolved.changed.iter().sorted() {
161+
for Changed { name, old, new } in resolved.changed.iter().sorted_by_key(|p| &p.name) {
162162
print_changed(&format!("{name} v{old} -> v{new}"));
163163
}
164164
for name in resolved.removed.iter().sorted() {

compiler-cli/src/dependencies/dependency_manager.rs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -81,7 +81,7 @@ where
8181
if !paths.manifest().exists() {
8282
tracing::debug!("manifest_not_present");
8383
let manifest = self.perform_version_resolution(paths, config, None, Vec::new())?;
84-
return Ok(Resolved::add_added(manifest));
84+
return Ok(Resolved::all_added(manifest));
8585
}
8686

8787
let existing_manifest = read_manifest_from_disc(paths)?;

compiler-core/src/manifest.rs

Lines changed: 25 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -484,16 +484,23 @@ zzz = { version = "> 0.0.0" }
484484
pub struct Resolved {
485485
pub manifest: Manifest,
486486
pub added: Vec<(EcoString, Version)>,
487-
pub changed: Vec<(EcoString, Version, Version)>,
487+
pub changed: Vec<Changed>,
488488
pub removed: Vec<EcoString>,
489489
}
490490

491+
#[derive(Debug, PartialEq)]
492+
pub struct Changed {
493+
pub name: EcoString,
494+
pub old: Version,
495+
pub new: Version,
496+
}
497+
491498
impl Resolved {
492499
pub fn any_changes(&self) -> bool {
493500
!self.added.is_empty() || !self.changed.is_empty() || !self.removed.is_empty()
494501
}
495502

496-
pub fn add_added(manifest: Manifest) -> Resolved {
503+
pub fn all_added(manifest: Manifest) -> Resolved {
497504
let added = manifest
498505
.packages
499506
.iter()
@@ -531,7 +538,11 @@ impl Resolved {
531538
match old.remove(&new.name) {
532539
Some(old_version) if old_version == &new.version => (),
533540
Some(old_version) => {
534-
changed.push((new.name.clone(), old_version.clone(), new.version.clone()));
541+
changed.push(Changed {
542+
name: new.name.clone(),
543+
old: old_version.clone(),
544+
new: new.version.clone(),
545+
});
535546
}
536547
None => {
537548
added.push((new.name.clone(), new.version.clone()));
@@ -591,7 +602,7 @@ fn resolved_with_updated() {
591602

592603
let mut resolved = Resolved::with_updates(&old, new);
593604
resolved.added.sort();
594-
resolved.changed.sort();
605+
resolved.changed.sort_by(|a, b| a.name.cmp(&b.name));
595606
resolved.removed.sort();
596607

597608
assert_eq!(
@@ -605,16 +616,16 @@ fn resolved_with_updated() {
605616
assert_eq!(
606617
resolved.changed,
607618
vec![
608-
(
609-
"changed1".into(),
610-
Version::new(3, 0, 0),
611-
Version::new(5, 0, 0)
612-
),
613-
(
614-
"changed2".into(),
615-
Version::new(0, 1, 0),
616-
Version::new(3, 0, 0)
617-
),
619+
Changed {
620+
name: "changed1".into(),
621+
old: Version::new(3, 0, 0),
622+
new: Version::new(5, 0, 0)
623+
},
624+
Changed {
625+
name: "changed2".into(),
626+
old: Version::new(0, 1, 0),
627+
new: Version::new(3, 0, 0)
628+
},
618629
]
619630
);
620631

0 commit comments

Comments
 (0)