| Commit message (Collapse) | Author | Age | Lines |
| | |
|
| | |
|
| | |
|
| | |
|
| | |
|
| | |
|
| |
|
|
|
| |
It's annotated as returning a bool and when the split fails it already
returns False. To be consistent, it should always return a bool.
|
| |
|
|
|
|
|
| |
In practice, this won't ever happen since the regex wouldn't match
strings with missing parts. However, the function does check it so may
as well test it. It's not necessarily bound to always use inputs from
the regex either I suppose.
|
| |
|
|
|
|
|
|
| |
The original approach of messing with the `attribute_name` didn't work
for reasons I won't discuss here (would require knowledge of patcher
internals). The new approach doesn't use patch.multiple but mimics it by
applying multiple patch decorators to the function. As a consequence,
this can no longer be used as a context manager.
|
| | |
|
| | |
|
| | |
|
| |
|
|
|
|
| |
It's not possible to test this via asserting the return value of
`on_message` since it never returns anything. Instead, the actual
relevant unit, `find_token_in_message,` should be tested.
|
| |
|
|
|
| |
This gives the caller more flexibility. Sometimes attribute names are
too long or they don't follow a naming scheme accepted by the linter.
|
| | |
|
| | |
|
| |
|
|
|
|
| |
This helper reduces redundancy/boilerplate by setting default values.
It also has the consequence of shortening the length of the invocation,
which makes it faster to use and easier to read.
|
| | |
|
| | |
|
| |
|
|
|
|
|
|
|
|
| |
The token uses base64 and base64 only allows ASCII characters. Thus, if
a match has non-ASCII characters, it's not a valid token. Catching the
ValueError is simpler than trying to adjust the regex to only match
valid base64.
Fixes #928
Fixes BOT-3X
|
| |\
| |
| |
| |
| | |
python-discord/feature/hemlock/perma-ban-override-temp
Perma Bans now Overwrite Temp Bans
|
| | |\
| |/
|/| |
|
| |\ \
| | |
| | | |
Add remindme alias for the remind command
|
| |/ / |
|
| |\ \
| | |
| | | |
Remove the mention command and configuration settings for it
|
| | |\ \
| |/ /
|/| | |
|
| |\ \ \
| | | |
| | | | |
Use selector event loop on Windows
|
| | |\ \ \
| |/ / /
|/| | | |
|
| |\ \ \ \
| | | | |
| | | | |
| | | | |
| | | | | |
python-discord/bug/backend/911/log-listener-exceptions
Log unhandled errors from event listeners
|
| | |\ \ \ \
| |/ / / /
|/| | | | |
|
| |\ \ \ \ \
| | | | | |
| | | | | | |
Update to Antimalware Filter (.txt uploads)
|
| | |\ \ \ \ \
| |/ / / / /
|/| | | | | |
|
| | | | | | |
| | | | | |
| | | | | |
| | | | | | |
than 2000 chars
|
| | | | | | |
| | | | | |
| | | | | |
| | | | | | |
longer than 2000 characters
|
| | | | | | |
| | | | | |
| | | | | |
| | | | | | |
longer than 2000 characters
|
| | | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | | |
By default, discord.py prints them to stderr. To better help detect such
errors in production, they should instead be logged with an appropriate
log level. Some sentry metadata has also been included.
`on_error` doesn't work as a listener in a cog so it's been put in the
Bot subclass.
Fixes #911
|
| | | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | | |
`BaseTransport.close()` is not a coroutine and therefore should not
be awaited.
|
| | | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | | |
aiodns requires the selector event loop for asyncio. In Python 3.8,
the default event loop for Windows was changed to proactor. To fix this,
the event loop is explicitly set to selector.
|
| | | | | | | |
|
| | |_|_|/ /
|/| | | |
| | | | |
| | | | |
| | | | |
| | | | | |
It was made obsolete by a new Discord feature. Users can be granted a
permission to mention a role despite the role being set as
non-mentionable.
|
| | | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
Another refactor/cleaning to make the logic clearer and easier to understand. Also cleaned up the trace logs to be shorter and more concise. Thanks, @scragly!
Co-authored-by: scragly <[email protected]>
|
| | | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
- Refined the logic for `apply_ban()` even further to be cleaner. (Thanks, @MarkKoz!)
Signed-off-by: Daniel Brown <[email protected]>
|
| | | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
- Changed docstring explanation and function name of `get_active_infractions` to `get_active_infraction()` to better convey that only one infraction is returned. Also changed all relevant uses to reflect that change.
- Added explanation of parameter `send_msg` to the doc strings of `pardon_infraction()` and `get_active_infraction()`
- Adjusted placement of `log.trace()` in `pardon_infraction()`
- Adjusted logic in `apply_ban()` to remove redundant check.
- Adjusted logic in `apply_ban()` to be consistent with other checks.
Signed-off-by: Daniel Brown <[email protected]>
|
| | | | | |\
| |_|_|_|/
|/| | | | |
|
| |\ \ \ \ \
| |/ / / /
|/| | | | |
Display animated avatars in the user info command
|
| | | | | | |
|
| |/ / / /
| | | |
| | | |
| | | | |
Fixes #914
|
| | |_|/
|/| |
| | |
| | |
| | |
| | |
| | |
| | | |
- Changed `has_active_infraction` to `get_active_infractions` in order to add additional logic in `apply_ban`.
- Added `send_msg` parameters to `pardon_infraction` and `get_active_infractions` so that multi-step checks and actions don't need to send additional messages unless told to do so.
Signed-off-by: Daniel Brown <[email protected]>
|
| |/ /
| |
| |
| | |
help channel
|
| |\ \
| | |
| | | |
Sort help channels and add support for `how-to-get-help` channel
|