aboutsummaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeLines
...
| | | | | | | | | | * | Make complex test cases namedtuples, recognize between various authors, pass ↵Gravatar kwzrd2019-11-14-12/+43
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | config to subTest
| | | | | | | | | | * | Hold recent_messages in a list to respect type hint, set config in setUpGravatar kwzrd2019-11-14-5/+8
| | | | | | | | | | | |
| | | | | | | | | | * | Adjust attachments rule unit test to correcty build the arguments for the ↵Gravatar kwzrd2019-11-14-7/+11
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | tested rule
| | | | | | | | | | * | Fix bug in attachments rule where last_message could potentially count twice ↵Gravatar kwzrd2019-11-14-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | in the sum of attachments
| | | | | | | | | | * | Use async_test helper to simplify coro testingGravatar kwzrd2019-11-13-9/+14
| | | | | | | | | | | |
| | | | | | | | | | * | Adjust attachments rule to use MockMessage, restructure test casesGravatar kwzrd2019-11-13-20/+23
| | | | | | | | | | | |
| | | | | | | | | | * | Adjust links rule to use proper MockMessageGravatar kwzrd2019-11-13-14/+10
| | | | | | | | | | | |
| | | | | | | | | | * | Merge branch 'master' into unittest-mentionsGravatar kwzrd2019-11-13-179/+187
| | | | | | | | | | |\ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Testing methodology was adjusted in upstream repo. Merging the relevant changes.
| | | | | | | | | | * | | Adjust incorrect type hintGravatar kwzrd2019-11-09-1/+1
| | | | | | | | | | | | |
| | | | | | | | | | * | | Use MockMessage instead of custom FakeMessageGravatar kwzrd2019-11-09-15/+11
| | | | | | | | | | | | |
| | | | | | | | | | * | | Adjust type hint to correctly represent internal typeGravatar kwzrd2019-11-09-1/+1
| | | | | | | | | | | | |
| | | | | | | | | | * | | Use range to build mock mentions listGravatar kwzrd2019-11-09-1/+1
| | | | | | | | | | | | |
| | | | | | | | | | * | | Adjust docstring asterisk to backtick for consistencyGravatar kwzrd2019-11-09-1/+1
| | | | | | | | | | | | |
| | | | | | | | | | * | | Add missing docstringGravatar kwzrd2019-11-09-0/+1
| | | | | | | | | | | | |
| | | | | | | | | | * | | Add unit test for mentions antispam ruleGravatar kwzrd2019-11-09-0/+98
| | | | | | | | | | | | |
| | | | | | | | | | | | * Whitelist Discord Testers invite linkGravatar Matteo Bertucci2019-12-10-0/+1
| | |_|_|_|_|_|_|_|_|_|/ | |/| | | | | | | | | |
* | | | | | | | | | | | ModLog: support self_stream voice stateGravatar MarkKoz2019-12-18-1/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This feature will be available in discord.py 1.3.
* | | | | | | | | | | | ModLog: change voice state embed icon and colourGravatar MarkKoz2019-12-18-5/+22
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Use a red icon when leaving or mute/deafened. Use a green icon when joining or unmuted/undeafened. Use a blue icon when changing channels or any other possible change.
* | | | | | | | | | | | Constants: add voice state emotesGravatar MarkKoz2019-12-18-0/+8
| | | | | | | | | | | |
* | | | | | | | | | | | ModLog: exclude afk attribute from voice state logGravatar MarkKoz2019-12-11-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The log will already show that the channel changes to the AFK channel so showing the attribute change is redundant. If the channel were not clearly named "AFK" then it might've made sense to keep the attribute.
* | | | | | | | | | | | ModLog: exclude most channel attributes from voice state diffGravatar MarkKoz2019-12-11-2/+8
| | | | | | | | | | | |
* | | | | | | | | | | | ModLog: make voice state event respect ignored channelsGravatar MarkKoz2019-12-11-1/+4
| | | | | | | | | | | |
* | | | | | | | | | | | ModLog: use Unicode arrow when displaying value changesGravatar MarkKoz2019-12-11-8/+8
| | | | | | | | | | | |
* | | | | | | | | | | | ModLog: log voice state updatesGravatar MarkKoz2019-12-11-0/+51
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * Add corresponding event to the Event enum so the event can be ignored
* | | | | | | | | | | | Add constants for voice state loggingGravatar MarkKoz2019-12-10-1/+5
|/ / / / / / / / / / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * Add ID for the voice-log channel. * Add IDs for admins & staff voice channels and make the mod log ignore them.
* | | | | | | | | | | Merge pull request #682 from manusaurio/masterGravatar Shirayuki Nekomata2019-12-09-0/+3
|\ \ \ \ \ \ \ \ \ \ \ | |/ / / / / / / / / / |/| | | | | | | | | | Ensure hidden_channels and bypass_roles use a list when not passed.
| * | | | | | | | | | Ensure hidden_channels and bypass_roles use a list when not passed.Gravatar Manuel Ignacio Pérez Alcolea2019-12-09-0/+3
|/ / / / / / / / / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The in_channel decorator raised 'NoneType' is not iterable when it wasn't passed, due to the default value being None but not checked against before iterating over it. This edit ensures the arguments are set to an empty list in cases where they have a value of None instead.
* | | / / / / / / / Added optional channel parameter to !echo:Gravatar Daniel Brown2019-12-05-4/+7
| |_|/ / / / / / / |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | - Added the option to specify a channel to have Python repeat what you said to it, as well as keeping the old functionality of having it repeat what you said in the current channel if no channel argument is given. Signed-off-by: Daniel Brown <[email protected]>
* | | | | | | | | Merge pull request #678 from python-discord/antimalware-paste-urlGravatar Mark2019-12-03-1/+1
|\ \ \ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | Antimalware: fix paste service URL showing replacement field
| * | | | | | | | | Antimalware: fix paste service URL showing replacement fieldGravatar MarkKoz2019-12-03-1/+1
| | | | | | | | | |
* | | | | | | | | | Merge pull request #672 from ↵Gravatar Mark2019-12-03-6/+28
|\ \ \ \ \ \ \ \ \ \ | |/ / / / / / / / / |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | python-discord/enhance-timedelta-for-infraction-expiration Enhance timedelta for infraction expiration
| * | | | | | | | | Renamed function and improved its docstring to better reflect its purposes.Gravatar Shirayuki Nekomata2019-12-04-16/+9
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Changed from `get_duration_from_expiry` -> `format_infraction_with_duration`
| * | | | | | | | | Deleted `get_duration` and switched to using the already, nicely made ↵Gravatar Shirayuki Nekomata2019-12-03-48/+8
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | `humanize_delta`
| * | | | | | | | | Removed pytest, getting ready to migrate to unittest in another PRGravatar Shirayuki Nekomata2019-12-03-44/+0
| | | | | | | | | |
| * | | | | | | | | Updated test cases for `parts: Optional[int]`Gravatar Shirayuki Nekomata2019-11-27-23/+32
| | | | | | | | | |
| * | | | | | | | | Updated docstrings, allow passing `parts: Optional[int] = 2` to helper ↵Gravatar Shirayuki Nekomata2019-11-27-6/+14
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | functions to return more than just 2 parts of the duration.
| * | | | | | | | | Updated test cases for `get_duration_from_expiry()`Gravatar Shirayuki Nekomata2019-11-27-8/+9
| | | | | | | | | |
| * | | | | | | | | Refactored `scheduler.py` to use the new `get_duration_from_expiry()`Gravatar Shirayuki Nekomata2019-11-27-10/+4
| | | | | | | | | |
| * | | | | | | | | Refactored `management.py` to use the new `get_duration_from_expiry()`Gravatar Shirayuki Nekomata2019-11-27-5/+4
| | | | | | | | | |
| * | | | | | | | | Changed `get_duration_from_expiry()` to return the `time (duration)` or a `''`Gravatar Shirayuki Nekomata2019-11-27-2/+11
| | | | | | | | | |
| * | | | | | | | | Added duration until expiration for infraction searching.Gravatar Shirayuki Nekomata2019-11-27-2/+5
| | | | | | | | | |
| * | | | | | | | | Fixed "14 minutes, 60 seconds" by rounding `.total_seconds()` in ↵Gravatar Shirayuki Nekomata2019-11-27-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | `bot.utils.time.get_durations()`
| * | | | | | | | | Added expiry duration when applying infraction ( including in the embed sent ↵Gravatar Shirayuki Nekomata2019-11-27-3/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | to user )
| * | | | | | | | | Updated `bot.utils.time.get_duration_from_expiry()` to accept an optional ↵Gravatar Shirayuki Nekomata2019-11-27-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | `date_from` ( for pytest and more control over the behaviour )
| * | | | | | | | | Added test for `get_duration_from_expiry()`Gravatar Shirayuki Nekomata2019-11-27-0/+17
| | | | | | | | | |
| * | | | | | | | | Fixed TypeError raised by substracting offset-naive and offset-aware ↵Gravatar Shirayuki Nekomata2019-11-27-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | datetimes ( removed tzinfo from expiry )
| * | | | | | | | | Implemented `get_duration_from_expiry()` which call `get_duration()` for ↵Gravatar Shirayuki Nekomata2019-11-27-0/+18
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | `expiry` and `datetime.utcnow()`
| * | | | | | | | | Added pytest for `get_duration()`Gravatar Shirayuki Nekomata2019-11-27-0/+17
| | | | | | | | | |
| * | | | | | | | | Implemented `get_duration()` for `bot.utils.time`Gravatar Shirayuki Nekomata2019-11-27-1/+35
| | | | | | | | | |
* | | | | | | | | | Allow snekbox in esoteric-python channel (#675)Gravatar scragly2019-12-02-4/+15
|\ \ \ \ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | Allow snekbox in esoteric-python channel