aboutsummaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeLines
* Merge pull request #680 from ↵Gravatar scragly2019-12-13-3/+170
|\ | | | | | | | | python-discord/Write-unit-tests-for-`bot/utils/time.py` Added `unittest` for `bot.utils.time`
| * Fixed a typo ( due to poor copy pasta and eyeballing skills )Gravatar Shirayuki Nekomata2019-12-13-1/+1
| |
| * Added tests for `until_expiration`Gravatar Shirayuki Nekomata2019-12-13-0/+45
| | | | | | | | | | | | | | Similar to `format_infraction_with_duration` ( if not outright copying it ), added 3 tests for `until_expiration`: - None `expiry`. - Custom `max_units`. - Normal use cases.
| * Adding an optional argument for `until_expiration`, update typehints for ↵Gravatar Shirayuki Nekomata2019-12-13-3/+8
| | | | | | | | | | | | | | `format_infraction_with_duration` - `until_expiration` was being a pain to unittests without a `now` ( default to `datetime.utcnow()` ). Adding an optional argument for this will not only make writing tests easier, but also allow more control over the helper function should we need to calculate the remaining time between two dates in the past. - Changed typehint for `date_from` in `format_infraction_with_duration` to `Optional[datetime.datetime]` to better reflect what it is.
| * Merge branch 'master' into Write-unit-tests-for-`bot/utils/time.py`Gravatar scragly2019-12-12-1/+32
| |\
| * \ Merge branch 'master' into Write-unit-tests-for-`bot/utils/time.py`Gravatar scragly2019-12-12-240/+358
| |\ \
| * | | Removed `setUp()` from `TimeTests` since it is not being used for anything.Gravatar Shirayuki Nekomata2019-12-05-3/+0
| | | |
| * | | Moved all individual test cases into iterables and test with `self.subTest` ↵Gravatar Shirayuki Nekomata2019-12-05-14/+18
| | | | | | | | | | | | | | | | context manager.
| * | | Added `self.subTest` for tests with multiple test cases & simplified single ↵Gravatar Shirayuki Nekomata2019-12-05-19/+11
| | | | | | | | | | | | | | | | test case tests.
| * | | Introduced test for `test_format_infraction`, refactored ↵Gravatar Shirayuki Nekomata2019-12-05-5/+7
| | | | | | | | | | | | | | | | `test_parse_rfc1123`, fixed typo.
| * | | Splitting test cases for `format_infraction_with_duration` into proper, ↵Gravatar Shirayuki Nekomata2019-12-05-7/+27
| | | | | | | | | | | | | | | | independent tests.
| * | | Changed `assert` to `self.assertIs` for `test_wait_until`Gravatar Shirayuki Nekomata2019-12-05-1/+1
| | | |
| * | | Added missing docstring for `test_humanize_delta_raises_for_invalid_max_units`Gravatar Shirayuki Nekomata2019-12-05-0/+1
| | | |
| * | | Splitting test cases for `humanize_delta` into proper, independent tests.Gravatar Shirayuki Nekomata2019-12-05-7/+21
| | | |
| * | | Added `unittest` for `bot.utils.time`Gravatar Shirayuki Nekomata2019-12-04-0/+87
| | | |
* | | | Revert "Use OAuth to be Reddit API compliant" (#695)Gravatar Joseph2019-12-13-88/+11
|\ \ \ \ | | | | | | | | | | Revert "Use OAuth to be Reddit API compliant"
| * | | | Revert "Use OAuth to be Reddit API compliant"Gravatar Joseph2019-12-13-88/+11
|/ / / /
* | | | Use OAuth to be Reddit API compliant (#510)Gravatar scragly2019-12-13-11/+88
|\ \ \ \ | |_|_|/ |/| | | | | | | | | | | | | | | | | | | Use OAuth to be Reddit API compliant Co-authored-by: Jens <[email protected]> Co-authored-by: Mark <[email protected]> Co-authored-by: null <[email protected]>
| * | | Merge branch 'master' into reddit-api-oauthGravatar scragly2019-12-13-237/+383
| |\ \ \ | |/ / / |/| | |
* | | | Display time left until expiration of infraction (#679)Gravatar scragly2019-12-12-1/+32
|\ \ \ \ | |_|_|/ |/| | | | | | | | | | | Display time left until expiration of infraction Co-authored-by: null <[email protected]>
| * | | Merge branch 'master' into Display-time-left-until-expiration-of-infractionGravatar scragly2019-12-12-240/+358
| |\ \ \ | |/ / / |/| | |
* | | | Merge pull request #693 from python-discord/enh/mod/624/edit-recent-infractionGravatar Mark2019-12-12-19/+49
|\ \ \ \ | | | | | | | | | | Allow "recent" as infraction ID for infraction edit command
| * \ \ \ Merge branch 'master' into enh/mod/624/edit-recent-infractionGravatar Mark2019-12-12-26/+49
| |\ \ \ \ | |/ / / / |/| | | |
* | | | | Token and bad code (#500)Gravatar scragly2019-12-12-26/+49
|\ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Token and bad code Co-authored-by: Daniel Brown <[email protected]> Co-authored-by: Mark <[email protected]>
| * \ \ \ \ Merge remote-tracking branch 'origin/master' into token_and_bad_codeGravatar MarkKoz2019-12-12-1169/+2555
| |\ \ \ \ \ | |/ / / / / |/| | | | |
| * | | | | Requested changeGravatar kraktus2019-12-05-1/+2
| | | | | | | | | | | | | | | | | | Include the check about whether or not there is a token in the posted message in `parse_codeblock` boolean.
| * | | | | Merge branch 'master' into token_and_bad_codeGravatar Daniel Brown2019-11-04-3476/+5522
| |\ \ \ \ \
| * | | | | | Add check when a message is editedGravatar kraktus2019-10-20-23/+37
| | | | | | |
| * | | | | | Use a `classmethod`Gravatar kraktus2019-10-12-1/+2
| | | | | | |
| * | | | | | fix linting errorGravatar kraktus2019-10-07-1/+1
| | | | | | | | | | | | | | | | | | | | | fix linting error
| * | | | | | Another fixGravatar kraktus2019-10-07-1/+1
| | | | | | | | | | | | | | | | | | | | | After a new bunch of test I found bugs, and this fix resolves them
| * | | | | | minor fixGravatar kraktus2019-10-07-1/+1
| | | | | | |
| * | | | | | Make sure that poor code does not contains tokenGravatar kraktus2019-10-07-14/+21
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Added a new function `is_token_in_message` in `token_remover`. This function returns a `bool` and if the code contains a token then the embed message about the poorly formatted code is not displayed.
| | | * | | | Merge remote-tracking branch 'origin/master' into ↵Gravatar MarkKoz2019-12-12-191/+250
| | | |\ \ \ \ | |_|_|/ / / / |/| | | | | | | | | | | | | enh/mod/624/edit-recent-infraction
* | | | | | | Subclass Bot (#681)Gravatar scragly2019-12-12-185/+225
|\ \ \ \ \ \ \ | | | | | | | | | | | | | | | | Subclass Bot
| * | | | | | | Use the AsyncResolver for APIClient and discord.py sessions tooGravatar MarkKoz2019-12-08-11/+11
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Active thread counts are observed to be lower with it in use.
| * | | | | | | Fix test failures for setup log messagesGravatar MarkKoz2019-12-08-24/+7
| | | | | | | |
| * | | | | | | Properly create and close aiohttp sessionsGravatar MarkKoz2019-12-08-10/+65
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | aiohttp throws a warning when a session is created outside of a running async event loop. In aiohttp 4.0 this actually changes to an error instead of merely a warning. Since discord.py manages the event loop with client.run(), some of the "internal" coroutines of the client were overwritten in the bot subclass to be able to hook into when the bot starts and stops. Sessions of both the bot and the API client can now potentially be None if accessed before the sessions have been created. However, if called, the API client's methods will wait for a session to be ready. It will attempt to create a session as soon as the event loop starts (i.e. the bot is running).
| * | | | | | | Fix name conflict with the Bot cogGravatar MarkKoz2019-12-08-3/+3
| | | | | | | |
| * | | | | | | Override add_cog to log loading of cogsGravatar MarkKoz2019-12-08-80/+34
| | | | | | | |
| * | | | | | | Change all Bot imports to use the subclassGravatar MarkKoz2019-12-07-52/+92
| | | | | | | |
| * | | | | | | Subclass BotGravatar MarkKoz2019-12-07-24/+32
| | | | | | | |
* | | | | | | | Merge pull request #684 from python-discord/enhancement/644-mute-kicks-voiceGravatar Mark2019-12-12-6/+15
|\ \ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | Kick users from voice when they get muted
| * \ \ \ \ \ \ \ Merge branch 'master' into enhancement/644-mute-kicks-voiceGravatar Matteo Bertucci2019-12-12-0/+10
| |\ \ \ \ \ \ \ \ | |/ / / / / / / / |/| | | | | | | |
* | | | | | | | | Fix tag fallback not respecting checks (#687)Gravatar scragly2019-12-12-0/+10
|\ \ \ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | Fix tag fallback not respecting checks
| * | | | | | | | | ErrorHandler: fix #650 tag fallback not respecting checksGravatar MarkKoz2019-12-11-0/+10
|/ / / / / / / / /
| * | | | | | | | Infractions: kick user from voice after muting (#644)Gravatar MarkKoz2019-12-09-2/+7
| | | | | | | | |
| * | | | | | | | Moderation: catch HTTPException when applying an infractionGravatar MarkKoz2019-12-09-3/+7
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Only a warning is logged if it's a Forbidden error. Otherwise, the whole exception is logged.
| * | | | | | | | Moderation: show HTTP status code in the log for deactivation failuresGravatar MarkKoz2019-12-09-1/+1
|/ / / / / / / /
| | | | * | | | Converters: rename string to allowed_stringsGravatar MarkKoz2019-12-11-5/+5
| | | | | | | |