aboutsummaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeLines
...
| | | * | | HelpChannels: implement create_dormantGravatar MarkKoz2020-03-22-2/+16
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Create and return a new channel in the Dormant category or return None if no names remain. The overwrites get synced with the category if none are explicitly specified for the channel.
| | | * | | HelpChannels: implement get_idle_timeGravatar MarkKoz2020-03-22-3/+15
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | A design change was made to account for a channel being empty i.e. no messages ever sent. In such case, the function will return None. * Move a channel to the Dormant category if the channel has no messages
| | | * | | HelpChannels: make move_idle_channels only handle a single channelGravatar MarkKoz2020-03-22-10/+11
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This function will get re-used in _scheduled_task, but it will only need to move a single channel. Therefore, to promote code re-use, this change was made. The init_cog will instead do a loop to call this on all channels in the in-use category.
| | | * | | HelpChannels: fix creation of queues in init_cogGravatar MarkKoz2020-03-22-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * Remove await from create_channel_queue * Call the correct function to create the name queue
| | | * | | HelpChannels: implement move_idle_channelsGravatar MarkKoz2020-03-22-1/+10
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Make all in-use channels dormant if idle or schedule the move if still active. This is intended to clean up the in-use channels when the bot restarts and has lost the tasks it had scheduled in another life.
| | | * | | Constants: add a named tuple for scheduled task dataGravatar MarkKoz2020-03-22-2/+9
| | | | | |
| | | * | | Constants: implement init_availableGravatar MarkKoz2020-03-22-0/+5
| | | | | | | | | | | | | | | | | | | | | | | | Initialises the Available category with channels if any are missing.
| | | * | | Constants: add a help channel name prefix constantGravatar MarkKoz2020-03-22-1/+5
| | | | | |
| | | * | | HelpChannels: implement create_channel_queueGravatar MarkKoz2020-03-22-2/+15
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | It returns a queue of dormant channels in random order. The queue will be used to get the next available channel. Using a random order is simpler than trying to sort by the timestamp of the most recent message in each channel and this decision will only "negatively" impact the system when the bot restarts or the extension is reloaded. Ultimately, it just means in such events some dormant channels may chosen to become active again sooner than expected.
| | | * | | HelpChannels: only yield text channels from a categoryGravatar MarkKoz2020-03-22-2/+2
| | | | | |
| | | * | | HelpChannels: retrieve category channels more efficientlyGravatar MarkKoz2020-03-22-7/+15
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The channels property of categories sorts the channels before returning them. * Add a generator function to get category channels
| | | * | | HelpChannels: implement create_name_queueGravatar MarkKoz2020-03-22-1/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | It returns a queue of element names to use for creating new channels, taking into account which names are already being used.
| | | * | | HelpChannels: add a function to return used channel namesGravatar MarkKoz2020-03-22-0/+13
| | | | | |
| | | * | | HelpChannels: set a ready event when cog initialisation completesGravatar MarkKoz2020-03-22-0/+3
| | | | | |
| | | * | | HelpChannels: cancel the init task when unloading the cogGravatar MarkKoz2020-03-22-1/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This will prevent initialisation from proceeding when the category channels fail to be retrieved.
| | | * | | HelpChannels: add a function to initialise the cogGravatar MarkKoz2020-03-22-0/+17
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | It's created as a task in __init__ because coroutines cannot be awaited in there.
| | | * | | HelpChannels: add a function to init the categoriesGravatar MarkKoz2020-03-22-0/+16
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | As the categories are essential for the functionality of the cog, if this function fails to get a category, it will remove/unload the cog.
| | | * | | HelpChannels: add a function to get a channel or fetch it from APIGravatar MarkKoz2020-03-22-0/+8
| | | | | |
| | | * | | HelpChannels: add a loggerGravatar MarkKoz2020-03-22-0/+3
| | | | | |
| | | * | | HelpChannels: add method stubsGravatar MarkKoz2020-03-22-1/+48
| | | | | |
| | | * | | Constants: add help category constantsGravatar MarkKoz2020-03-22-3/+7
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The original category was re-purposed as the "in-use" category so that deployment of the new system will not interrupt ongoing help sessions.
| | | * | | HelpChannels: add constants for active/dormant messagesGravatar MarkKoz2020-03-22-0/+24
| | | | | |
| | | * | | Constants: add constants for HelpChannels cogGravatar MarkKoz2020-03-22-0/+19
| | | | | |
| | | * | | HelpChannels: load element names from JSONGravatar MarkKoz2020-03-22-0/+7
| | | | | |
| | | * | | HelpChannels: create boilerplate extension and cogGravatar MarkKoz2020-03-22-0/+12
| | | | | |
| | | * | | Resources: add JSON with array of chemical element namesGravatar MarkKoz2020-03-22-0/+120
| | | | | |
| | | | * | Help: lower score cutoff for fuzzy matchGravatar Mark2020-04-01-1/+1
| | | | | |
| | | | * | Fix linting?Gravatar mathsman51332020-03-31-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | Not sure why my precommit didn't pick that up...
| | | | * | Merge branch 'master' of https://github.com/python-discord/bot into ↵Gravatar mathsman51332020-03-31-375/+1918
| | | | |\ \ | | | | | | | | | | | | | | | | | | | | | help-refactor
| | | | * | | Apply suggestions from review.Gravatar mathsman51332020-03-31-12/+9
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | - Make exception handling for bin reaction more specific - Channel constants were updated recently - Suggest category names - Tidy up signature formatting - Move score cutoff to 80 to allow a few more matches
| | | | * | | Merge branch 'master' of https://github.com/python-discord/bot into ↵Gravatar mathsman51332020-03-12-2207/+4239
| | | | |\ \ \ | | | |_|/ / / | | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | help-refactor  Conflicts:  bot/cogs/help.py
| | | | * | | Apply suggestions from Mark's code review.Gravatar mathsman51332020-03-10-60/+63
| | | | | | |
| | | | * | | Use the new :trashcan: emoji to delete the help message, as per #625Gravatar mathsman51332020-02-10-4/+5
| | | | | | |
| | | | * | | Merge branch 'master' of https://github.com/python-discord/bot into ↵Gravatar mathsman51332020-02-10-3174/+7258
| | | | |\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | help-refactor  Conflicts:  bot/cogs/help.py
| | | | * | | | Remove trailing commaGravatar mathsman51332019-11-16-1/+1
| | | | | | | |
| | | | * | | | Apply suggestions from reviewGravatar mathsman51332019-11-16-24/+13
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | - Description was the same as prefix parameter of paginator - Cleanup is redundant pending closure of #514 - Clean/fix couple if statements in help.py
| | | | * | | | Show a maximum of 8 commands per page rather than 5.Gravatar mathsman51332019-11-03-1/+1
| | | | | | | |
| | | | * | | | Few changes to keep formatting same as currentGravatar mathsman51332019-10-13-5/+16
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | - Change `add_field` back to `description` for error message possible matches - Only add `Commands` and `Subcommands` if subcommands exist to cog/group/command help
| | | | * | | | Add a special case for when the help command invokes wolfram checks.Gravatar mathsman51332019-10-13-0/+8
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | - Before, running `!help` would invoke the cooldown check, and increase the cooldown counter unnecessarily as no wolfram API calls were being made. - Once `!help` was called enough, the bot would send an error embed to let you know your wolfram cooldown has expired.
| | | | * | | | Minor formatting changes to align with current help.Gravatar mathsman51332019-10-12-2/+2
| | | | | | | |
| | | | * | | | Refactor the `Help` command.Gravatar mathsman51332019-10-12-475/+287
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | - `redirect_output` has been adjusted to run the `delete_invocation` inside a task as the help command will wait for that to run before sending the help or doing anything else. - `pagination` has been adjusted to support deleting the paginated message if `cleanup` is True, and an optional `description` that is present through all pages of pagination. - The help command has been refactored to subclass `commands.HelpCommand`. This means that it now supports methods such as `ctx.send_help(ctx.command)`. - `help_cleanup` provides the opportunity to use the :x: reaction to cleanup help even with no pagination. - Pagination purely happens through the `LinePaginator`, forcing a pagination session with 1 line per page where we format the page style before sending it through. - Categories are properly dealt with by finding a match and sending a seperate help where a named tuple of the Category name, description and relevant cogs is the only parameter. - Choices for when a command was not found has been updated to include category names, cog names, aliases of group and command names, and include all subcommands and aliases. This should provide a more helpful output when an error message is sent - Sending command, group, cog, category and bot help has been split into different functions that are called from `command_callback`. This provides an easier way to alter future changes, and cleans up code considerably. - Important note: no outward facing formatting should have changed. Any desired changes can be discussed in review.
| | | | | | | * Fix incomplete variable renamingGravatar decorator-factory2020-05-17-1/+1
| | | | | | | |
| | | | | | | * Rename `string` to `greeting`Gravatar decorator-factory2020-05-17-10/+10
| | | | | | | |
| | | | | | | * Add a note on user-defined classesGravatar decorator-factory2020-05-17-1/+1
| | | | | | | |
| | | | | | | * Change standalone programs to interactive sessionsGravatar decorator-factory2020-05-17-8/+13
| | | | | | | |
| | | | | | | * Apply language improvements proposed from kwzrdGravatar decorator-factory2020-05-17-3/+3
| | | | | | | | | | | | | | | | | | | | | | | | Co-authored-by: kwzrd <[email protected]>
| | | | | | | * Fix hard-wrapping in mutability.mdGravatar decorator-factory2020-04-01-7/+5
| | | | | | | |
| | | | | | | * header->bold in mutability.mdGravatar decorator-factory2020-04-01-1/+1
| | | | | | | |
| | | | | | | * Add mutability.md tagGravatar decorator-factory2020-04-01-0/+34
| |_|_|_|_|_|/ |/| | | | | |
* | | | | | | Merge pull request #852 from ks129/infraction-editGravatar S. Co12020-03-31-1/+6
|\ \ \ \ \ \ \ | | | | | | | | | | | | | | | | Don't let change expiration time when infraction already expired.