summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMarcel Müller <neikos@neikos.email>2023-04-29 17:52:20 +0200
committerMarcel Müller <neikos@neikos.email>2023-04-29 19:57:24 +0200
commit2148ed189b3664f5e9cf6456dd87058a9c309d57 (patch)
tree9e9c1bc52edb9a955d7365e4d03c6f8d14a5c290
parent3168eb4492b6bcf66a46f49b58031a7445f60810 (diff)
Rename release subcommand to generate-changelog
Signed-off-by: Marcel Müller <neikos@neikos.email>
-rw-r--r--README.md4
-rw-r--r--src/cli.rs2
-rw-r--r--src/command/generate_changelog_command.rs (renamed from src/command/release_command.rs)6
-rw-r--r--src/command/mod.rs6
-rw-r--r--src/main.rs14
-rw-r--r--tests/no_config_error.rs4
-rw-r--r--tests/no_repo_error.rs4
-rw-r--r--tests/release_command.rs24
8 files changed, 36 insertions, 28 deletions
diff --git a/README.md b/README.md
index eabf379..ced8ff0 100644
--- a/README.md
+++ b/README.md
@@ -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.
diff --git a/src/cli.rs b/src/cli.rs
index 806b970..3dcf923 100644
--- a/src/cli.rs
+++ b/src/cli.rs
@@ -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();