Changelog¶
All notable changes to this project will be documented in this file.
The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.
Unreleased¶
Breaking¶
- Bot now requires a
RELAY_CHANNEL_IDconfiguration variable. (#53)- This is where tickets with users will be relayed.
- At a later point in time, this will be additionally included in a configuration command.
Added¶
- Threads system (#53)
- Messages can now be relayed between a user and a server.
- NOTE: There is not a database yet, so none of these messages are stored.
- Added Dispatcher system, although it is not hooked into important features like thread creation yet. (#71)
- Officially support python 3.10 (#119)
- Officially support windows and macos (#121)
- Completely rewrote configuration system (#75)
Changed¶
- Embedified the meta commands so they have a nicer UI (#78)
- Improved the logging system to allow trace logging and a specific logging directory to be configured. (#118)
0.2.0 - 2021-09-29¶
Added¶
- Interaction Paginator that uses discord buttons (#50)
- docker-compose.yml (#13)
- Running the bot after configuring the env vars is now as simple as
docker-compose up
- Running the bot after configuring the env vars is now as simple as
- Automatic docker image creation:
ghcr.io/discord-modmail/modmail(#19) - Dockerfile support for all supported hosting providers. (#58)
- Errors no longer happen silently and notify the user when they make a mistake. (#77)
Changed¶
- Refactored bot creation and bot running (#56)
- Running the bot is still the same method, but it loads extensions and plugins now.
bot.start()can also be used if already in a running event loop. Keep in mind using it will require handling loop errors, as run() does this automatically.
Internal¶
- Code style: two blank lines after imports instead of one. (#70)
0.1.0 - 2021-08-13¶
Added¶
- Bot modes to determine behavior. Multiple can be applied at once. (#43)
PROD: the default mode, no dev extensions or dev plugins loadDEVELOP: the bot developer mode, most useful for people adding features to modmail
- Enables the extension_manager extension.
PLUGIN_DEV: the plugin developer mode, useful for enabling plugin specific features- This is not used yet.
- Extension loading system (#43)
- scans for extensions in the
modmail/extensionsfolder and loads them if they are of the right format. - all extensions must be loadable as a module, which means they must have
__init__.pyfiles in their directories.
- scans for extensions in the
- Plugin loading system (#43)
- scans for plugins in the
modmail/pluginsfolder and loads them. - Unlike extensions, plugins and their respective folders do not need to have
__init__.pyfiles and are allowed to be symlinks.
- scans for plugins in the
- Extension management commands (#43)
- load, reload, unload, list, refresh commands for dealing with extensions
- Run the
extcommand for more details when bot is inDEVELOPmode.
- Plugin management commands (#43)
- load, reload, unload, list, refresh commands for dealing with plugins
- Run the
pluginscommand for more details.
- Extension metadata (#43)
- used to determine if a cog should load or not depending on the bot mode
- Plugin helper file (#43)
modmail/plugin_helpers.pycontains several helpers for making pluginsPluginCogModmailBot, imported frommodmail.botModmailLogger, imported frommodmail.log
- Meta Cog (#43)
- NOTE: The commands in this cog are not stabilized yet and should not be relied upon.
- Prefix command for getting the set prefix. Most useful by mentioning the bot.
- Uptime command which tells the end user how long the bot has been online.
- Ping command to see the bot latency.
- Guide on how to contribute to modmail, see [CONTRIBUTING.md]
- Start a Changelog
Fixed¶
- Make the bot
http_sessionwithin an event loop.