aboutsummaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeLines
* Add the Moderators role to moderation_roles in configGravatar Joe Banks2021-04-20-0/+1
| | | This allows mod alert pings to go through in #mod-alerts, the allowed mentions only included the mods team role which is not pinged on mod alerts.
* Merge pull request #1526 from python-discord/mbaruh/offdutyGravatar Boris Muratov2021-04-20-8/+145
|\ | | | | Add Modpings cog and new Moderators role
| * Merge branch 'main' into mbaruh/offdutyGravatar Boris Muratov2021-04-20-42/+179
| |\ | |/ |/|
* | Merge pull request #1532 from doublevcodes/mainGravatar Boris Muratov2021-04-20-2/+6
|\ \ | | | | | | !superstarify default time
| * | Update bot/exts/moderation/infraction/superstarify.pyGravatar Vivaan Verma2021-04-19-1/+1
| | | | | | | | | Co-authored-by: Boris Muratov <[email protected]>
| * | Merge branch 'main' into mainGravatar Vivaan Verma2021-04-19-4/+46
| |\ \ | |/ / |/| |
* | | Merge pull request #1537 from python-discord/list-non-staff-with-stream-permsGravatar ChrisJL2021-04-19-4/+46
|\ \ \ | | | | | | | | List non staff with stream perms
| * | | Update comment in list stream for readibilityGravatar Chris2021-04-19-1/+1
| | | |
| * | | Improve the wording of the list streamers embedGravatar ChrisJL2021-04-19-1/+1
| | | | | | | | | | | | Co-authored-by: Matteo Bertucci <[email protected]>
| * | | Remove unnecessary _ in variable nameGravatar Chris2021-04-19-3/+3
| | | |
| * | | Update wording of comment to be clearer.Gravatar Chris2021-04-19-1/+1
| | | |
| * | | Add command to list users with streaming permsGravatar Chris2021-04-19-1/+43
| | | | | | | | | | | | | | | | | | | | | | | | This is useful to audit users who still have the permission to stream. I have chosen to also sort and paginate the embed to make it easier to read. The sorting is based on how long until the user's streaming permissions are revoked, with permanent streamers at the end.
| * | | Require a mod role for stream commandsGravatar Chris2021-04-19-4/+4
|/ / / | | | | | | | | | Previously any staff member (including helpers) could use the stream commands.
| * | Change type hint from duration to expiryGravatar Vivaan Verma2021-04-19-2/+2
| | |
| * | Add default duration as constant and use Duration converterGravatar Vivaan Verma2021-04-19-4/+4
| | |
| * | Inline duration assignmentGravatar Vivaan Verma2021-04-19-2/+1
| | | | | | | | | Co-authored-by: Rohan Reddy Alleti <[email protected]>
| * | Fix linting errorsGravatar Vivaan Verma2021-04-18-1/+1
| | |
| * | Check if a duration was providedGravatar Vivaan Verma2021-04-18-2/+3
| | |
| * | Make duration an optional arg and default it to 1 hourGravatar Vivaan Verma2021-04-18-1/+5
| | |
| * | Added default duration of 1h to superstarifyGravatar Vivaan Verma2021-04-18-1/+1
|/ /
* | Merge pull request #1528 from python-discord/mbaruh/allow_evalGravatar Hassan Abouelela2021-04-17-10/+57
|\ \ | | | | | | Allow eval almost everywhere
| * \ Merge branch 'main' into mbaruh/allow_evalGravatar Hassan Abouelela2021-04-17-0/+21
| |\ \ | |/ / |/| |
* | | Merge pull request #1507 from python-discord/decorator-tagGravatar Xithrius2021-04-15-0/+21
|\ \ \ | | | | | | | | Add custom command checks tag
| * \ \ Merge branch 'main' into decorator-tagGravatar Xithrius2021-04-15-849/+1868
| |\ \ \ | |/ / / |/| | |
| * | | chore: update wording as requestedGravatar vcokltfre2021-04-15-3/+3
| | | |
| * | | rename function to in_any_channel in accordance with d.py namingGravatar vcokltfre2021-04-07-4/+4
| | | |
| * | | update wording to emphasise checks not decoratorsGravatar vcokltfre2021-04-07-3/+3
| | | |
| * | | add custom command checks tagGravatar vcokltfre2021-04-07-0/+21
| | | |
| | * | Raise a new NotInBlacklistCheckFailure insteadGravatar mbaruh2021-04-16-7/+15
| | | | | | | | | | | | | | | | This creates a new baseclass called ContextCheckFailure, and the new error as well as InWhitelistCheckFailure now derive it.
| | * | Allow eval almost everywhereGravatar mbaruh2021-04-15-5/+44
| |/ / |/| | | | | | | | Adds a check to blacklist a command only in a specific context, with an option for a role override. The check is applied to the eval command to blacklist it only from python-general.
* | | Merge pull request #1523 from kwzrd/kwzrd/branding-devGravatar Xithrius2021-04-14-7/+13
|\ \ \ | | | | | | | | Branding: correct broken timestamp persistence & improve cosmetics
| * \ \ Merge branch 'main' into kwzrd/branding-devGravatar Xithrius2021-04-14-19/+36
| |\ \ \ | |/ / / |/| | |
* | | | Merge pull request #1514 from ↵Gravatar Xithrius2021-04-14-8/+11
|\ \ \ \ | | | | | | | | | | | | | | | | | | | | python-discord/bug/filters/902/antispam-punish-once AntiSpam: prevent attempts to punish a user multiple times
| * \ \ \ Merge branch 'main' into bug/filters/902/antispam-punish-onceGravatar Xithrius2021-04-14-828/+1838
| |\ \ \ \ | |/ / / / |/| | | |
* | | | | Merge pull request #1524 from python-discord/output-snowflakes-in-one-embedGravatar ks1292021-04-14-9/+19
|\ \ \ \ \ | | | | | | | | | | | | Use a paginated embed to output multiple snowflakes
| * \ \ \ \ Merge branch 'main' into output-snowflakes-in-one-embedGravatar ks1292021-04-14-2/+6
| |\ \ \ \ \ | |/ / / / / |/| | | | |
* | | | | | Merge pull request #1525 from python-discord/catch-invocation-not-found-errorGravatar Matteo Bertucci2021-04-14-2/+6
|\ \ \ \ \ \ | | | | | | | | | | | | | | Catch NotFound errors when trying to delete the invocation message when cleaning
| * | | | | | Catch NotFound errors when trying to delete the invocation message when cleaningGravatar Chris2021-04-14-2/+6
|/ / / / / / | | | | | | | | | | | | | | | | | | | | | | | | This often happens during a raid, when an int e script is added to ban & clean messages. Since the invocation message will be deleted on the first run, we should except subsequent NotFound errors.
| * | | | | Refactor embed to use just one lineGravatar Chris2021-04-14-3/+1
| | | | | |
| * | | | | Require at least one snowflake to be provided.Gravatar Chris2021-04-14-0/+3
| | | | | |
| * | | | | Use a paginated embed to output multiple snowflakesGravatar Chris2021-04-14-9/+18
|/ / / / / | | | | | | | | | | | | | | | | | | | | | | | | | Previously each snowflake passed to the command would have their own embed, which may cause the bot to send many embeds if a staff unknowingly passed it a bunch of snowflakes. This change makes sure that we don't run into rate limits on the bot by sending all of the snowflakes in one embed.
| * | | | AntiSpam: create tasks in a safer mannerGravatar MarkKoz2021-04-09-8/+9
| | | | | | | | | | | | | | | | | | | | | | | | | Name the tasks and use `scheduling.create_task` to ensure exceptions are caught.
| * | | | AntiSpam: prevent attempts to punish a user multiple timesGravatar MarkKoz2021-04-09-1/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | A user may manage to send multiple message that violate filters before the mute is applied. Because of a race condition, subsequent punish attempts did not detect the mute role exists and therefore proceeded to apply another mute. To avoid the race condition, abort any subsequent punish attempts while one is already ongoing for a given user. It could be possible to wait instead of abort, but the first attempt failing very likely means subsequent attempts would fail too. Fixes #902
| | * | | Branding: adjust duration string for 1-day eventsGravatar kwzrd2021-04-13-0/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Instead of: 'January 1 - January 1' Do: 'January 1'
| | * | | Branding: use tz-aware datetime representationGravatar kwzrd2021-04-13-7/+8
| |/ / / |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Using `datetime.utcnow` produces a tz-naive object. When converting the object into a POSIX timestamp (L212), the library then converts the naive object into UTC, which will offset it unless the local timezone is UTC. We prevent this behaviour by using an Arrow repr instead, which is by default tz-aware. Since the object already knows it is in UTC, it does not shift when converting to a timestamp. Because L233 used `fromtimestamp` rather than `utcfromtimestamp`, the timestamp then got converted back into local time, canceling the previous error. Therefore, the bug wasn't observable from logs, as the times looked correct, but were being stored incorrectly. By using `Arrow.utcfromtimestamp`, the created object will be aware of being UTC again, which is more safe.
| | | * Remove allowed mentions in modlog alertGravatar Boris Muratov2021-04-20-2/+1
| | | | | | | | | | | | The modlog alert embed no longer pings everyone.
| | | * Improve rediscache docGravatar Boris Muratov2021-04-20-1/+1
| | | | | | | | | | | | Co-authored-by: ChrisJL <[email protected]>
| | | * CamelCase the cog nameGravatar Boris Muratov2021-04-19-3/+3
| | | |
| | | * Merge branch 'mbaruh/offduty' of https://github.com/python-discord/bot into ↵Gravatar mbaruh2021-04-19-2/+2
| | | |\ | | | | | | | | | | | | | | | mbaruh/offduty
| | | | * Remove here pingGravatar Boris Muratov2021-04-17-2/+2
| | | | | | | | | | | | | | | Kinda defeats the purpose of being off-duty.