diff options
author | Marcel Müller <neikos@neikos.email> | 2023-04-29 17:52:20 +0200 |
---|---|---|
committer | Marcel Müller <neikos@neikos.email> | 2023-04-29 19:57:24 +0200 |
commit | 2148ed189b3664f5e9cf6456dd87058a9c309d57 (patch) | |
tree | 9e9c1bc52edb9a955d7365e4d03c6f8d14a5c290 | |
parent | 3168eb4492b6bcf66a46f49b58031a7445f60810 (diff) |
Rename release subcommand to generate-changelog
Signed-off-by: Marcel Müller <neikos@neikos.email>
-rw-r--r-- | README.md | 4 | ||||
-rw-r--r-- | src/cli.rs | 2 | ||||
-rw-r--r-- | src/command/generate_changelog_command.rs (renamed from src/command/release_command.rs) | 6 | ||||
-rw-r--r-- | src/command/mod.rs | 6 | ||||
-rw-r--r-- | src/main.rs | 14 | ||||
-rw-r--r-- | tests/no_config_error.rs | 4 | ||||
-rw-r--r-- | tests/no_repo_error.rs | 4 | ||||
-rw-r--r-- | tests/release_command.rs | 24 |
8 files changed, 36 insertions, 28 deletions
@@ -52,10 +52,10 @@ will take all unreleased changelogs and move them to `/.changelogs/0.1.0` (if "0.1.0" is your next minor version - you can of course also specify an explicit version with the `create-release` subcommand). -### cargo changelog release +### cargo changelog generate-changelog After that you can create your final `CHANGELOG.md` file using -`cargo-changelog release`. +`cargo-changelog generate-changelog` This will take all released changelog entries and generate a new file, overwriting the old. @@ -77,7 +77,7 @@ pub enum Command { CreateRelease(VersionSpec), /// Generate the changelog file from the fragments marked for release - Release { + GenerateChangelog { /// Also write "unreleased" stuff to the CHANGELOG.md file #[clap(long)] all: bool, diff --git a/src/command/release_command.rs b/src/command/generate_changelog_command.rs index f9b5f80..1de3bdd 100644 --- a/src/command/release_command.rs +++ b/src/command/generate_changelog_command.rs @@ -4,13 +4,13 @@ use std::{collections::HashMap, io::BufReader, path::Path}; use crate::{config::Configuration, error::Error, fragment::Fragment}; #[derive(typed_builder::TypedBuilder)] -pub struct ReleaseCommand { +pub struct GenerateChangelogCommand { repository: git2::Repository, all: bool, allow_dirty: bool, } -impl std::fmt::Debug for ReleaseCommand { +impl std::fmt::Debug for GenerateChangelogCommand { fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result { f.debug_struct("ReleaseCommand") .field("repository", &self.repository.workdir()) @@ -20,7 +20,7 @@ impl std::fmt::Debug for ReleaseCommand { } } -impl crate::command::Command for ReleaseCommand { +impl crate::command::Command for GenerateChangelogCommand { fn execute(self, workdir: &Path, config: &Configuration) -> Result<(), Error> { if crate::util::repo_is_dirty(&self.repository) && !self.allow_dirty { return Err(Error::GitRepoDirty); diff --git a/src/command/mod.rs b/src/command/mod.rs index e2419dc..a0a2269 100644 --- a/src/command/mod.rs +++ b/src/command/mod.rs @@ -10,9 +10,9 @@ pub use self::add_command::AddCommand; mod create_release_command; pub use self::create_release_command::CreateReleaseCommand; -mod release_command; -pub use self::release_command::ReleaseCommand; -pub use self::release_command::VersionData; +mod generate_changelog_command; +pub use self::generate_changelog_command::GenerateChangelogCommand; +pub use self::generate_changelog_command::VersionData; mod show; pub use self::show::Show; diff --git a/src/main.rs b/src/main.rs index 7f0f2ef..eeaa847 100644 --- a/src/main.rs +++ b/src/main.rs @@ -82,12 +82,14 @@ fn main() -> miette::Result<()> { .build() .execute(&repo_workdir_path, &config)?, - Command::Release { all, allow_dirty } => crate::command::ReleaseCommand::builder() - .repository(repository) - .all(all) - .allow_dirty(allow_dirty) - .build() - .execute(&repo_workdir_path, &config)?, + Command::GenerateChangelog { all, allow_dirty } => { + crate::command::GenerateChangelogCommand::builder() + .repository(repository) + .all(all) + .allow_dirty(allow_dirty) + .build() + .execute(&repo_workdir_path, &config)? + } Command::Show { format, range } => crate::command::Show::builder() .format(format) diff --git a/tests/no_config_error.rs b/tests/no_config_error.rs index e77900d..e950c7b 100644 --- a/tests/no_config_error.rs +++ b/tests/no_config_error.rs @@ -12,7 +12,7 @@ fn no_configuration_file_errors() { Command::cargo_bin("cargo-changelog") .unwrap() - .args(["release"]) // we need some subcommand, otherwise nothing happens + .args(["generate-changelog"]) // we need some subcommand, otherwise nothing happens .current_dir(&temp_dir) .assert() .failure(); @@ -28,7 +28,7 @@ fn no_configuration_file_errors_with_error_message() { Command::cargo_bin("cargo-changelog") .unwrap() - .args(["release"]) // we need some subcommand, otherwise nothing happens + .args(["generate-changelog"]) // we need some subcommand, otherwise nothing happens .current_dir(&temp_dir) .assert() .stderr(predicates::str::contains( diff --git a/tests/no_repo_error.rs b/tests/no_repo_error.rs index 5337239..f12e250 100644 --- a/tests/no_repo_error.rs +++ b/tests/no_repo_error.rs @@ -9,7 +9,7 @@ fn no_repo_errors() { Command::cargo_bin("cargo-changelog") .unwrap() - .args(["release"]) // we need some subcommand, otherwise nothing happens + .args(["generate-changelog"]) // we need some subcommand, otherwise nothing happens .current_dir(&temp_dir) .assert() .failure(); @@ -24,7 +24,7 @@ fn no_repo_errors_with_no_repo_error_message() { Command::cargo_bin("cargo-changelog") .unwrap() - .args(["release"]) // we need some subcommand, otherwise nothing happens + .args(["generate-changelog"]) // we need some subcommand, otherwise nothing happens .current_dir(&temp_dir) .assert() .stderr(predicates::str::contains("could not find repository")); diff --git a/tests/release_command.rs b/tests/release_command.rs index 7fbb413..5583e16 100644 --- a/tests/release_command.rs +++ b/tests/release_command.rs @@ -5,13 +5,13 @@ use assert_cmd::Command; mod common; #[test] -fn release_command_works() { +fn generate_changelog_command_works() { let temp_dir = tempfile::Builder::new() .prefix("cargo-changelog") .tempdir() .unwrap(); self::common::init_git(temp_dir.path()); - self::common::init_cargo(temp_dir.path(), "release_command_works"); + self::common::init_cargo(temp_dir.path(), "generate_changelog_command_works"); self::common::init_cargo_changelog(temp_dir.path()); self::common::cargo_changelog_add(temp_dir.path()) @@ -37,7 +37,7 @@ fn release_command_works() { // call `cargo-changelog create-release` Command::cargo_bin("cargo-changelog") .unwrap() - .args(["release"]) + .args(["generate-changelog"]) .current_dir(&temp_dir) .assert() .success(); @@ -53,13 +53,16 @@ fn release_command_works() { } #[test] -fn release_command_works_for_alpha_release() { +fn generate_changelog_command_works_for_alpha_release() { let temp_dir = tempfile::Builder::new() .prefix("cargo-changelog") .tempdir() .unwrap(); self::common::init_git(temp_dir.path()); - self::common::init_cargo(temp_dir.path(), "release_command_works_for_alpha_release"); + self::common::init_cargo( + temp_dir.path(), + "generate_changelog_command_works_for_alpha_release", + ); self::common::init_cargo_changelog(temp_dir.path()); self::common::cargo_changelog_add(temp_dir.path()) @@ -109,7 +112,7 @@ fn release_command_works_for_alpha_release() { // call `cargo-changelog create-release` Command::cargo_bin("cargo-changelog") .unwrap() - .args(["release"]) + .args(["generate-changelog"]) .current_dir(&temp_dir) .assert() .success(); @@ -129,13 +132,16 @@ fn release_command_works_for_alpha_release() { } #[test] -fn release_command_works_with_suffix() { +fn generate_changelog_command_works_with_suffix() { let temp_dir = tempfile::Builder::new() .prefix("cargo-changelog") .tempdir() .unwrap(); self::common::init_git(temp_dir.path()); - self::common::init_cargo(temp_dir.path(), "release_command_works_with_suffix"); + self::common::init_cargo( + temp_dir.path(), + "generate_changelog_command_works_with_suffix", + ); self::common::init_cargo_changelog(temp_dir.path()); self::common::cargo_changelog_add(temp_dir.path()) @@ -197,7 +203,7 @@ fn release_command_works_with_suffix() { Command::cargo_bin("cargo-changelog") .unwrap() - .args(["release"]) + .args(["generate-changelog"]) .current_dir(&temp_dir) .assert() .success(); |