|  | Commit message (Collapse) | Author | Age | Lines | 
|---|
| ... |  | 
| | | | | | | | | | | | | |  | 
| | | | | | | | | | | | | 
| | | | | | | | | | | | 
| | | | | | | | | | | | 
| | | | | | | | | | | | | `end_msg`. | 
| | | | | | | | | | | | | |  | 
| | | | | | | | | | | | | |  | 
| | | | | | | | | | | | | 
| | | | | | | | | | | | 
| | | | | | | | | | | | 
| | | | | | | | | | | | | reordered ModLog text. | 
| | | | | | | | | | | | | 
| | | | | | | | | | | | 
| | | | | | | | | | | | 
| | | | | | | | | | | | | whole embed in `notify_infraction`. | 
| | | | | | | | | | | | | 
| | | | | | | | | | | | 
| | | | | | | | | | | | 
| | | | | | | | | | | | | order of ModLog embed description item in same function. | 
| | | | | | | | | | | | | |  | 
| | | | | | | | | | | | | 
| | | | | | | | | | | | 
| | | | | | | | | | | | 
| | | | | | | | | | | | | to 1500, added shortening to end message too. | 
| | | | | | | | | | | | | |  | 
| | | | | | | | | | | | | 
| | | | | | | | | | | | 
| | | | | | | | | | | | 
| | | | | | | | | | | | | creating. | 
| | | | | | | | | | | | | 
| | | | | | | | | | | | 
| | | | | | | | | | | | 
| | | | | | | | | | | | | truncated for Audit Log. | 
| | | | | | | | | | | | | |  | 
| | | | | | | | | | | | | |  | 
| | | | | | | | | | | | | 
| | | | | | | | | | | | 
| | | | | | | | | | | | 
| | | | | | | | | | | | | shorten already include `placeholder` to length. | 
| | | | | | | | | | | | | |  | 
| | | | | | | | | | | | | |  | 
| | | | | | | | | | | | | |  | 
| | | | | | | | | | | | | 
| | | | | | | | | | | | 
| | | | | | | | | | | | 
| | | | | | | | | | | | | Audit Log when kick reason length is more than 512 characters. | 
| | | | | | | | | | | | | 
| | | | | | | | | | | | 
| | | | | | | | | | | | 
| | | | | | | | | | | | | Log when ban reason length is more than 512 characters. | 
| | | | | | | | | | | | | 
| | | | | | | | | | | | 
| | | | | | | | | | | | 
| | | | | | | | | | | | 
| | | | | | | | | | | | | This de-clutters the main `server_info` function and improves its
readability. | 
| | | | | | | | | | | | | 
| | | | | | | | | | | | 
| | | | | | | | | | | | 
| | | | | | | | | | | | 
| | | | | | | | | | | | 
| | | | | | | | | | | | 
| | | | | | | | | | | | 
| | | | | | | | | | | | 
| | | | | | | | | | | | 
| | | | | | | | | | | | | Simplification comes from being able to access permissions as attributes
on the overwrite object. This removes the need to iterate all
permissions.
Efficiency comes from checking all roles within a single iteration of
all channels. This also removes the need to flatten and filter the
channels afterwards, which required additional iterations. | 
| | | | | | | | | |\ \ \ \  
| | |_|_|_|_|_|_|/ / / /  
| |/| | | | | | | | | | |  | 
| | |\ \ \ \ \ \ \ \ \ \ \  
| | |_|_|_|_|/ / / / / /  
| |/| | | | | | | | | | | Specify encoding when reading tag files | 
| | |/ / / / / / / / / /  
| | | | | | | | | | |   
| | | | | | | | | | |   
| | | | | | | | | | |   
| | | | | | | | | | |   
| | | | | | | | | | |   
| | | | | | | | | | |   
| | | | | | | | | | | | Not all operating systems use UTF-8 as the default encoding. For systems
that don't, reading tag files with Unicode would cause an unhandled
exception.
(cherry picked from commit adc75ff9bbcf8b905bd78c78f253522ae5e42fc3) | 
| | | | | | | | | | | | 
| | | | | | | | | | | 
| | | | | | | | | | | 
| | | | | | | | | | | 
| | | | | | | | | | | 
| | | | | | | | | | | 
| | | | | | | | | | | | We're using the set comprehension to prevent duplicates anyway, so
flipping these back makes more sense.
Also added a missing ctx and tested ok. | 
| | | | | | | | | | | | 
| | | | | | | | | | | 
| | | | | | | | | | | 
| | | | | | | | | | | 
| | | | | | | | | | | 
| | | | | | | | | | | 
| | | | | | | | | | | 
| | | | | | | | | | | 
| | | | | | | | | | | 
| | | | | | | | | | | | - We're using a set comprehension and flipping the order for counting
  the number of channels that are both staff allow and @everyone deny.
- We're breaking the staff channel count stuff into a separate helper
  function so it doesn't crowd the server_info() scope.
These fixes are both to address the code review from @MarkKoz, thanks
Mark. | 
| | | | | | | | | | | | 
| | | | | | | | | | | 
| | | | | | | | | | | 
| | | | | | | | | | | | I wish this test didn't exist. | 
| | | | | | | | | | | | 
| | | | | | | | | | | 
| | | | | | | | | | | 
| | | | | | | | | | | 
| | | | | | | | | | | 
| | | | | | | | | | | 
| | | | | | | | | | | 
| | | | | | | | | | | 
| | | | | | | | | | | 
| | | | | | | | | | | | We now check:
- Does the @everyone role have explicit read deny permissions?
- Do staff roles have explicit read allow permissions?
If the answer to both of these are yes, it's a staff channel.
By 'staff roles', I mean Helpers, Moderators or Admins. | 
| | | | | | | | |\ \ \ \  
| | |_|_|_|_|_|/ / / /  
| |/| | | | | | | | | |  | 
| | |\ \ \ \ \ \ \ \ \ \  
| | |_|_|_|/ / / / / /  
| |/| | | | | | | | | | Ignore response when posting python news | 
| | | |\ \ \ \ \ \ \ \ \  
| | |/ / / / / / / / /  
| |/| | | | | | | | | |  | 
| | | | | | | | | | | | 
| | | | | | | | | | | 
| | | | | | | | | | | | Sometimes a mailing list user doesn't press respond correctly to the email, and so a response is sent as a separate thread. To keep only new threads in the channel, we need to ignore those. | 
| | | | | | | | | | | | |  | 
| | | |_|_|_|_|/ / / /  
| |/| | | | | | | |   
| | | | | | | | | |   
| | | | | | | | | |   
| | | | | | | | | |   
| | | | | | | | | | | Cleaning up a particularly dirty line by turning it into like 10 lines,
and also adding the number of channels that are hidden to the
`@everyone` role - which we're classifying as "Staff channels". | 
| | |\ \ \ \ \ \ \ \ \  
| | |/ / / / / / / /  
| |/| | | | | | | | |  | 
| | | | | | | | | | | 
| | | | | | | | | | 
| | | | | | | | | | 
| | | | | | | | | | 
| | | | | | | | | | 
| | | | | | | | | | 
| | | | | | | | | | 
| | | | | | | | | | 
| | | | | | | | | | 
| | | | | | | | | | 
| | | | | | | | | | 
| | | | | | | | | | 
| | | | | | | | | | 
| | | | | | | | | | 
| | | | | | | | | | 
| | | | | | | | | | | Discord has introduced a new, strict rate limit for individual channel
edits that reduces the number of allow channel name/channel topic
changes to 2 per 10 minutes per channel.
Unfortunately, our help channel system frequently goes over that rate
limit as it edits the name and topic of a channel on all three "move"
actions we have: to available, to occupied, and to dormant. In addition,
our "unanswered" feature adds another channel name change on top of
the move-related edits.
That's why I've removed the topic/emoji changing features from the help
channel system. This means we now have a generic topic that fits all
three categories and no status emojis in the channel names. | 
| | |/ / / / / / / /  
| | | | | | | | |   
| | | | | | | | |   
| | | | | | | | |   
| | | | | | | | |   
| | | | | | | | |   
| | | | | | | | |   
| | | | | | | | |   
| | | | | | | | |   
| | | | | | | | | | The `check_for_answer` method of the HelpChannels cog relies on the
channel->claimant cache being available. However, as this cache is
(currently) lost during bot restarts, this method may fail with a
KeyError exception.
I've used `dict.get` with an `if not claimant: return` to circumvent
this issue. | 
| | | |_|_|_|/ / /  
| |/| | | | | |   
| | | | | | | | | Increase every shown rule uses count when command called. | 
| | | | | | | | | 
| | | | | | | | 
| | | | | | | | 
| | | | | | | | 
| | | | | | | | 
| | | | | | | | 
| | | | | | | | | The `msg` arg is for displaying a message when the assertion fails. To
match against the exception's message, `assertRaisesRegex` must be used.
Since all of the messages are meant to be interpreted literally rather
than as regex, `re.escape` is used. | 
| | | | | | | | | |  | 
| | | | | | | | | |  | 
| | | | | | | | | |  | 
| | | | | | | | | 
| | | | | | | | 
| | | | | | | | 
| | | | | | | | 
| | | | | | | | 
| | | | | | | | | `datetime` objects only support a year up to 9999.
Fixes #906 | 
| | | | | | | | | |  | 
| | | | | | | | | |  | 
| | | | | | | | | 
| | | | | | | | 
| | | | | | | | | Co-authored-by: Joseph Banks <[email protected]> | 
| | | | | | | | | 
| | | | | | | | 
| | | | | | | | | Co-authored-by: Joseph Banks <[email protected]> | 
| | | | | | | | | |  | 
| | | | | | | | | 
| | | | | | | | 
| | | | | | | | 
| | | | | | | | 
| | | | | | | | 
| | | | | | | | | When cogs reload, it would consider their namespace as a conflict with
the original namespace. This feature will be removed as a fix until we
come up with a better solution. |