Core
Fixed a typo in the docstring for interaction check
The config.yml path is now set in the .env file
The default.env file now defaults debug to 0
A config item was added to change the owner of the bot
The CI was refactored to be in one file
New CI was added to auto close certain dependabot PRs
A new central file to do moderation actions was added, to improve consistency
Slash command logging was improved greatly
TS will now DM people warnings who message the bot, clearly stating that all messages are logged
Application
New config item to auto reject apps after inactivity for X days was add
Automod
Replaces several functions from protect and who
Automod was rewritten to be more powerful
You can now mute with Automod
You can now do a silent punishment with Automod
Regex filters were fixed
Bot
The startup time is now a dynamic timestamp instead of text
Burn
Command now works on reply
Correct
Now has a clean error when the corrected message will exceed length limits
Debug
New debug commands have been added
Duck
Improve the random chance function
Ducks doing a timeout is now a config option
Extension
Adds a command to enable all disabled extensions in the current guild
Factoid
No more prefix command for factoid all
Factoid search output was improved and sped up a bit
Make the factoid json file be named the invoking factoid name
Adds a new /factoid call command to call factoids via slash command
Improves the messaging on factoid forget to clearly show what aliases will be deleted
Fixes a bug where factoid all didn't work if there are no factoids in a guild
Hangman
Hangman start is now a slash command
Hangman no longer breaks on caps
The person who starts hangman cannot play
The owner of the game can add more guesses
The game now shows what letters have been guessed
The help command on the hangman game was updated
Hello
Was turned into a slash command
HTD
A rouge print statement was removed from the code
IRC
IRC now uses SSL to login
IRC messages are now processed by automod
Joke
The joke category filter has been improved
Logger
Fixes a typo in the log for missing file reuploads
Moderator
Replaces several functions from protect and who
Ban, unban, kick, mute, unmute, warn, and warning clear were all made into slash commands
An individual unwarn command was added
Modlog
Logs all ban and unban actions in a given channel
Stores ban time, reason, moderator, etc into the database
Modmail
A new command to list users banned from modmail was added
The alias command shows a clear message if no aliases are defined
Self/contact success commands now link to the new thread
Fixes sending files to the user
News
Is now a slash command
Filters out undesirables news.google.com links
Notes
Replaces several functions from protect and who
This is now the source of all commands to read and edit notes
Notes all was dramatically rewritten
Permission issues with notes were fixed
Paste
The UI of paste was slightly rewritten
Paste has less of a chance of deleting the original message if the pasting action failed
Purge
Replaces several functions from protect and who
Purge amount and duration were combined into one command
Purge is now a slash command
Better information output and erroring from purge
Report
Allows users to report information, which will be sent into a given channel
Role
Allow a dynamic list for /role self
Whois
Replaces several functions from protect and who
This is now paginated, with better info about notes and warnings
A small redesign to the existing information was done
New flags were added to the whois output to see extra information
Dependencies
aiocron -> 2.1
dateparser -> 1.2.1
discord.py -> 2.5.2
emoji -> 2.14.1
flake8 -> 7.2.0
flake8-bugbear -> 24.12.12
gitpython -> 3.1.44
hypothesis -> 6.135.10
inflect -> 7.5.0
irc -> 20.5.0
isort -> 6.0.1
pip -> 25.1.1
pipenv -> 2025.0.3
pydantic -> 2.9.2
pydoclint -> 0.6.6
pylint -> 3.3.7
pytest -> 8.4.0
pytest-asyncio -> 1.0.0
unidecode -> 1.4.0
Removed ib3
What's Changed
- Fix typo in interaction check by @ajax146 in #1221
- Update discord.py to version 2.5 by @ajax146 in #1222
- Bump hypothesis from 6.122.4 to 6.131.7 by @dependabot in #1265
- Bump pytest-asyncio from 0.25.0 to 0.26.0 by @dependabot in #1250
- Truly kill factoid all prefix command by @ajax146 in #1224
- Bump pytest from 8.3.2 to 8.3.5 by @dependabot in #1235
- Bump flake8-bugbear from 24.8.19 to 24.12.12 by @dependabot in #1269
- Replaces the PC joke config with a better filter by @Lunaberries in #1266
- Improves the output format of factoid search, and speeds it up a little by @ajax146 in #1200
- Makes role self more dynamic by @ajax146 in #1199
- Bump pylint from 3.2.6 to 3.3.6 by @dependabot in #1247
- Make duck random better by @ajax146 in #1189
- Rename factoid json file by @ajax146 in #1270
- Updating hangman to fix all the issues by @TheKrol in #1207
- Bump gitpython from 3.1.43 to 3.1.44 by @dependabot in #1226
- Bump pip from 24.3.1 to 25.0.1 by @dependabot in #1271
- Bump isort from 5.13.2 to 6.0.1 by @dependabot in #1272
- Bump pydantic from 2.8.2 to 2.9.2 by @dependabot in #1149
- Bump emoji from 2.12.1 to 2.14.1 by @dependabot in #1274
- Bump pipenv from 2024.4.1 to 2025.0.1 by @dependabot in #1273
- Bump pydoclint from 0.5.6 to 0.6.6 by @dependabot in #1262
- Bump flake8 from 7.1.1 to 7.2.0 by @dependabot in #1275
- Bump unidecode from 1.3.8 to 1.4.0 by @dependabot in #1276
- Bump hypothesis from 6.131.8 to 6.131.9 by @dependabot in #1278
- Bump pip from 25.0.1 to 25.1 by @dependabot in #1280
- Ducks don't timeout anymore by @Cpt-Dingus in #1141
- Updates the IRC authentication method to no longer need ib3 by @ajax146 in #1282
- Bump inflect from 7.3.1 to 7.5.0 by @dependabot in #1279
- make config.yml path configurable in .env file by @dkay0670 in #1294
- Removes useless print statement in HTD by @ajax146 in #1291
- Make the DEBUG .env option default at 0 by @ajax146 in #1301
- Changed behavior of
.burncommand. by @Koei32 in #1298 - Fix typo in logging warning in logger by @ajax146 in #1292
- Add /factoid call command by @ajax146 in #1290
- Add modmail bans command to list modmail bans by @dkay0670 in #1286
- Bump aiocron from 1.8 to 2.1 by @dependabot in #1268
- Add override owner config and try catch to log DM by @ajax146 in #1220
- Bump dateparser from 1.2.0 to 1.2.1 by @dependabot in #1267
- concatenation of all prior CI and addition of dependabot close steps … by @PipeItToDevNull in #1075
- Make startup time dynamic timestamp by @dkay0670 in #1305
- Fix modmail alias command when no aliases defined by @dkay0670 in #1287
- Add more friendly error when corrected message is too long by @dkay0670 in #886
- Auto reject applications after 30 days by @ajax146 in #1281
- Make CI only run on PRs with the run-ci label by @ajax146 in #1306
- Bump pip from 25.1 to 25.1.1 by @dependabot in #1308
- Bump pipenv from 2025.0.1 to 2025.0.2 by @dependabot in #1307
- Refactors hello, removes worthless unit tests by @ajax146 in #1300
- Merge all formatting and testing CI into one by @ajax146 in #1312
- Refactor all moderation features, auto mod and notes. Add reports and modlog. by @ajax146 in #1095
- Adds an /extension enable_all command by @ajax146 in #1299
- Fix perms with extension all command by @ajax146 in #1316
- Removes the if statements on CI by @ajax146 in #1328
- Better message on factoid forget by @ajax146 in #1326
- Fix CI schedule by @ajax146 in #1329
- Remove label in ci.yml by @ajax146 in #1330
- Bump hypothesis from 6.131.9 to 6.131.15 by @dependabot in #1327
- Better factoid json name by @ajax146 in #1325
- Bump pylint from 3.3.6 to 3.3.7 by @dependabot in #1315
- Bump hypothesis from 6.131.15 to 6.131.18 by @dependabot in #1332
- Modmail self/contact now links new thread on success by @ajax146 in #1331
- Fix factoid all when there are no factoids for a given guild by @ajax146 in #1322
- Fixes modmail sending files in threads by @ajax146 in #1320
- Properly parse namespace on slash command log by @ajax146 in #1313
- Move news random to be a slash command with autofill by @TheKrol in #969
- Bump hypothesis from 6.131.18 to 6.135.4 by @dependabot in #1340
- Bump pytest from 8.3.5 to 8.4.0 by @dependabot in #1339
- Bump pipenv from 2025.0.2 to 2025.0.3 by @dependabot in #1338
- Adds a crude debug command by @ajax146 in #1110
- Bump pytest-asyncio from 0.26.0 to 1.0.0 by @dependabot in #1342
- Bump hypothesis from 6.135.4 to 6.135.10 by @dependabot in #1341
- Add a warning message to people who DM the main bot by @ajax146 in #1334
New Contributors
- @Lunaberries made their first contribution in #1266
- @Koei32 made their first contribution in #1298
- @PipeItToDevNull made their first contribution in #1075
Full Changelog: v2025.02.18...v2025.06.20