Releases: modmail-dev/Modmail
Releases · modmail-dev/Modmail
Bug Fix
Stable Release
Added
- Ability to change permission levels of individual commands.
- See
?permissions overridefor more information.
- See
thread_move_notifyandthread_move_responseto notify recipients if a thread is moved. (Thanks to Flufster PR#360)- IDs of messages sent to Modmail are now viewable. (Thanks to Flufster PR#360)
Fixed
?help <some sub command>, will returnPerhaps you meant: <some sub command>, now it's fixed.- For example,
?help addused to returnPerhaps you meant: add, now it wouldn't do this.
- For example,
- Aliases and Permissions command names are always saved lowercase now.
- An improved Dockerfile.
Internal
- Use regex to parse Changes, Added, Fixed, etc and description.
- Adds
PermissionLevel.INVALIDwhen commands don't have a permission level.
Bug Fix for Windows Users
Fixed
- An issue when reading
config_help.jsonfor Windows users due to an encoding problem.
Major Release
Breaking
disable_recipient_thread_closeis removed, a new configuration variablerecipient_thread_closereplaces it which defaults to False.- Truthy and falsy values for binary configuration variables are now interpreted respectfully.
LOG_URL_PREFIXcannot be set to "NONE" to specify no additional path in the future, "/" is the new method.
Added
?sfw, mark a thread as "safe for work", undos?nsfw.- New config variable,
thread_auto_close_silently, when set to a truthy value, no message will be sent when thread is auto-closed. - New configuration variable
thread_self_closable_creation_footer— the footer whenrecipient_thread_closeis enabled. - Added a minimalistic version of requirements.txt (named requirements.min.txt) that contains only the absolute minimum of Modmail.
- For users having trouble with pipenv or any other reason.
- Multi-step alias, see
?help alias add. Public beta testing, might be unstable. - Misc commands without cogs are now displayed in
?help. ?helpworks for alias and snippets.?config help <config-name>shows a help embed for the configuration.- Support setting permissions for sub commands.
- Support numbers (1-5) as substitutes for Permission Level REGULAR - OWNER in
?permssub commands.
Changes
thread_auto_close_responsehas a configurable variable{timeout}.?snippetis now the default command name instead of?snippets(?snippetsis still usable). This is to make this consistent with?alias/?aliases.coloramais no longer a necessity, this is due to some unsupported OS.- Changelog command can now take a version argument to jump straight to specified version.
?plugin enabledresults are now sorted alphabetically.?plugin registryresults are now sorted alphabetically, helps user find plugins more easily.?plugin registry page-numberplugin registry can specify a page number for quick access.- A reworked interface for
?snippetand?alias.- Add an
?snippet raw <name>command for viewing the raw content of a snippet (escaped markdown). - Add an
?alias raw <name>command for viewing the raw content of a alias (escaped markdown).
- Add an
- The placeholder channel for the streaming status changed to https://www.twitch.tv/discordmodmail/.
- Removed unclear
rmalias for someremovecommands. - Paginate
?config options. - All users configured with a permission level greater than REGULAR has access to the main Modmail category.
- Category overrides also changes when a level is removed or added to a user or role.
@everyoneis now accepted for?perms add.
Fixes
?notifyno longer carries over to the next thread.discord.NotFounderrors foron_raw_reaction_add.mod_typingand(user_typinguser_typingis now by-design to show) will no longer show when user is blocked.- Better
?blockusage message. - Resolves errors when message was sent by mods after thread is closed somehow.
- Recipient join/leave server messages are limited to only the guild set by
GUILD_ID. - When creating snippets and aliases, it now checks if another snippets/aliases with the same name exists.
- Was looking for
config.jsonin the wrong directory.
Internal
- Removed supporting code for GitHub interaction.
- All default config values moved to
core/config.py. config.cacheis no longer accessible, useconfig['key']for getting,config['key'] = valuefor setting,config.remove('key')for removing.- Dynamic attribute for configs are removed, must use
config['key']orconfig.get('key'). - Removed helper functions
info()anderror()for formatting logging, it's formatted automatically now. - Bumped discord.py version to 1.2.3.
- Use discord tasks for metadata loop.
- More debug based logging.
- Reduce redundancies in
?permssub commands. - paginator been split into
EmbedPaginatorSessionandMessagePaginatorSession, both subclassingPaginatorSession.
Alias and Snippet Edit
Added
- New commands,
?alias edit <name> <target>and?snippets edit <name> <target>.- They can be used to edit aliases and snippets respectively.
Blocked Whitelist
Added
- New command,
?blocked whitelist <user>, this command prevents users from getting blocked by any means.
Changed
- Removed some aliases from
?oauth.
Bug Fix
Major Release
Added
- Sponsors command that will list sponsors.
- An alert will now be sent to the log channel if a thread channel fails to create. This could be due to a variety of problems such as insufficient permissions or the category channel limit is met.
- Threads will close automatically after some time when
thread_auto_closeis set. - Custom closing message can be set with
thread_auto_close_response.
Breaking Changes
- Removed autoupdate functionality and the
?updatecommand in favour of the Pull app.
Read more about updating your bot here
Changed
- Channel names now can contain unicode characters.
- Debug logs are now located in a unique file for each bot. (Internal change)
- Default cogs always appear first in the help command now.
Fixed
- Editing notes now works, minor bug with edit command is fixed.
- Bug in the
?oauthcommand where the response message fails to send when an ID is provided. - Plugin requirement installation now works in virtual environments
Bug Fix
Support Branch in Plugin Add
Added
Branch support for ?plugin add and in registry. Typically for developers.