Unified · Split
| @@ -5,7 +5,6 @@ use crate::{ · 4 unmodified lines | |||
| 5 | changelog::write::{Components, Linkables}, | 5 | changelog::write::{Components, Linkables}, |
| 6 | command::changelog::Options, | 6 | command::changelog::Options, |
| 7 | git, | 7 | git, |
| 8 | traverse::dependency, | ||
| 9 | utils::{package_by_name, will}, | 8 | utils::{package_by_name, will}, |
| 10 | version::BumpSpec, | 9 | version::BumpSpec, |
| 11 | ChangeLog, | 10 | ChangeLog, |
| @@ -28,7 +27,7 @@ pub fn changelog(opts: Options, crates: Vec<String>) -> anyhow::Result<()> { · 16 unmodified lines | |||
| 28 | let bump_only_when_needed = true; | 27 | let bump_only_when_needed = true; |
| 29 | crate::traverse::dependencies(&ctx, add_production_crates, bump_only_when_needed)? | 28 | crate::traverse::dependencies(&ctx, add_production_crates, bump_only_when_needed)? |
| 30 | .into_iter() | 29 | .into_iter() |
| 31 | .filter_map(|d| matches!(d.mode, dependency::Mode::ToBePublished { .. }).then(|| d.package)) | 30 | .filter_map(|d| d.mode.has_version_adjustment().then(|| d.package)) |
| 32 | .collect() | 31 | .collect() |
| 33 | } else { | 32 | } else { |
| 34 | ctx.crate_names | 33 | ctx.crate_names |
| @@ -56,6 +56,19 @@ pub mod dependency { · 55 unmodified lines | |||
| 56 | /// One of our dependencies will see a version adjustment, which we must update in our manifest | 56 | /// One of our dependencies will see a version adjustment, which we must update in our manifest |
| 57 | ManifestNeedsUpdate, | 57 | ManifestNeedsUpdate, |
| 58 | } | 58 | } |
| 59 | |||
| 60 | impl<'meta> Mode<'meta> { | ||
| 61 | pub fn has_version_adjustment(&self) -> bool { | ||
| 62 | matches!( | ||
| 63 | self, | ||
| 64 | Mode::ToBePublished { .. } | ||
| 65 | | Mode::Skipped { | ||
| 66 | adjustment: Some(_), | ||
| 67 | .. | ||
| 68 | } | ||
| 69 | ) | ||
| 70 | } | ||
| 71 | } | ||
| 59 | } | 72 | } |
| 60 | 73 | ||
| 61 | #[derive(Debug)] | 74 | #[derive(Debug)] |