aboutsummaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeLines
* Use a space instead of an empty string in test_get_status_emoji Gravatar Matteo Bertucci2020-02-18-1/+1
| | | | | Because of the stripping, it should still be considered as empty Co-Authored-By: Mark <[email protected]>
* Delete additional informations from subtest Gravatar Matteo Bertucci2020-02-18-1/+1
| | | | | Reduce visual clutter Co-Authored-By: Mark <[email protected]>
* Split assertions onto separate lines Gravatar Matteo Bertucci2020-02-18-4/+8
| | | | | Reads better as separate lines Co-Authored-By: Mark <[email protected]>
* Split assertion onto separate linesGravatar Matteo Bertucci2020-02-18-1/+2
| | | Co-Authored-By: Mark <[email protected]>
* Snekbox small refactoringGravatar Matteo2020-02-18-4/+3
| | | | | Makes the code a bit clearer Co-authored-by: Shirayuki Nekomata <[email protected]>
* Suppress HTTPException while deleting bot outputGravatar Matteo2020-02-18-2/+4
| | | | It was triggering an error if the user deleted the output before re-evaluating
* Use pregenerated partialsGravatar Matteo2020-02-18-2/+5
| | | | This avoid recreating partials for each re-eval
* Write tests for bot/cogs/test_snekbox.pyGravatar Akarys422020-02-09-0/+363
|
* Create an AsyncContextManagerMock mock for testing asynchronous context managersGravatar Akarys422020-02-09-0/+12
| | | | It can be used to test aiohttp request functions, since they are async context managers
* Use actual functions instead of lambdas for bot.wait_forGravatar Akarys422020-02-09-2/+14
| | | | The use of lambdas made the functions hard to test, this new format allows us to easily test those functions and document them.
* Merge branch 'master' into eval-enhancementsGravatar Matteo Bertucci2020-01-30-350/+648
|\
| * Merge pull request #730 from python-discord/user-info-fixGravatar Mark2020-01-16-1/+5
| |\ | | | | | | Fix user command error for empty custom status
| | * Merge branch 'master' into user-info-fixGravatar Mark2020-01-16-122/+272
| | |\ | | |/ | |/|
| * | Merge pull request #701 from manusaurio/fetched-userGravatar Shirayuki Nekomata2020-01-16-114/+171
| |\ \ | | | | | | | | Support applying infractions to users not in the DB via Converter `FetchedUser`
| | * \ Merge branch 'master' into fetched-userGravatar manusaurio2020-01-16-284/+658
| | |\ \ | | |/ / | |/| |
| * | | Merge pull request #686 from python-discord/feature/645-voice-event-logGravatar Shirayuki Nekomata2020-01-16-8/+101
| |\ \ \ | | | | | | | | | | Log voice channel events
| | * \ \ Merge branch 'master' into feature/645-voice-event-logGravatar Shirayuki Nekomata2020-01-16-577/+1298
| | |\ \ \ | | |/ / / | |/| | |
| | * | | 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.
| | | * | Move Expiry converter alias to converters.pyGravatar MarkKoz2019-12-23-10/+10
| | | | |
| | | * | Refactor user type aliasesGravatar MarkKoz2019-12-23-15/+15
| | | | |
| | | * | Create an alias for a Member + FetchedUser converterGravatar MarkKoz2019-12-23-20/+23
| | | | |
| | | * | Make FetchedUser a subclass of UserConverterGravatar MarkKoz2019-12-22-50/+52
| | | | |
| | | * | Use log.warning instead of the deprecated log.warnGravatar MarkKoz2019-12-22-1/+1
| | | | |
| | | * | Merge branch 'master' into fetched-userGravatar manusaurio2019-12-22-1/+18
| | | |\ \
| | | * | | Show only status code in Discord msg when infraction post failsGravatar MarkKoz2019-12-22-7/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | When debugging, the response_text exceeds the character limit since it's basically an entire HTML document.
| | | * | | Use more specific error message for infraction DM user fetchGravatar MarkKoz2019-12-22-1/+1
| | | | | |
| | | * | | Remove unreachable break in post_infraction loopGravatar MarkKoz2019-12-22-3/+1
| | | | | | | | | | | | | | | | | | | | | | | | * Show the user in the post_infraction error log message
| | | * | | Catch HTTPException in fetching, only fetch if isn't User or MemberGravatar Manuel Ignacio Pérez Alcolea2019-12-22-8/+12
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | There's now a check to see if the `user` argument (possibly a `discord.Object`) needs to be made a `User`, instead of doing so directly, to avoid unnecessary requests to the Discord API. Besides that, a possible HTTPException is catched if it the fetch fails, cancelling the message to be send to the user (which would make the following calls fail later on for not being of the proper type.)
| | | * | | Make `watchchannels` use `FetchedUser` instead of `proxy_user`Gravatar Manuel Ignacio Pérez Alcolea2019-12-22-31/+24
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This changes also removes the original `proxy_user` used by `watchchannels` the attributes in its `discord.Object` object to the one returned by FetchedUser.
| | | * | | Fix bug to log if `user` is either `Member` or `User`Gravatar Manuel Ignacio Pérez Alcolea2019-12-22-1/+1
| | | | | |
| | | * | | Move type declarations for annotations and convertersGravatar Manuel Ignacio Pérez Alcolea2019-12-22-4/+7
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | It turns out how it was originally was the best idea. Now the `infractions` module imports `FetchedUser` and makes a `typing.Union` between it and `utils.UserTypes`. The usage of `FetchedUser` isn't needed in `utils` at all, and it shouldn't be used for/as type hinting there.
| | | * | | Minor refactor moving `return ...`Gravatar Manuel Ignacio Pérez Alcolea2019-12-22-3/+1
| | | | | |
| | | * | | Merge branch 'fetched-user' of https://github.com/manusaurio/bot into ↵Gravatar Manuel Ignacio Pérez Alcolea2019-12-22-1/+1
| | | |\ \ \ | | | | | | | | | | | | | | | | | | | | | fetched-user
| | | | * | | Add space in conditionGravatar manusaurio2019-12-22-1/+1
| | | | | | | | | | | | | | | | | | | | | Co-Authored-By: Mark <[email protected]>
| | | * | | | Add descriptive message to exception if user from API doesn't existGravatar Manuel Ignacio Pérez Alcolea2019-12-22-1/+1
| | | |/ / /
| | | * | | Correct log messages levels, add log messages and ctx.send messageGravatar Manuel Ignacio Pérez Alcolea2019-12-22-7/+12
| | | | | |
| | | * | | Merge branch 'master' into fetched-userGravatar manusaurio2019-12-20-29/+26
| | | |\ \ \
| | | * | | | "Correct indentation style"Gravatar Manuel Ignacio Pérez Alcolea2019-12-20-2/+4
| | | | | | |
| | | * | | | Move `utils.proxy_user` to Converters and do minor refactoringGravatar Manuel Ignacio Pérez Alcolea2019-12-20-55/+29
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The `proxy_user` function now belongs to the `Converters` module, since its use is directly related to it. `FetchedUser` uses this function if there's an error trying to fetch and it doesn't indicate a non existing user. Technically finished and working.
| | | * | | | Make post_user take default values for payload from `getattr`Gravatar Manuel Ignacio Pérez Alcolea2019-12-20-20/+12
| | | | | | |
| | | * | | | Make `FetchedUser` return a `discord.Object` if user *may* existGravatar Manuel Ignacio Pérez Alcolea2019-12-20-7/+35
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The FetchedUser Converter now counts with a `proxy_user` helper function (which SHOULD NOT be there) to return a user as a last resource, in case there was an issue fetching from the Discord API, as long as the error isn't that there's no user with the given ID.
| | | * | | | Give `post_user` default values for `payload` if absent in `user`Gravatar Manuel Ignacio Pérez Alcolea2019-12-20-19/+26
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Now `post_user(...)` expects either a `discord.User` or a `discord.Object` object as `user`. Either way, it will try to take the relevant attributes from `user` to fill the DB columns. If it can't be done, `.avatar_hash`, `.discriminator`, and `name` will take default values.