| Commit message (Collapse) | Author | Lines |
|
* Simplify output format of batch reload with only 1 list of failures
* Show success/failure emoji for batch reloads
* Simplify logic in the manage() function
* Clean up some imports
|
|
* Rename reload_all to batch_reload
|
|
|
|
|
|
* Rewrite docstrings for commands
* Rename KEEP_LOADED to UNLOAD_BLACKLIST and make it a set
* Change single quotes to double quotes
* Add "cogs" as an alias to the extensions group
|
|
* Store just the names rather than entire ModuleInfo objects
* Fix prefix argument
|
|
The converter fully qualifies the extension's name and ensures the
extension exists.
* Make the extensions set a module constant instead of an instant
attribute and make it a frozenset.
* Add a cog error handler to handle BadArgument locally and prevent the
help command from showing for such errors.
|
|
|
|
|
|
The cog now keeps a set of full qualified names of all extensions.
|
|
|
|
|
|
Co-Authored-By: Mark <[email protected]>
|
|
|
|
|
|
|
|
|
|
https://github.com/python-discord/bot/issues/482
There was small bug in the `cog_unload` method of the WatchChannel
ABC in `bot.cogs.watchchannels.watchchannel`. The problem was that it
tries to check if the Task assigned to `self._consume_task` is done
by accessing its `done` method. However, if a watch channel has not
yet relayed messages after the bot has started, it will not have a
consumption task yet, meaning this `_consume_task` attribute will be
assigned to `None`.
The solution is to change the `if` condition to:
`if self._consume_task and not self._consume_task.done():`
This commit closes #482
|
|
|
|
This splits the former !site resources into two separate commands,
one for !site resources and one for !site tools. This makes sense
now that we've split up the lists into two pages.
It also adds a new alias, !tools, to call this command.
This addresses #478.
https://github.com/python-discord/bot/issues/478
|
|
|
|
|
|
Co-Authored-By: S. Co1 <[email protected]>
|
|
It looks silly
|
|
https://github.com/python-discord/bot/issues/474
This commit makes sure we're using the PATCH method to update tags,
instead of the POST method. The problem was that the `!tags edit`
command was an alias of `!tags set`, which uses the POST method to
post new tags to the API.
However, when a tag with a given name already exists, the API will
refuse a POST request in an attempt to update it; we need to use the
PATCH method to the `bot/tags/{tag_name}` endpoint instead.
I fixed this by creating a separate subcommand, `!tags edit`, that
uses the correct PATCH method to update an existing tag.
This commit closes #474
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Co-Authored-By: Mark <[email protected]>
|
|
|
|
Anyone who is not a Rockstar, a Partner, or a member of staff
will still be redirected to #bot-commands.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
The watchchannel ABC defined its own private utility function to
format ISO datetime strings to something more human-readable. I have
removed this private utility function and replaced the calls to it
with calls to the new `format_infraction` utility function defined in
bot.utils.time.
In addition, I've changed the utility function to use `dateutil` to
parse the datetime string, since `dateutil.parser.isoparse` supports
the strings our API generates out of the box. With the built-in
`datetime.datetime.fromisoformat`, we needed to prepare the string by
slicing of the `Z` timezone indicator.
|
|
The format used is %Y-%m-%d %H:%M.
|
|
|
|
|
|
Both the duration and the reason can be edited with the new command.
* Remove try-except; the default error handler is already adequate
* Remove the new reason from the confirmation message
* Simplify humanisation of the timestamp in the confirmation message
* Add a converter to support permanent durations
|
|
Discord.py's internals use the __func__ attribute of special methods
(cog_command_error, cog_check, cog_before_invoke, cog_after_invoke).
Therefore the methods must be bound methods rather than static so that
the attribute exists.
|
|
- For the sake of code style and consistency, the lambda has been swapped with operator.itemgetter
Signed-off-by: Daniel Brown <[email protected]>
|
|
- Moved the sorted function to its own line and instead passed the generated list for code clarity.
Signed-off-by: Daniel Brown <[email protected]>
|
|
- Fixed bug where if two channels had the same last message timestamp the command would error out.
Signed-off-by: Daniel Brown <[email protected]>
|