From 098d6c079379e88c13d77685a5eee4a3be34df67 Mon Sep 17 00:00:00 2001 From: Paul Delafosse Date: Sat, 24 Oct 2020 22:55:05 +0200 Subject: [PATCH] refactor(changelog): remove unused writter mode: Append & Replace --- src/bin/cog.rs | 4 ++-- src/conventional/changelog.rs | 32 ++------------------------------ src/lib.rs | 4 +--- 3 files changed, 5 insertions(+), 35 deletions(-) diff --git a/src/bin/cog.rs b/src/bin/cog.rs index c64097fd..42a72318 100644 --- a/src/bin/cog.rs +++ b/src/bin/cog.rs @@ -5,8 +5,8 @@ use cocogitto::conventional::commit::CommitType; use cocogitto::conventional::version::VersionIncrement; use cocogitto::git::hook::HookKind; use cocogitto::log::filter::{CommitFilter, CommitFilters}; +use cocogitto::log::output::Output; use cocogitto::CocoGitto; -use cocogitto::{conventional::changelog::WriterMode, log::output::Output}; use std::process::exit; const APP_SETTINGS: &[AppSettings] = &[ @@ -60,7 +60,7 @@ fn main() -> Result<()> { let pre = subcommand.value_of("pre"); // TODO mode to cli - cocogitto.create_version(increment, WriterMode::Prepend, pre)? + cocogitto.create_version(increment, pre)? } VERIFY => { let subcommand = matches.subcommand_matches(VERIFY).unwrap(); diff --git a/src/conventional/changelog.rs b/src/conventional/changelog.rs index 800a4e15..5ec2c8f2 100644 --- a/src/conventional/changelog.rs +++ b/src/conventional/changelog.rs @@ -1,4 +1,3 @@ -use self::WriterMode::*; use crate::conventional::commit::Commit; use crate::{OidOf, COMMITS_METADATA}; use anyhow::Result; @@ -6,12 +5,6 @@ use itertools::Itertools; use std::fs; use std::path::PathBuf; -pub enum WriterMode { - Replace, - Prepend, - Append, -} - pub(crate) struct Changelog { pub from: OidOf, pub to: OidOf, @@ -23,27 +16,14 @@ pub(crate) struct Changelog { pub(crate) struct ChangelogWriter { pub(crate) changelog: Changelog, pub(crate) path: PathBuf, - pub(crate) mode: WriterMode, } impl ChangelogWriter { - pub(crate) fn write(&mut self) -> Result<()> { - match &self.mode { - Append => self.insert(), - Prepend => self.insert(), - Replace => self.replace(), - } - } - - fn insert(&mut self) -> Result<()> { + pub fn write(&mut self) -> Result<()> { let mut changelog_content = fs::read_to_string(&self.path).unwrap_or_else(|_err| Changelog::changelog_template()); - let separator_idx = match self.mode { - Append => changelog_content.rfind("- - -"), - Prepend => changelog_content.find("- - -"), - _ => unreachable!(), - }; + let separator_idx = changelog_content.find("- - -"); if let Some(idx) = separator_idx { let markdown_changelog = self.changelog.markdown(false); @@ -59,14 +39,6 @@ impl ChangelogWriter { )) } } - - fn replace(&mut self) -> Result<()> { - let mut content = Changelog::default_header(); - content.push_str(&self.changelog.markdown(false)); - content.push_str(Changelog::default_footer().as_str()); - - fs::write(&self.path, content).map_err(|err| anyhow!(err)) - } } impl Changelog { diff --git a/src/lib.rs b/src/lib.rs index 18493ce6..b2b6bb6f 100644 --- a/src/lib.rs +++ b/src/lib.rs @@ -19,7 +19,7 @@ use crate::settings::{HookType, Settings}; use anyhow::{Context, Result}; use chrono::Utc; use colored::*; -use conventional::changelog::{Changelog, ChangelogWriter, WriterMode}; +use conventional::changelog::{Changelog, ChangelogWriter}; use conventional::commit::Commit; use conventional::commit::{CommitConfig, CommitMessage, CommitType}; use conventional::version::{parse_pre_release, VersionIncrement}; @@ -331,7 +331,6 @@ impl CocoGitto { pub fn create_version( &mut self, increment: VersionIncrement, - mode: WriterMode, pre_release: Option<&str>, ) -> Result<()> { let statuses = self.repository.get_statuses()?; @@ -387,7 +386,6 @@ impl CocoGitto { let mut writter = ChangelogWriter { changelog, path: self.changelog_path.clone(), - mode, }; writter