|  | Commit message (Collapse) | Author | Age | Lines | 
|---|
| ... |  | 
| | | |_|_|_|_|_|_|_|/  
| |/| | | | | | | |   
| | | | | | | | | |   
| | | | | | | | | |   
| | | | | | | | | |   
| | | | | | | | | | | Changed the pagination emoji collection from list to tuple
This change was suggested since this collection is constant | 
| | | | | | | | | | | |  | 
| | | | | | | | | | | |  | 
| | | | | | | | | | | |  | 
| | | | | | | | | | | |  | 
| | | | | | | | | | | |  | 
| | | | | | | | | | | |  | 
| | | | | | | | | | | 
| | | | | | | | | | 
| | | | | | | | | | 
| | | | | | | | | | | __class__ attribute, and re-add the None check for !user roles. | 
| | | | | | | | | | | |  | 
| | | | | | | | | | | 
| | | | | | | | | | 
| | | | | | | | | | 
| | | | | | | | | | | (hopefully). | 
| | | | | | | | | | | 
| | | | | | | | | | 
| | | | | | | | | | 
| | | | | | | | | | | second cannot be true making it unneccesary to check | 
| | | | | | | | | | | 
| | | | | | | | | | 
| | | | | | | | | | 
| | | | | | | | | | | for just 1 or 2 uses (e.g. Union, and Message). | 
| | | | | | | | | | | 
| | | | | | | | | | 
| | | | | | | | | | 
| | | | | | | | | | | to a list, and then send them it at once (less spammy) | 
| | | | | | | | | | | |  | 
| | | | | | | | | | | |  | 
| | | | | | | | | | | |  | 
| | | | | | | | | | | 
| | | | | | | | | | 
| | | | | | | | | | 
| | | | | | | | | | | and non-verified users cannot use this command. | 
| | | | | | | | | | | 
| | | | | | | | | | 
| | | | | | | | | | 
| | | | | | | | | | | the list | 
| | | | | | | | | | | |  | 
| | |_|_|_|/ / / / /  
|/| | | | | | | | |  | 
| | |/ / / / / / /  
|/| | | | | | | |  | 
| | | | | | | | | |  | 
| | | | | | | | | |  | 
| |\ \ \ \ \ \ \ \  
| | | | | | | | | 
| | | | | | | | | | Add test cases for antispam rules, fix bug in attachments rule & test | 
| | |\ \ \ \ \ \ \ \  
| |/ / / / / / / /  
|/| | | | | | | | |  | 
| |\ \ \ \ \ \ \ \ \  
| | | | | | | | | | 
| | | | | | | | | | | Sentry SDK setup | 
| | | | | | | | | | | |  | 
| | | | | | | | | | | |  | 
| | | | | | | | | | | |  | 
| | | | | | | | | | | |  | 
| | | | | | | | | | | |  | 
| | | | | | | | | | | 
| | | | | | | | | | 
| | | | | | | | | | 
| | | | | | | | | | | command context. | 
| | | | | | | | | | | |  | 
| | | | | | | | | | | |  | 
| |/ / / / / / / / / |  | 
| |\ \ \ \ \ \ \ \ \  
| | | | | | | | | | 
| | | | | | | | | | | Refactor logging setup to be more explicit and cleaner. | 
| | | | | | | | | | | |  | 
| |/ / / / / / / / / |  | 
| |\ \ \ \ \ \ \ \ \  
| |_|/ / / / / / /  
|/| | | | | | | | | Show created date and duration in expired infraction log | 
| | |\ \ \ \ \ \ \ \  
| |/ / / / / / / /  
|/| | | | | | | | |  | 
| | |_|_|/ / / / /  
|/| | | | | | |   
| | | | | | | |   
| | | | | | | |   
| | | | | | | |   
| | | | | | | |   
| | | | | | | |   
| | | | | | | | | NGINX has been dockerised, and proxy passes now reference internal container domains rather than referencing host or external domains.
This will have a few extra benefits:
 - Less external factors involved for resolving the service address
 - Can work with the same address on development envs
 - Snekbox can be closed down entirely so it's inaccessible from external networks. | 
| | | | | | | | | |  | 
| | | | | | | | | |  | 
| | | | | | | | | 
| | | | | | | | 
| | | | | | | | 
| | | | | | | | 
| | | | | | | | | The bot user was always being used instead of using the actor field
of the infraction. | 
| | | | | | | | | 
| | | | | | | | 
| | | | | | | | 
| | | | | | | | | Closes #685 | 
| |/ / / / / / /  
| | | | | | |   
| | | | | | |   
| | | | | | |   
| | | | | | |   
| | | | | | |   
| | | | | | |   
| | | | | | |   
| | | | | | | | The absolute value is useful for preventing negative values in the case
that date_to is in the past relative to date_from.
* Add an absolute parameter to take the absolute value of the duration
* Rename expiry to date_to
* Rewrite the docstring | 
| |\ \ \ \ \ \ \  
| |_|_|_|/ / /  
|/| | | | | | | Stop scheduling expiration of permanent infractions on edit | 
| |/ / / / / /  
| | | | | |   
| | | | | |   
| | | | | |   
| | | | | |   
| | | | | |   
| | | | | |   
| | | | | |   
| | | | | |   
| | | | | |   
| | | | | |   
| | | | | |   
| | | | | |   
| | | | | |   
| | | | | |   
| | | | | |   
| | | | | |   
| | | | | |   
| | | | | |   
| | | | | |   
| | | | | |   
| | | | | |   
| | | | | |   
| | | | | |   
| | | | | | | https://github.com/python-discord/bot/issues/751
The infraction edit command defined in `bot.cogs.moderation.management` contained a bug causing it to attempt to schedule an expiration task when turning a temporary infraction into a permanent infraction. Since the "expires_at" field of a permanent infractions is `None`, this caused an exception to occur in the scheduler:
Traceback (most recent call last):
  File "/bot/bot/cogs/moderation/scheduler.py", line 415, in _scheduled_task
    expiry = dateutil.parser.isoparse(infraction["expires_at"]).replace(tzinfo=None)
  File "/usr/local/lib/python3.7/site-packages/dateutil/parser/isoparser.py", line 37, in func
    return f(self, str_in, *args, **kwargs)
  File "/usr/local/lib/python3.7/site-packages/dateutil/parser/isoparser.py", line 134, in isoparse
    components, pos = self._parse_isodate(dt_str)
  File "/usr/local/lib/python3.7/site-packages/dateutil/parser/isoparser.py", line 208, in _parse_isodate
    return self._parse_isodate_common(dt_str)
  File "/usr/local/lib/python3.7/site-packages/dateutil/parser/isoparser.py", line 213, in _parse_isodate_common
    len_str = len(dt_str)
TypeError: object of type 'NoneType' has no len()
I have solved this by adding a check that makes sure we only schedule an expiration task when the `"expires_at"` field has a truthy value (which all valid datetime strings are) using `if request_data['expires_at']`.
IMPORTANT NOTE: While it's tempting to just skip the entire scheduling block for permanent infractions, it's essential to unschedule existing expiration tasks for this infraction as we're changing a temporary infraction to a permanent infraction.
This commit closes #751 | 
| | | | | | | |  | 
| | | | | | | |  |