From d84136003198d998e44d9a6b5a80596bf4aafab1 Mon Sep 17 00:00:00 2001 From: cottongin Date: Tue, 25 Feb 2025 03:09:20 -0800 Subject: [PATCH] v1.2.1: Fix redundant admin text in help command output --- CHANGELOG.md | 9 ++++++++- VERSION | 2 +- main.py | 19 ++++++++++--------- 3 files changed, 19 insertions(+), 11 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 522814b..3333051 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -7,6 +7,12 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 ## [Unreleased] +## [1.2.1] - 2024-07-10 + +### Fixed +- Removed redundant "(admin only)" text from help command output when admin commands are already grouped under the Admin section +- Improved help command to only show "(admin only)" when a specific admin command is queried + ## [1.2.0] - 2024-07-01 ### Added @@ -75,7 +81,8 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 - Multi-bot support - Configuration via YAML files -[Unreleased]: https://code.cottongin.xyz/cottongin/Icecast-metadata-IRC-announcer/compare/v1.2.0...HEAD +[Unreleased]: https://code.cottongin.xyz/cottongin/Icecast-metadata-IRC-announcer/compare/v1.2.1...HEAD +[1.2.1]: https://code.cottongin.xyz/cottongin/Icecast-metadata-IRC-announcer/compare/v1.2.0...v1.2.1 [1.2.0]: https://code.cottongin.xyz/cottongin/Icecast-metadata-IRC-announcer/compare/v1.0.1...v1.2.0 [1.0.1]: https://code.cottongin.xyz/cottongin/Icecast-metadata-IRC-announcer/compare/v1.0.0...v1.0.1 [1.0.0]: https://code.cottongin.xyz/cottongin/Icecast-metadata-IRC-announcer/releases/tag/v1.0.0 \ No newline at end of file diff --git a/VERSION b/VERSION index 26aaba0..6085e94 100644 --- a/VERSION +++ b/VERSION @@ -1 +1 @@ -1.2.0 +1.2.1 diff --git a/main.py b/main.py index d8f2ae8..ea0a449 100755 --- a/main.py +++ b/main.py @@ -490,8 +490,9 @@ class IcecastBot: if handler and handler.__doc__: # Get the first line of the docstring first_line = handler.__doc__.strip().split('\n')[0] - # Format it using the template and add (admin only) if needed + # Extract the description part after the colon desc = first_line.split(':', 1)[1].strip() + # Add (admin only) for specific command queries if pattern in self.admin_commands: desc = f"{desc} (admin only)" help_text = self.help_specific_format.format( @@ -559,7 +560,7 @@ class IcecastBot: @self.bot.on_message(create_command_pattern('restart')) @self.admin_required async def restart_bot(message): - """!restart: Restart the bot (admin only) + """!restart: Restart the bot Gracefully shuts down the bot and signals the bot.sh script to restart it. This ensures a clean restart. @@ -581,7 +582,7 @@ class IcecastBot: @self.bot.on_message(create_command_pattern('quit')) @self.admin_required async def quit_bot(message): - """!quit: Shutdown the bot (admin only) + """!quit: Shutdown the bot Gracefully shuts down the bot and exits without restarting. @@ -600,7 +601,7 @@ class IcecastBot: @self.bot.on_message(create_command_pattern('reconnect')) @self.admin_required async def reconnect_stream(message): - """!reconnect: Reconnect to the stream (admin only) + """!reconnect: Reconnect to the stream Attempts to reconnect to the stream and verifies the connection. Reports success or failure back to the channel. @@ -616,7 +617,7 @@ class IcecastBot: @self.bot.on_message(create_command_pattern('stop')) @self.admin_required async def stop_monitoring(message): - """!stop: Stop stream monitoring (admin only) + """!stop: Stop stream monitoring Stops monitoring the stream for metadata changes. The bot remains connected to IRC. @@ -632,7 +633,7 @@ class IcecastBot: @self.bot.on_message(create_command_pattern('start')) @self.admin_required async def start_monitoring(message): - """!start: Start stream monitoring (admin only) + """!start: Start stream monitoring Starts monitoring the stream for metadata changes. Will announce new songs in the channel. @@ -648,7 +649,7 @@ class IcecastBot: @self.bot.on_message(create_command_pattern('quiet')) @self.admin_required async def quiet_bot(message): - """!quiet: Disable song announcements (admin only) + """!quiet: Disable song announcements Continues monitoring the stream for metadata changes, but stops announcing songs in the channel. @@ -665,7 +666,7 @@ class IcecastBot: @self.bot.on_message(create_command_pattern('unquiet')) @self.admin_required async def unquiet_bot(message): - """!unquiet: Enable song announcements (admin only) + """!unquiet: Enable song announcements Resumes announcing songs in the channel. The bot must already be monitoring the stream. @@ -1201,7 +1202,7 @@ class IcecastBot: if handler and handler.__doc__: # Extract the first line of the docstring first_line = handler.__doc__.strip().split('\n')[0] - # Remove the command prefix and colon + # Extract the description part after the colon desc = first_line.split(':', 1)[1].strip() commands.append(section_config['format'].format(