aboutsummaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeLines
* Remove unit tests for duck pondGravatar Sebastiaan Zeeff2020-09-20-548/+0
| | | | | | | | I've removed the unit tests for duckpond in concordance with the new policy for writing unit tests for the bot The tests were unnecessarily complicated, difficult to maintain, and slowed development. Signed-off-by: Sebastiaan Zeeff <[email protected]>
* Fix relay race condition in duckpond using a lockGravatar Sebastiaan Zeeff2020-09-20-7/+17
| | | | | | | | | | | | | | | | | | | | | | | Our duckpond suffered from a race condition: If multiple raw reaction events were received in quick succession and a message had enough ducks to take it over the duckpond threshold, the message would be relayed multiple times. The reason this happened is because the green checkmark emoji that stops a message from being relayed multiple times is only added after the message has been relayed. This means that multiple event triggers can make it past the green checkmark check before any of them has a chance to add a green checkmark. The solution was to create a relay lock that needs to be acquired before checking for the presence of a green checkmark and is only released after adding a green checkmark. This prevents multiple events from making it past the sentinel check. As our Cogs are potentially initialized before the event loop is created, the lock is load lazily when needed. Signed-off-by: Sebastiaan Zeeff <[email protected]>
* Add channel blacklist for duckpondGravatar Sebastiaan Zeeff2020-09-20-4/+38
| | | | | | | | As announcements already get a lot of exposure and have a high risk of getting "ducked", duckpond will now ignore those channels and never relay those announcements to our duckpond. Signed-off-by: Sebastiaan Zeeff <[email protected]>
* Ignore non-staff messages for our duckpondGravatar Sebastiaan Zeeff2020-09-20-1/+5
| | | | | | | | | Some of our members have expressed concern that their messages would be "ducked" by staff members and relayed to the staff-only duckpond. Since duckpond is supposed to be a funny, staff-only affair, I've made duckpond ignore messages from non-staff members. Signed-off-by: Sebastiaan Zeeff <[email protected]>
* Determine eligible duckpond emojis dynamicallyGravatar Sebastiaan Zeeff2020-09-20-70/+27
| | | | | | | | | | | | Instead of maintaining a list of duckpond IDs manually, it's a much better idea to detect ducky emojis dynamically using the new emoji name grouping we've introduced: All emojis that start with `ducky_` will now be counted as a duckpond ducky. The unicode duck emoji obviously still counts in addition to custom emojis with the `ducky_` prefix. Signed-off-by: Sebastiaan Zeeff <[email protected]>
* Merge pull request #1158 from python-discord/config-updateGravatar Senjan212020-09-16-3/+4
|\ | | | | Updated the names of reddit emotes
| * remove random space in `upvotes` valueGravatar Senjan212020-09-16-1/+1
| |
| * update the reddit emojis to actual emojis'Gravatar Senjan212020-09-16-3/+3
| |
| * Updating names of reddit emotes.Gravatar Senjan212020-09-16-3/+4
| |
* | Merge pull request #927 from Numerlor/truncate-internal-evalGravatar Kieran Siek2020-09-16-62/+186
|\ \ | |/ |/| Truncate internal eval.
| * Merge branch 'master' into truncate-internal-evalGravatar Kieran Siek2020-09-16-1923/+4960
| |\ | |/ |/|
* | Verification: update & improve docstringsGravatar kwzrd2020-09-11-12/+11
| | | | | | | | | | | | | | After moving constants to config, the docstring references were not updated accordingly, and remained uppercase. This commit also removed the redundant list indentation.
* | Merge pull request #1077 from python-discord/kwzrd/verificationGravatar Daniel Brown2020-09-10-21/+617
|\ \ | | | | | | Take steps to increase verification rate
| * \ Merge branch 'master' into kwzrd/verificationGravatar Daniel Brown2020-09-10-800/+529
| |\ \ | |/ / |/| |
* | | Merge pull request #1144 from Numerlor/text-link-fixGravatar Shirayuki Nekomata2020-09-05-2/+2
|\ \ \ | | | | | | | | Move bolding markdown outside of text link in help channel messages.
| * \ \ Merge branch 'master' into text-link-fixGravatar Shirayuki Nekomata2020-09-05-8/+17
| |\ \ \ | |/ / / |/| | |
* | | | Disable everyone_ping filter in AntiSpam cogGravatar Sebastiaan Zeeff2020-09-05-4/+8
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | As there are a few bugs in the implementation, I've temporarily disabled the at-everyone ping filter in the AntiSpam cog. We can disable it after we've fixed the bugs. Signed-off-by: Sebastiaan Zeeff <[email protected]>
* | | | Disable burst_shared filter of the AntiSpam cogGravatar Sebastiaan Zeeff2020-09-04-4/+9
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Our AntiSpam cog suffers from a race condition that causes it to try and infract the same user multiple times. As that happens frequently with the burst_shared filter, it means that our bot joins in and starts spamming the channel with error messages. Another issue is that burst_shared may cause our bot to send a lot of DMs to a lot of different members. This caused our bot to get a DM ban from Discord after a recent `everyone` ping incident. I've decided to disable the `burst_shared` filter by commenting out the relevant lines but leave the code in place otherwise. This means we still have the implementation handy in case we want to re-enable it on short notice. Signed-off-by: Sebastiaan Zeeff <[email protected]>
| * | | Move bolding markdown outside of text link.Gravatar Numerlor2020-09-04-2/+2
|/ / / | | | | | | | | | | | | On some devices the markdown gets rendered improperly, leaving the asterisks in the message without bolding.
* | | Merge pull request #1132 from ↵Gravatar Mark2020-09-03-1/+3
|\ \ \ | | | | | | | | | | | | | | | | python-discord/bug/filters/1130/ignore-codeblock-emoji AntiSpam: ignore custom emojis in code blocks
| * | | AntiSpam: ignore custom emojis in code blocksGravatar MarkKoz2020-08-27-1/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | In code blocks, custom emojis render as text rather than as images. Therefore, they probably aren't being spammed and should be ignored. Fix #1130
* | | | Merge pull request #1135 from ↵Gravatar Daniel Brown2020-09-03-1/+48
|\ \ \ \ | | | | | | | | | | | | | | | | | | | | MrAwesomeRocks/feat/filter/1131/everyone-ping-responder Auto-respond to everyone pings.
| * \ \ \ Merge branch 'master' into feat/filter/1131/everyone-ping-responderGravatar Daniel Brown2020-09-03-513/+48
| |\ \ \ \ | |/ / / / |/| | | |
* | | | | Merge pull request #1134 from python-discord/remove-wolframGravatar Leon Sandøy2020-09-02-475/+0
|\ \ \ \ \ | | | | | | | | | | | | Completely gutted the wolfram command.
| * \ \ \ \ Merge branch 'master' into remove-wolframGravatar Leon Sandøy2020-09-02-34/+38
| |\ \ \ \ \ | |/ / / / / |/| | | | |
* | | | | | Merge pull request #1141 from wookie184/make-antimalware-ignore-bot-and-webhookGravatar Dennis Pham2020-09-01-0/+26
|\ \ \ \ \ \ | | | | | | | | | | | | | | Added checks to ignore webhook and bot messages for antimalware
| * \ \ \ \ \ Merge branch 'master' into make-antimalware-ignore-bot-and-webhookGravatar Dennis Pham2020-09-01-28/+6
| |\ \ \ \ \ \ | |/ / / / / / |/| | | | | |
* | | | | | | Merge pull request #1123 from AtieP/masterGravatar Shirayuki Nekomata2020-09-01-28/+6
|\ \ \ \ \ \ \ | | | | | | | | | | | | | | | | Use wait_for_deletion from bot/utils/messages.py rather than help_cleanup
| * \ \ \ \ \ \ Merge branch 'master' into masterGravatar Shirayuki Nekomata2020-09-01-161/+259
| |\ \ \ \ \ \ \ | |/ / / / / / / |/| | | | | | |
| * | | | | | | Remove unused variables and importsGravatar AtieP2020-08-29-2/+1
| | | | | | | |
| * | | | | | | Use wait_for_deletion from bot/utils/messages.py rather than help_cleanupGravatar AtieP2020-08-22-26/+5
| | | | | | | |
| | * | | | | | Fixed old tests and added 2 new onesGravatar wookie1842020-09-01-0/+22
| | | | | | | |
| | * | | | | | Added checks to ignore webhook and bot messagesGravatar wookie1842020-09-01-0/+4
| |/ / / / / / |/| | | | | |
* | | | | | | Allow moderators to use defconGravatar Dennis Pham2020-08-30-6/+6
| | | | | | |
| | * | | | | Removed loading of the Wolfram cog.Gravatar Xithrius2020-08-31-1/+0
| | | | | | |
| | * | | | | Removed ImagePaginator testing.Gravatar Xithrius2020-08-31-15/+0
| | | | | | |
| | * | | | | Removed image pagination utility.Gravatar Xithrius2020-08-31-164/+0
| | | | | | |
| | * | | | | Completely gutted the wolfram command.Gravatar Xithrius2020-08-29-295/+0
| |/ / / / / |/| | | | | | | | | | | | | | | | | Moved to seasonalbot/bot/exts/evergreen/wolfram.py
* | | | | | Merge pull request #1118 from python-discord/bug/mod/1094/watch-leaked-tokenGravatar Dennis Pham2020-08-27-3/+9
|\ \ \ \ \ \ | | | | | | | | | | | | | | Censor watchchannel messages when they contain leaked tokens
| * \ \ \ \ \ Merge branch 'master' into bug/mod/1094/watch-leaked-tokenGravatar Dennis Pham2020-08-27-171/+278
| |\ \ \ \ \ \ | |/ / / / / / |/| | | | | |
* | | | | | | Update Discord Partner badgeGravatar Joe Banks2020-08-27-1/+1
| |_|_|/ / / |/| | | | |
| * | | | | Don't send code block help if message has a webhook tokenGravatar MarkKoz2020-08-20-0/+2
| | | | | |
| * | | | | Watchchannels: censor message content if it has a leaked tokenGravatar MarkKoz2020-08-20-3/+7
| | | | | | | | | | | | | | | | | | | | | | | | Fixes #1094
| | | * | | Everyone Ping: Fixed regex to catch *all* pingsGravatar MrAwesomeRocks2020-08-31-2/+2
| | | | | |
| | | * | | Everyone Ping: Regex FixGravatar MrAwesomeRocks2020-08-31-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Changed the regex to not punish users who have text other than `@everyone` in their codeblocks. Multiline codeblocks can now have `@everyone` in them.
| | | * | | Everyone Ping: PR Review 2Gravatar MrAwesomeRocks2020-08-30-8/+13
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Removed redundant comments. Switched to regex to avoid punishing users for putting `@everyone` in codeblocks. Changed log message since this isn't a anti-spam rule based off of frequency. Added check for `<@&{guild_id}>` ping, also checks for codeblocks.
| | | * | | Everyone Ping: NEGATIVE_REPLIES in titleGravatar MrAwesomeRocks2020-08-30-8/+2
| | | | | | | | | | | | | | | | | | | | | | | | The NEGATIVE_REPLIES header is now the title of the embed.
| | | * | | Everyone Ping: PR ReviewGravatar MrAwesomeRocks2020-08-30-8/+13
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Changed cryptic variable name. Changed ping response to use `bot.constants.NEGATIVE_REPLIES`. Changed ping repsonse to only ping user once.
| | | * | | Everyone ping: added formatting to member countGravatar MrAwesomeRocks2020-08-30-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | Seperated the member count by commas every three digits.
| | | * | | Everyone ping: Changed message, cleaned fileGravatar MrAwesomeRocks2020-08-30-7/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Changed the message to say the raw member count, not just thousands. Also cleaned up some unused variables and imports in the file.