Commit Graph
2418 Commits
Author SHA1 Message Date
Rapptz 35c0476dbb Add TextChannel.last_message_id and TextChannel.last_message 2019-03-20 22:30:23 -04:00
DiceandRapptz 8123d4a5f7 Add type checking to multi-file send
Convert list comprehension to genexpr
2019-03-20 09:22:08 -04:00
DiceandRapptz 6f3e32cfbb Fix sending multiple files
Fixes #2002
2019-03-20 09:21:16 -04:00
Rapptz c30a366106 Try to consistently use "inherit" vs "derive" in documentation. 2019-03-19 09:23:12 -04:00
Rapptz d9e54d7dd3 [commands] Redesign extension exception flow.
Instead of raising a whole variety of exceptions, they are now wrapped
into ExtensionError derived classes.

* ExtensionAlreadyLoaded
	* Raised when an extension is already loaded in Bot.load_extension
* ExtensionNotLoaded
	* Raised when an extension is not loaded, e.g. Bot.unload_extension
* NoEntryPointError
	* Raised when an extension does not have a `setup` function.
* ExtensionFailed
	* Raised when an extension's `setup` function fails.
* ExtensionNotFound
	* Raised when an extension's module import fails.
2019-03-19 09:23:11 -04:00
Rapptz 26e9b5bfac [commands] Add Bot.reload_extension for atomic loading.
Also do atomic loading in Bot.load_extension
2019-03-19 09:23:10 -04:00
Joshua BandRapptz d221ca5f7d [commands] ColourConverter raises if value is out of range
changes make the `ext.commands.ColourConverter` Converter fail when
user input is outside the acceptable value range 0x000000 - 0xFFFFFF
2019-03-19 09:23:10 -04:00
Rapptz 2ce42b5b50 Some widget fixes. 2019-03-19 09:23:09 -04:00
NCPlayzandRapptz 8a30a4cac0 Add support for guild widget 2019-03-19 09:22:48 -04:00
NCPlayzandRapptz f507f508a2 Expose Metadata
Added access to:
* `/users/@me/guilds`
* `/guilds/{guild_id}`
* `/guilds/{guild_id}/members/{member_id}`

BREAKING CHANGE:
* `get_user_info` -> `fetch_user_info` to match naming scheme.

Remove useless note

Remove `reverse` and corresponding documentation

Update documentation to reflect #1988

Rename `get_` HTTP functions to `fetch_`

Breaking Changes:
* `get_message` -> `fetch_message`
* `get_invite` -> `fetch_invite`
* `get_user_profile` -> `fetch_user_profile`
* `get_webhook_info` -> `fetch_webhook`
* `get_ban` -> `fetch_ban`

Fix InviteConverter, update migrating.rst

Rename get_message to fetch_message
2019-03-19 09:00:18 -04:00
NCPlayzandRapptz fb02191b80 Organise documentation 2019-03-19 08:24:42 -04:00
Rapptz 5e65ec978c Take back ownership of files from aiohttp for retrying requests.
Fix #1809
2019-03-18 07:54:36 -04:00
Rapptz 963cf4b34e Add on_disconnect event.
I assume this is where it has to be. Fix #1937
2019-03-18 05:29:38 -04:00
Rapptz f43690bde8 [commands] Walk through MRO for Cog derived classes.
This should support cog subclasses in a relatively consistent way in
terms of expectations. Hopefully nothing is broken.

Fixes #1950
2019-03-17 22:04:05 -04:00
Rapptz cb9ae7bd76 Sorting bucket requires an integer. 2019-03-17 15:16:46 -04:00
Rapptz f3f2f882fd Fix typo in private property name. 2019-03-17 15:14:58 -04:00
Rapptz f26a27dc98 [commands] Make Bot.cogs and Bot.extensions read-only mappings.
This also has the side effect of effectively documenting them for
public use.
2019-03-17 14:53:56 -04:00
Rapptz 5061915b2a Add support for store channels. 2019-03-17 14:32:51 -04:00
Rapptz 4bd4c23694 Fix NameError in Embed.to_dict 2019-03-17 11:51:54 -04:00
Michael H 03616b91db Fix embed to_dict timestamp handling for python 3.5
resolves #1992
2019-03-17 09:17:14 -04:00
sliceandDanny 66af80511f Fix pagination of huge command help messages (> ~2,000 chars)
Previously, calls to add_line in add_command_formatting of default help
commands would fail if the command's help message would overflow the
current page. This would also result in silent failure as the
RuntimeError raised from add_line is never caught.

This patch adds behavior that adds lines individually should it raise,
which guarantees safe pagination as long as every line is smaller than
the maximum page size, which is highly unlikely.
2019-03-16 23:24:31 -04:00
Jeremy "EndenDragon" ZhangandDanny 682c0d962f Consider news channel type as a TextChannel 2019-03-16 23:02:46 -04:00
Rapptz 053e2f5b9a Fix documentation linking issue in Messageables and Context 2019-03-16 09:55:29 -04:00
Rapptz cc3b6bdd72 [commands] Rename it to Context.send_help for consistency. 2019-03-16 09:37:47 -04:00
Rapptz ed5fcb320e [commands] Add Context.show_help helper to use the HelpCommand set.
Fixes #1983
2019-03-16 09:33:05 -04:00
Rapptz 3326adf63b [commands] Optimise GroupMixin.get_command for the no space case.
Comes at a 30ns slowdown for the space case, however.
2019-03-16 09:27:59 -04:00
Rapptz 8466250bcc [commands] Assign context inside HelpCommand.prepare_help_command 2019-03-16 09:24:17 -04:00
Rapptz b728061522 [commands] Add HelpCommand.get_bot_mapping helper. 2019-03-16 09:23:34 -04:00
Rapptz 7a5102ece9 [commands] Return result of send_group_help and send_command_help 2019-03-16 07:33:12 -04:00
Kaeptm BlaubaerandDanny b506ee1b8e Change superclass to subclass in some documentation 2019-03-16 05:32:59 -04:00
Rapptz 61f63a9346 [commands] Add back dm_help tribool for the provided HelpCommands
Also add a dm_help_threshold integer to control the length.
2019-03-16 03:50:30 -04:00
Rapptz 25acad5de3 [commands] Add commands.Paginator.__len__ 2019-03-16 03:38:51 -04:00
Rapptz 70c5f1723f Fix Embed.to_dict to work with TZ aware datetime objects. 2019-03-15 05:56:01 -04:00
Rapptz 3527203e07 [commands] Redesign HelpFormatter into HelpCommand
Part of #1938
2019-03-15 05:54:23 -04:00
Rapptz 27c6d2c923 [commands] Add Cog.description to get the clean docstring. 2019-03-14 11:42:09 -04:00
Rapptz c4a21cc1d4 [commands] Add Cog.qualified_name to query the specified cog name. 2019-03-13 23:43:29 -04:00
Rapptz 6ffd079cb9 Support path-like objects in Attachment.save.
Fix #1958
2019-03-13 22:04:51 -04:00
Nadir ChowdhuryandDanny 8f7ce7c64e Add support for reading guild descriptions
Added `Guild.description` and `PartialInviteGuild.description`.
2019-03-13 21:24:16 -04:00
Nadir ChowdhuryandDanny e18fed6310 Fix imports
Removed unnecessary Object import.
Added `snowflake_time` and `InvalidArgument`
2019-03-13 21:22:40 -04:00
Harmon 0513ea1f53 [commands] Properly handle typing.Optional as last positional parameter 2019-03-13 10:05:08 -05:00
Rapptz 7fbdc6e83f Add Embed.copy to do a copy on an embed object. 2019-03-13 06:08:21 -04:00
Rapptz 35a330c5d3 Add Embed.__len__ to query total character size of an embed. 2019-03-13 06:07:57 -04:00
Rapptz 73aca4d4d3 Expose Embed.from_data as Embed.from_dict
This is a breaking change.
2019-03-13 06:02:56 -04:00
Rapptz a70db36cfc Handle type updates in TextChannel._update for news channels. 2019-03-12 23:13:22 -04:00
Rapptz e1d9f8f59f [commands] Support staticmethod listeners and disallow them in commands 2019-03-12 11:54:45 -04:00
Nadir ChowdhuryandDanny 999ac0a0e3 Add Category.create_text_channel/Category.create_voice_channel (#1976)
Fixes #1971
2019-03-12 08:16:25 -04:00
Rapptz 8a153bfaad [commands] Refactor quoted_word free function to a StringView method.
Technically a breaking change, however this interface was not
documented or guaranteed to exist.
2019-03-12 05:37:34 -04:00
Rapptz 560783c3d2 [commands] Separate view parsing errors from BadArgument.
This causes them to be raised from a new exception named
ArgumentParsingError with 3 children for ease with i18n. This is
technically a breaking change since it no longer derives from
BadArgument, though catching UserInputError will prevent this change
from affecting the user.
2019-03-12 05:27:34 -04:00
Rapptz e15b4ef8e4 Revert default parameter use_cached of Attachment.save back to False.
Fix #1973
2019-03-10 20:12:24 -04:00
NCPlayz 8b8e9a619e Moved http.close to before _closed.set 2019-03-09 14:09:47 +00:00