From c76cd42c1dca17e9d1ba891d74e230df20e8b01f Mon Sep 17 00:00:00 2001 From: Jerus Bot <171541392+jerus-bot@users.noreply.github.com> Date: Sun, 12 Oct 2025 07:19:53 +0000 Subject: [PATCH] chore: Release cull-gmail v0.0.7 --- CHANGELOG.md | 89 ++++++++++++++++++++++++++++++++++++++++++---------- Cargo.lock | 2 +- Cargo.toml | 2 +- PRLOG.md | 4 +-- README.md | 2 +- docs/lib.md | 2 +- 6 files changed, 78 insertions(+), 23 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 9e10ed7..9e43ae6 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -5,35 +5,89 @@ All notable changes to this project will be documented in this file. The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/) and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html). -## [0.0.6] - 2025-10-09 +## [0.0.7] - 2025-10-12 -Summary: Added[23], Changed[26], Chore[11], Fixed[7] +Summary: Added[23], Build[1], Changed[8], Chore[4], Documentation[3], Fixed[10] ### Added + - ✨ feat(processor): introduce processor builder + - ✨ feat(cli): add execute option to processor + - ✨ feat(processor): add execute flag for dry run + - ✨ feat(cli): add execute flag to run action + - ✨ feat(message_list): increase default max results + - ✨ feat(core): introduce message processor module + - ✨ feat(cli): add chrono crate as a dependency + - ✨ feat(config): add eol query function + - ✨ feat(processor): implement message deletion functionality + - ✨ feat(cli): implement trash and delete actions + - ✨ feat(processor): add trash and delete message functionality + - ✨ feat(processor): add label existence check before processing + - ✨ feat(config): add retention period to eol rule + - ✨ feat(config): add date calculation for EOL queries + - ✨ feat(cli): add option to skip trash actions + - ✨ feat(cli): add skip-delete flag to cli + - ✨ feat(cli): add skip action flags to cli + - ✨ feat(cli): add run command to execute rules + - ✨ feat(cli): add run cli command + - ✨ feat(cli): implement rule execution logic + - ✨ feat(eol_action): add parse method to EolAction + - ✨ feat(eol_rule): add describe function for eol rule + - ✨ feat(processor): implement rule processor + +### Fixed + + - 🐛 fix(utils): correct string elision boundary calculation + - 🐛 fix(utils): correct string elision boundary calculation + - 🐛 fix(error): add specific error for missing label in mailbox - add `LableNotFoundInMailbox` error to handle cases where a label is not found in the mailbox + - 🐛 fix(error): add error type for no query string calculated + - 🐛 fix(processor): handle None query in eol_query + - 🐛 fix(cli): correct count type in add_cli + - 🐛 fix(message_age): correct data type for message age count + - 🐛 fix(processor): execute delete messages + - 🐛 fix(processor): correct typo in error message + - 🐛 fix(error): correct spelling error in error message + +### Changed + + - ♻️ refactor(utils): remove unused `get_start_boundary` function + - ♻️ refactor(config): make EolRule public + - ♻️ refactor(trash): separate trash preparation and execution + - ♻️ refactor(trash): refactor trash command + - ♻️ refactor(eol_rule): simplify eol_rule tests + - ♻️ refactor(config): extract common logic to reduce duplication + - ♻️ refactor(cli): extract action execution to separate function + - ♻️ refactor(cli): inject config into run command + +## [0.0.6] - 2025-10-09 + +Summary: Added[23], Changed[26], Chore[12], Fixed[7] + +### Added + + - ✨ feat(cli): add delete subcommand + - ✨ feat(cli): add delete subcommand - ✨ feat(gh-release): add delete module - ✨ feat(delete): implement batch delete functionality - - ✨ feat(cli): add delete subcommand - - ✨ feat(cli): add delete subcommand + - ✨ feat(message_list): add label support + - ✨ feat(message): add label support to message listing - ✨ feat(rules_cli): implement add command for managing retention rules - ✨ feat(cli): add remove label subcommand - ✨ feat(cli): add list labels subcommand - ✨ feat(label): implement add label command - - ✨ feat(message_list): add label support - - ✨ feat(message): add label support to message listing - ✨ feat(config): add functionality to set action on rule - - ✨ feat(config_cli): implement action subcommand - ✨ feat(cli): add action subcommand + - ✨ feat(config_cli): implement action subcommand - ✨ feat(config): add remove label from rule - ✨ feat(config): add label functionality to rules - ✨ feat(error): add RuleNotFound error - ✨ feat(config): add get_rule function to retrieve existing rules - ✨ feat(cli): implement commands dispatching + - ✨ feat(label_cli): implement remove label subcommand - ✨ feat(label_cli): implement label listing subcommand + - ✨ feat(label): implement add label subcommand - ✨ feat(cli): implement label subcommand - ✨ feat(config): add cli config - introduce cli config with clap - add subcommand rules and label - - ✨ feat(label): implement add label subcommand - - ✨ feat(label_cli): implement remove label subcommand ### Fixed @@ -41,26 +95,26 @@ Summary: Added[23], Changed[26], Chore[11], Fixed[7] - 🐛 fix(eol_rule): correct grammar in rule descriptions - 🐛 fix(config): correct grammar in EolRule display - 🐛 fix(remove_cli): handle rule not found when removing label - - 🐛 fix(cli): correct output format for label list - 🐛 fix(label_cli): fix add label logic + - 🐛 fix(cli): correct output format for label list - 🐛 fix(label_cli): display labels by rule id ### Changed - ♻️ refactor(trash): encapsulate message list operations - ♻️ refactor(cli): improve delete command structure - - ♻️ refactor(delete): rename struct and methods for deleting messages - ♻️ refactor(trash): encapsulate message list - - ♻️ refactor(cli): move rm_cli to new directory + - ♻️ refactor(delete): rename struct and methods for deleting messages - ♻️ refactor(trash): streamline label handling in trash listing - ♻️ refactor(utils): improve config directory handling - - ♻️ refactor(cli): move rules_cli to config_cli - ♻️ refactor(labels): simplify error handling in labels module + - ♻️ refactor(trash): simplify error handling and label management + - ♻️ refactor(cli): move rm_cli to new directory + - ♻️ refactor(cli): move rules_cli to config_cli - ♻️ refactor(cli): rename label_cli module - ♻️ refactor(cli): rename action_cli module - ♻️ refactor(cli): rename trash_cli to cli - ♻️ refactor(cli): rename message_cli to cli - - ♻️ refactor(trash): simplify error handling and label management - ♻️ refactor(cli): move label_cli to cli directory - ♻️ refactor(cli): move config_cli to cli directory - ♻️ refactor(cli): move main.rs to cli folder - move main.rs to cli folder for better structure @@ -69,10 +123,10 @@ Summary: Added[23], Changed[26], Chore[11], Fixed[7] - ♻️ refactor(core): rename eol_cmd module to eol_action - ♻️ refactor(core): rename eol_cmd to eol_action - clarifies the file's purpose as defining actions related to EOL handling rather than just commands - ♻️ refactor(config): make EolRule fields public - - ♻️ refactor(cli): consolidate rules and labels under config subcommand + - ♻️ refactor(cli): restructure rules CLI - ♻️ refactor(cli): rename add_cli to rules_cli - ♻️ refactor(cli): rename rm_cli to rules_cli - - ♻️ refactor(cli): restructure rules CLI + - ♻️ refactor(cli): consolidate rules and labels under config subcommand ## [0.0.5] - 2025-10-08 @@ -247,7 +301,8 @@ Summary: Added[4], Build[3], Chore[21], Continuous Integration[4], Documentation - ✨ feat(vscode): add custom dictionary entry for ltex - ✨ feat(project): add initial Cargo.toml for cull-gmail tool -[Unreleased]: https://github.com/jerus-org/cull-gmail/compare/v0.0.5...HEAD +[Unreleased]: https://github.com/jerus-org/cull-gmail/compare/v0.0.6...HEAD +[0.0.6]: https://github.com/jerus-org/cull-gmail/compare/v0.0.5...v0.0.6 [0.0.5]: https://github.com/jerus-org/cull-gmail/compare/v0.0.4...v0.0.5 [0.0.4]: https://github.com/jerus-org/cull-gmail/compare/v0.0.3...v0.0.4 [0.0.3]: https://github.com/jerus-org/cull-gmail/compare/v0.0.2...v0.0.3 diff --git a/Cargo.lock b/Cargo.lock index 3a96fec..55cb3c8 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -258,7 +258,7 @@ checksum = "773648b94d0e5d620f64f280777445740e61fe701025087ec8b57f45c791888b" [[package]] name = "cull-gmail" -version = "0.0.6" +version = "0.0.7" dependencies = [ "chrono", "clap", diff --git a/Cargo.toml b/Cargo.toml index 0b82cde..77227a0 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -1,7 +1,7 @@ [package] name = "cull-gmail" description = "Cull emails from a gmail account using the gmail API" -version = "0.0.6" +version = "0.0.7" authors = ["Jeremiah Russell "] edition = "2024" rust-version = "1.87" diff --git a/PRLOG.md b/PRLOG.md index e5cf784..73697d6 100644 --- a/PRLOG.md +++ b/PRLOG.md @@ -5,7 +5,7 @@ All notable changes to this project will be documented in this file. The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/) and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html). -## [Unreleased] +## [0.0.7] - 2025-10-12 ### Added @@ -178,7 +178,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 [#60]: https://github.com/jerus-org/cull-gmail/pull/60 [#61]: https://github.com/jerus-org/cull-gmail/pull/61 [#62]: https://github.com/jerus-org/cull-gmail/pull/62 -[Unreleased]: https://github.com/jerus-org/cull-gmail/compare/v0.0.6...HEAD +[0.0.7]: https://github.com/jerus-org/cull-gmail/compare/v0.0.6...v0.0.7 [0.0.6]: https://github.com/jerus-org/cull-gmail/compare/v0.0.5...v0.0.6 [0.0.5]: https://github.com/jerus-org/cull-gmail/compare/v0.0.4...v0.0.5 [0.0.4]: https://github.com/jerus-org/cull-gmail/compare/v0.0.3...v0.0.4 diff --git a/README.md b/README.md index 9bc242d..cdc7456 100644 --- a/README.md +++ b/README.md @@ -55,7 +55,7 @@ Or by configuring the dependencies manually in `Cargo.toml`: ```toml [dependencies] -cull-gmail = "0.0.6" +cull-gmail = "0.0.7" ``` ## cull-gmail CLI diff --git a/docs/lib.md b/docs/lib.md index 6df828b..8f215d2 100644 --- a/docs/lib.md +++ b/docs/lib.md @@ -18,6 +18,6 @@ Or by configuring the dependencies manually in `Cargo.toml`: ```toml [dependencies] -cull-gmail = "0.0.6" +cull-gmail = "0.0.7" ```