Need some small dataclasses encapsulating core command output that will be passed to core_command_* callbacks.
[x] CommandHelp
[x] VersionInfo
CommandHelp
Encapsulates the end result of a command help request, such as:
The command or module name that the help is about
The command or module description
The usage line for the command
The help strings for each option/argument
Dict of CommandHelp objects for any subcommands
Whether the command or module exists (other attributes except name should be None)
This will shift the burden of performing all the string manipulation on the result of format_help() from the core_command_help callback in protocol modules over to Core.
VersionInfo
Provides current version, release date, and anything else version-related appropriate to ZeroBot. This will likely get more attributes in the future.
Need some small dataclasses encapsulating core command output that will be passed to
core_command_*
callbacks.CommandHelp
VersionInfo
CommandHelp
Encapsulates the end result of a command help request, such as:
CommandHelp
objects for any subcommandsNone
)This will shift the burden of performing all the string manipulation on the result of
format_help()
from thecore_command_help
callback in protocol modules over toCore
.VersionInfo
Provides current version, release date, and anything else version-related appropriate to ZeroBot. This will likely get more attributes in the future.