|  | Commit message (Collapse) | Author | Age | Lines | 
|---|
| ... |  | 
| | | | | | | | | | | | | | | | | | | 
| | | | | | | | | | | | | | | | | | 
| | | | | | | | | | | | | | | | | | 
| | | | | | | | | | | | | | | | | | 
| | | | | | | | | | | | | | | | | | 
| | | | | | | | | | | | | | | | | | 
| | | | | | | | | | | | | | | | | | 
| | | | | | | | | | | | | | | | | | 
| | | | | | | | | | | | | | | | | | 
| | | | | | | | | | | | | | | | | | | The race condition is when a user claims a channel while their other
channel is being unclaimed. Specifically, it's while their cooldown is
being removed.
The lock ensures that either the cooldown will be re-applied after it's
removed or that it won't be removed since `unclaim_channel` will see the
user has another claimed channel. | 
| | | | | | | | | | | | | | | | | | | 
| | | | | | | | | | | | | | | | | | 
| | | | | | | | | | | | | | | | | | 
| | | | | | | | | | | | | | | | | | 
| | | | | | | | | | | | | | | | | | | It's been determined that asyncio.Lock is safe to use in such manner.
Therefore, replace LockGuard entirely with asyncio.Lock. | 
| | | | | | | | | | | | | | | | | | | 
| | | | | | | | | | | | | | | | | | 
| | | | | | | | | | | | | | | | | | 
| | | | | | | | | | | | | | | | | | 
| | | | | | | | | | | | | | | | | | 
| | | | | | | | | | | | | | | | | | | Narrow the scope of `move_to_dormant` to just moving the channel.
Following the design of `claim_channel`, make `unclaim_channel` handle
cooldowns and unpinning. | 
| | | | | | | | | | | | | | | | | | | |  | 
| | | | | | | | | | | | | | | | | | | 
| | | | | | | | | | | | | | | | | | 
| | | | | | | | | | | | | | | | | | 
| | | | | | | | | | | | | | | | | | | Move significant code related to stats to a separate module. | 
| | | | | | | | | | | | | | | | | | | |  | 
| | | | | | | | | | | | | | | | | | | 
| | | | | | | | | | | | | | | | | | 
| | | | | | | | | | | | | | | | | | 
| | | | | | | | | | | | | | | | | | 
| | | | | | | | | | | | | | | | | | 
| | | | | | | | | | | | | | | | | | 
| | | | | | | | | | | | | | | | | | 
| | | | | | | | | | | | | | | | | | 
| | | | | | | | | | | | | | | | | | | It's conceivable for a user to be able to quickly send a message in all
available channels before the code has a chance to add the cooldown
role.
Place a lock on the author to prevent the claim code from running
multiple times for the same user. | 
| | | | | | | | | | | | | | | | | | | 
| | | | | | | | | | | | | | | | | | 
| | | | | | | | | | | | | | | | | | 
| | | | | | | | | | | | | | | | | | 
| | | | | | | | | | | | | | | | | | 
| | | | | | | | | | | | | | | | | | | It feels safer to do this since the init task moves channels to
different categories and the listeners check if channels are in certain
categories. | 
| | | |_|_|_|_|_|_|_|_|_|_|/ / / / /  
| |/| | | | | | | | | | | | | | |   
| | | | | | | | | | | | | | | | |   
| | | | | | | | | | | | | | | | |   
| | | | | | | | | | | | | | | | |   
| | | | | | | | | | | | | | | | |   
| | | | | | | | | | | | | | | | | | Use the `lock_arg` decorator to keep a separate lock for each channel
rather than a single lock used by all messages. Separate the core logic
in `on_message` into a separate function to facilitate the use of
`lock_arg` - not everything in `on_message` needs to be under the lock. | 
| | |\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \  
| | | | | | | | | | | | | | | | | | 
| | | | | | | | | | | | | | | | | | | Add check does user have permission to get raw message and re-enable raw command | 
| | | |\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \  
| | |/ / / / / / / / / / / / / / / /  
| |/| | | | | | | | | | | | | | | | |  | 
| | |\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \  
| | | | | | | | | | | | | | | | | | | 
| | | | | | | | | | | | | | | | | | | | Make nomination reason optional. | 
| | | |\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \  
| | |/ / / / / / / / / / / / / / / / /  
| |/| | | | | | | | | | | | | | | | | |  | 
| | |\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \  
| | |_|_|_|_|_|_|/ / / / / / / / / / /  
| |/| | | | | | | | | | | | | | | | | |  | 
| | |/ / / / / / / / / / / / / / / / /  
| | | | | | | | | | | | | | | | | |   
| | | | | | | | | | | | | | | | | |   
| | | | | | | | | | | | | | | | | | | Related to #1342. | 
| | | | | | | | | | | | | | | | | | | |  | 
| | | | | | | | | | | | | | | | | | | 
| | | | | | | | | | | | | | | | | | 
| | | | | | | | | | | | | | | | | | | Co-authored-by: Dennis Pham <[email protected]> | 
| | | | | | | | | | | | | | | | | | | 
| | | | | | | | | | | | | | | | | | 
| | | | | | | | | | | | | | | | | | | Co-authored-by: Dennis Pham <[email protected]> | 
| | | | | | | | | | | | | | | | | | | |  | 
| | | |\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \  
| | |/ / / / / / / / / / / / / / / /  
| |/| | | | | | | | | | | | | | | |   
| | | | | | | | | | | | | | | | | | | The cogs folder no longer exists, but the merge command was able to automagically find the correct files to merge into. Nomination reason is now optional. | 
| | |\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \  
| | | | | | | | | | | | | | | | | | | 
| | | | | | | | | | | | | | | | | | | | Fix flake8 pre-commit hook running through PyCharm | 
| | | |\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \  
| | |/ / / / / / / / / / / / / / / / /  
| |/| | | | | | | | | | | | | | | | | |  | 
| | |\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \  
| | | | | | | | | | | | | | | | | | | | 
| | | | | | | | | | | | | | | | | | | | | `!user` command says if a user is "Verified", rather than "Pending" | 
| | | | | | | | | | | | | | | | | | | | | |  | 
| | | |\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \  
| | |/ / / / / / / / / / / / / / / / / /  
| |/| | | | | | | | | | | | | | | | | |   
| | | | | | | | | | | | | | | | | | | | | swfarnsworth/info | 
| | | | | | | | | | | | | | | | | | | | | 
| | | | | | | | | | | | | | | | | | | | 
| | | | | | | | | | | | | | | | | | | | 
| | | | | | | | | | | | | | | | | | | | 
| | | | | | | | | | | | | | | | | | | | | Previously, `!user` said if the user is "Pending", whereas "Verified" is
the boolean opposite. | 
| | | | | | | | | | | | | | | | | | | | | |  | 
| | | | | | | | | | | | | | | | | | | | | |  | 
| | | | | | | | | | | | | | | | | | | | | |  | 
| | | | | | | | | | | | | | | | | | | | | 
| | | | | | | | | | | | | | | | | | | | 
| | | | | | | | | | | | | | | | | | | | 
| | | | | | | | | | | | | | | | | | | | | Reduce the footer to not include reason if it does not exist. | 
| | | | | | | | | | | | | | | | | | | | | 
| | | | | | | | | | | | | | | | | | | | 
| | | | | | | | | | | | | | | | | | | | 
| | | | | | | | | | | | | | | | | | | | 
| | | | | | | | | | | | | | | | | | | | | We want to make the nominate command more attractive for our members of
staff. | 
| | | | | | | | | | | | | | | | | | | | | 
| | | | | | | | | | | | | | | | | | | | 
| | | | | | | | | | | | | | | | | | | | | Co-authored-by: Xithrius <[email protected]> | 
| | | | | | | | | | | | | | | | | | | | | |  | 
| | | | |_|/ / / / / / / / / / / / / / /  
| | |/| | | | | | | | | | | | | | | | |  | 
| | | | | | | | | | | | | | | | | | | | 
| | | | | | | | | | | | | | | | | | | 
| | | | | | | | | | | | | | | | | | | 
| | | | | | | | | | | | | | | | | | | 
| | | | | | | | | | | | | | | | | | | 
| | | | | | | | | | | | | | | | | | | | Cleans up the tests related to the voice sync/kick functions by adding a
helper method to simplify mocking. | 
| | | | | | | | | | | | | | | | | | | | 
| | | | | | | | | | | | | | | | | | | 
| | | | | | | | | | | | | | | | | | | 
| | | | | | | | | | | | | | | | | | | 
| | | | | | | | | | | | | | | | | | | | Cleans up the silence tests by removing unneeded or repeated mocks.
Simplifies tests where possible by joining similar tests. | 
| | | | | | | | | | | | | | | | | | | | 
| | | | | | | | | | | | | | | | | | | 
| | | | | | | | | | | | | | | | | | | 
| | | | | | | | | | | | | | | | | | | 
| | | | | | | | | | | | | | | | | | | | Modifies the unsilence wrapper docstring to make the arguments and
behavior more clear. | 
| | | | | | | | | | | | | | | | | | | | 
| | | | | | | | | | | | | | | | | | | 
| | | | | | | | | | | | | | | | | | | 
| | | | | | | | | | | | | | | | | | | 
| | | | | | | | | | | | | | | | | | | | Moves the tests for the helper method `send_message` to simplify tests,
and avoid repeated code. | 
| | | | | | | | | | | | | | | | | | | | |  | 
| | | | | | | | | | | | | | | | | | | | 
| | | | | | | | | | | | | | | | | | | 
| | | | | | | | | | | | | | | | | | | 
| | | | | | | | | | | | | | | | | | | 
| | | | | | | | | | | | | | | | | | | | Adds error handlers to allow voice channel muting to handle as many
members as possible. | 
| | | | | | | | | | | | | | | | | | | | 
| | | | | | | | | | | | | | | | | | | 
| | | | | | | | | | | | | | | | | | | 
| | | | | | | | | | | | | | | | | | | 
| | | | | | | | | | | | | | | | | | | | Changes the signatures of a few helper methods to make them more
concise and understandable. | 
| |\| | | | | | | | | | | | | | | | | | |  | 
| | |\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \  
| | |/ / / / / / / / / / / / / / / / /  
| |/| | | | | | | | | | | | | | | | | | Some bug fixes | 
| | | |\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \  
| | |/ / / / / / / / / / / / / / / / /  
| |/| | | | | | | | | | | | | | | | | |  | 
| | |\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \  
| | | | | | | | | | | | | | | | | | | | 
| | | | | | | | | | | | | | | | | | | | | Manual verification with `!verify` sends the user the confirmation DM. | 
| | | | | | | | | | | | | | | | | | | | | 
| | | | | | | | | | | | | | | | | | | | 
| | | | | | | | | | | | | | | | | | | | | This was a logic error. This functionality is unfortunately difficult to test outside of production. | 
| | | | | | | | | | | | | | | | | | | | | |  | 
| | | |\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \  
| | |/ / / / / / / / / / / / / / / / / /  
| |/| | | | | | | | | | | | | | | | | |   
| | | | | | | | | | | | | | | | | | | | | swfarnsworth/developer_command | 
| | |\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \  
| | | | | | | | | | | | | | | | | | | | | 
| | | | | | | | | | | | | | | | | | | | | | Move PEP command and utils to own cog, fix bug related not checking status and add GitHub token | 
| | | |\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \  
| | |/ / / / / / / / / / / / / / / / / / /  
| |/| | | | | | | | | | | | | | | | | | | |  |