Releases: DLMousey/sarcasm-bot
[BETA] Sarcasm Bot 1.0
This release includes a large overhaul of sarcasm bot's general structure, moving things into more modules and making a jump from discord.js version 11 to 14, which has facilitated re-writes of many key features.
➕ Additions
- Added an audit log function, powered by a sqlite database running in the container. This command (typically
!audit <sarcasm-bot-message-id>) allows you to see which user's command resulted in a sarcasm bot message along with the original input. Unfortunately this feature has been required after reports of sarcasm bot being used for abuse in the wild.
PLEASE NOTE the sqlite database in the container is stored in /tmp meaning it'll be cleared after 10 days on linux based hosts, and will also be cleared and re-created if the container restarts. Support for external databases will be coming in a future release.
🛠️ Changes
- Temporarily dropped support for lesser-known commands, namely
!b,!clapand the original!mock @userwhich has fallen out of favour after the introduction of mocking by id and inline mocks. These will be fixed in a future update but since they're just fun extras they have been dropped to preserve release velocity.
Obligatory pre-release warning
This release has been tested quite extensively locally but it cannot be guaranteed that other functionality has been broken.
Add alternateCase method, improve code DRYness
What's Changed
- convenience function for alternate case by @grantmwilliams in #20
New Contributors
- @grantmwilliams made their first contribution in #20
Full Changelog: 0.4.0...0.4.1
Inline Mockery
What's Changed
- Inline mockery by @liamjcooper in #19
New Contributors
- @liamjcooper made their first contribution in #19
Full Changelog: 0.3.0...0.4.0
Add mockSingle command
This release adds the ability to pass a specific message ID to be mocked rather than mentioning a user and retrieving the last message they typed.
What's Changed
- Lend imaginebot some of your namespace by @amazingproducer in #13
- Add mock single command by @DLMousey in #14
New Contributors
- @amazingproducer made their first contribution in #13
- @DLMousey made their first contribution in #14
Full Changelog: 0.2.0...0.3.0
Add rate limiting support
This release adds support for basic rate limiting - if a user is making requests too quickly the bot will silently dump them until enough time has passed between calls.
The default limit is 3 seconds between calls, this can be customised by setting the BOT_RATELIMIT environment variable when you run the bot like so;
docker run -d -e BOT_RATELIMIT=5 -e BOT_TOKEN=yourAuthToken -e BOT_PREFIX=! docker.pkg.github.com/dlmousey/sarcasm-bot/sarcasm-bot
Fix invalid user IDs check
If a URL to a message was provided instead of a mention, the getUserId method would still return what it thought was a user id but was in fact a message id. A bodge has been added that'll throw an error if the parsed ID is greater than 18 characters in length.
Being able to mock a specific message would be a neat feature though so this will be added soon:tm:
Revert breaking changes
Reverts a PR that significantly altered many parts of the core logic that's made the bot unstable
Help Command
➕ Added
- Help command at
!help, lists of commands - Invalid command handler
Test Release
Something funky going on with github actions not running workflow on release.
Nothing to see here, just testing - move along
Docker Support
This release (the only current release) adds Docker support, see the readme for more info.