aboutsummaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeLines
...
| | | | * | | Add the user ID to the username in dm relays.Gravatar Leon Sandøy2020-07-15-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Without this, it is difficult to know precisely who the user that is DMing us is, which might be useful to us. https://github.com/python-discord/bot/issues/1041
| | | | * | | Restore DM user caching.Gravatar Leon Sandøy2020-07-15-6/+22
| | | |/ / / | | | | | | | | | | | | | | | | | | This reverts commit 042f472a
| | | * | | Remove caching of last_dm_user.Gravatar Leon Sandøy2020-07-15-25/+20
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | If you're typing up a reply and the bot gets another DM while you're typing, you might accidentally send your reply to the wrong person. This could happen even if you're very attentive, because it might be a matter of milliseconds. The complexity to prevent this isn't worth the convenience of the feature, and it's nice to get rid of the caching as well, so I've decided to just make .reply require a user for every reply. https://github.com/python-discord/bot/issues/1041
| | | * | | Merge branch 'master' into dm_relayGravatar Leon Sandøy2020-07-13-173/+169
| | | |\ \ \
| | | * | | | Store last DM user in RedisCache.Gravatar Leon Sandøy2020-07-13-12/+22
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Also now catches the exception if a user has disabled DMs, and adds a red cross reaction. https://github.com/python-discord/bot/issues/667
| | | * | | | Remove redundant clean_content variable.Gravatar Leon Sandøy2020-07-13-5/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | https://github.com/python-discord/bot/issues/667
| | | * | | | Don't run on_message if self.webhook is None.Gravatar Leon Sandøy2020-07-13-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | https://github.com/python-discord/bot/issues/667
| | | * | | | Only mods+ may use the commands in this cog.Gravatar Leon Sandøy2020-07-13-0/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | | https://github.com/python-discord/bot/issues/667
| | | * | | | Add avatar_url in python_news.pyGravatar Leon Sandøy2020-07-13-0/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | https://github.com/python-discord/bot/issues/667
| | | * | | | Better docstring for DMRelay cog.Gravatar Leon Sandøy2020-07-13-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | https://github.com/python-discord/bot/issues/667
| | | * | | | Add a way to respond to DMs.Gravatar Leon Sandøy2020-07-12-0/+29
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This shouldn't be used as a replacement for ModMail, but I think it makes sense to have the feature just in case #dm-log provides an interesting use-case where responding as the bot makes sense. It's a bit of a curiosity, and Ves hates it, but I included it anyway. https://github.com/python-discord/bot/issues/667
| | | * | | | Fix DuckPond tests now that send_webhook is gone.Gravatar Leon Sandøy2020-07-12-39/+12
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Some of the tests were failing because they were expecting send_webhook to be a method of the DuckPond cog, other tests simply were no longer applicable, and have been removed. https://github.com/python-discord/bot/issues/667
| | | * | | | Only relay DMs, and only from humans.Gravatar Leon Sandøy2020-07-12-0/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | https://github.com/python-discord/bot/issues/667
| | | * | | | Replace channel ID with webhook ID for dm_log.Gravatar Leon Sandøy2020-07-12-4/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | https://github.com/python-discord/bot/issues/667
| | | * | | | Relay all DMs and embeds to #dm-log.Gravatar Leon Sandøy2020-07-12-0/+67
| | | | | | | | | | | | | | | | | | | | | | | | | | | | https://github.com/python-discord/bot/issues/667
| | | * | | | Refactor python_news.py to use webhook util.Gravatar Leon Sandøy2020-07-12-43/+31
| | | | | | | | | | | | | | | | | | | | | | | | | | | | https://github.com/python-discord/bot/issues/667
| | | * | | | Refactor Duck Pond embed sender to be a util.Gravatar Leon Sandøy2020-07-12-22/+42
| | | | | | | | | | | | | | | | | | | | | | | | | | | | https://github.com/python-discord/bot/issues/667
| | | * | | | Add the #dm_log ID to constants.Gravatar Leon Sandøy2020-07-12-0/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | https://github.com/python-discord/bot/issues/667
| | | | | * | Update bot/resources/tags/or-gotcha.mdGravatar ItsCinnabar2020-07-14-1/+1
| | | | | | | | | | | | | | | | | | | | | Co-authored-by: Sebastiaan Zeeff <[email protected]>
| | | | | * | Update or-gotcha.mdGravatar ItsCinnabar2020-07-14-1/+0
| | | | | | |
| | | | | * | Update or-gotcha.mdGravatar ItsCinnabar2020-07-14-1/+1
| | | | | | |
| | | | | * | Update or-gotcha.mdGravatar ItsCinnabar2020-07-14-1/+2
| |_|_|_|/ / |/| | | | | | | | | | | Adjust description and include link to docs
* | | | | | Remove redundant kwarg in !kick and !shadow_kickGravatar kosayoda2020-07-14-2/+2
| |/ / / / |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The kwarg `active=False` is already being passed in `apply_kick`, therefore passing it in the parent callers result in a TypeError. Fixes #976 Fixes BOT-5P
* | | | | Whitelisting some popular communitiesGravatar Leon Sandøy2020-07-13-0/+10
| |_|/ / |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The following communities are whitelisted by this commit: - Django - Programming Discussions - JetBrains Community - Raspberry Pi - Programmers Hangout - SpeakJS - DevCord - Unity - Programmer Humor - Microsoft Community Most of these are partners, or otherwise friendly communities that aren't worth pinging mods over.
* | | | Merge pull request #1039 from ↵Gravatar Dennis Pham2020-07-13-4/+16
|\ \ \ \ | | | | | | | | | | | | | | | | | | | | python-discord/1038_allow_role_mentions_in_specific_areas Allow role mentions in specific areas
| * \ \ \ Merge branch 'master' into 1038_allow_role_mentions_in_specific_areasGravatar Dennis Pham2020-07-13-169/+153
| |\ \ \ \ | |/ / / / |/| | | |
* | | | | Fix rescheduling of edited infractionsGravatar MarkKoz2020-07-12-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | It was attempting to schedule a dictionary instead of a coroutine. Fixes #1043 Fixes BOT-6Y
* | | | | Merge pull request #1017 from python-discord/feat/backend/800/scheduler-redesignGravatar Mark2020-07-12-169/+153
|\ \ \ \ \ | |_|_|/ / |/| | | | Scheduler Redesign
| * | | | Merge branch 'master' into feat/backend/800/scheduler-redesignGravatar Mark2020-07-12-217/+683
| |\ \ \ \ | |/ / / / |/| | | |
| * | | | Scheduler: document coroutine closing elsewhereGravatar MarkKoz2020-07-06-4/+12
| | | | |
| * | | | Scheduler: assert the coroutine hasn't been awaited yetGravatar MarkKoz2020-07-06-0/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | It'd fail to schedule the coroutine otherwise anyway. There is also the potential to close the coroutine, which may be unexpected to see for a coroutine that was already running (despite being documented).
| * | | | Scheduler: more verbose logging in _await_laterGravatar MarkKoz2020-06-30-7/+10
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Showing the task ID in the logs makes them distinguishable from logs for other tasks. The coroutine state is logged because it may come in handy while debugging; the coroutine inspection check hasn't been proven yet in production.
| * | | | Scheduler: explain the name param in the docstringGravatar MarkKoz2020-06-29-0/+4
| | | | |
| * | | | Scheduler: add details to class docstringGravatar MarkKoz2020-06-29-1/+11
| | | | |
| * | | | Scheduler: only close unawaited coroutinesGravatar MarkKoz2020-06-25-2/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The coroutine may cancel the scheduled task, which would also trigger the finally block. The coroutine isn't necessarily finished when it cancels the task, so it shouldn't be closed in this case.
| * | | | Scheduler: remove duplicate dict deleteGravatar MarkKoz2020-06-24-1/+0
| | | | | | | | | | | | | | | | | | | | | | | | | The task is already popped from the dict, so there is no need to delete it afterwards.
| * | | | Scheduler: close coroutine if task ID already existsGravatar MarkKoz2020-06-23-1/+7
| | | | | | | | | | | | | | | | | | | | This prevents unawaited coroutine warnings.
| * | | | Update InfractionScheduler's scheduler to the new APIGravatar MarkKoz2020-06-20-17/+12
| | | | |
| * | | | Update HelpChannels's scheduler to the new APIGravatar MarkKoz2020-06-20-50/+20
| | | | |
| * | | | Update Silence's scheduler to the new APIGravatar MarkKoz2020-06-20-26/+6
| | | | |
| * | | | Update Reminders's scheduler to the new APIGravatar MarkKoz2020-06-20-14/+15
| | | | |
| * | | | Update Filtering's scheduler to the new APIGravatar MarkKoz2020-06-20-10/+6
| | | | |
| * | | | Scheduler: add a method to schedule at a specific datetimeGravatar MarkKoz2020-06-20-0/+13
| | | | |
| * | | | Scheduler: add a method to schedule with a delayGravatar MarkKoz2020-06-20-0/+19
| | | | |
| * | | | Scheduler: rename "task" param to "coroutine"Gravatar MarkKoz2020-06-20-3/+3
| | | | | | | | | | | | | | | | | | | | | | | | | Naming it "task" is inaccurate because `create_task` accepts a coroutine rather than a Task. What it does is wrap the coroutine in a Task.
| * | | | Scheduler: drop _task suffix from method namesGravatar MarkKoz2020-06-20-3/+3
| | | | | | | | | | | | | | | | | | | | It's redundant. After all, this scheduler cannot schedule anything else.
| * | | | Scheduler: remove ignore_missing paramGravatar MarkKoz2020-06-20-10/+5
| | | | | | | | | | | | | | | | | | | | | | | | | The ability to use the `in` operator makes this obsolete. Callers can check themselves if a task exists before they try to cancel it.
| * | | | Scheduler: use pop instead of get when cancellingGravatar MarkKoz2020-06-19-7/+7
| | | | |
| * | | | Scheduler: add support for in operatorGravatar MarkKoz2020-06-19-0/+4
| | | | |
| * | | | Scheduler: name tasksGravatar MarkKoz2020-06-19-1/+1
| | | | | | | | | | | | | | | | | | | | Makes them easier to identify when debugging.