diff --git a/changelog/1173.deprecate.0.rst b/changelog/1173.deprecate.0.rst new file mode 100644 index 0000000000..16b4e2ca5a --- /dev/null +++ b/changelog/1173.deprecate.0.rst @@ -0,0 +1 @@ +Deprecate :attr:`ApplicationCommand.dm_permission` and related fields/parameters of application command objects. Use ``contexts`` instead. diff --git a/changelog/1173.deprecate.1.rst b/changelog/1173.deprecate.1.rst new file mode 100644 index 0000000000..7248d4f297 --- /dev/null +++ b/changelog/1173.deprecate.1.rst @@ -0,0 +1 @@ +Deprecate :attr:`Message.interaction` attribute and :class:`InteractionReference`. Use :attr:`Message.interaction_metadata` instead. diff --git a/changelog/1173.feature.rst b/changelog/1173.feature.rst index a0990367ef..bbee9b160e 100644 --- a/changelog/1173.feature.rst +++ b/changelog/1173.feature.rst @@ -1 +1,13 @@ -TBD +Add support for user-installed commands. See :ref:`app_command_contexts` for further details. +- Add :attr:`ApplicationCommand.integration_types` and :attr:`ApplicationCommand.contexts` fields, + with respective :class:`ApplicationIntegrationTypes` and :class:`InteractionContextTypes` flag types. +- :class:`Interaction` changes: + - Add :attr:`Interaction.context` field, reflecting the context in which the interaction occurred. + - Add :attr:`Interaction.authorizing_integration_owners` field and :class:`AuthorizingIntegrationOwners` class, containing details about the application installation. + - :attr:`Interaction.app_permissions` is now always provided by Discord. +- Add :attr:`Message.interaction_metadata` and :class:`InteractionMetadata` type, containing metadata for the interaction associated with a message. +- Add ``integration_type`` parameter to :func:`utils.oauth_url`. +- Add :attr:`AppInfo.guild_integration_type_config` and :attr:`AppInfo.user_integration_type_config` fields. +- |commands| Add ``integration_types`` and ``contexts`` parameters to application command decorators. +- |commands| Add :func:`~ext.commands.integration_types` and :func:`~ext.commands.contexts` decorators. +- |commands| Using the :class:`GuildCommandInteraction` annotation now sets :attr:`~ApplicationCommand.integration_types` and :attr:`~ApplicationCommand.contexts`, instead of :attr:`~ApplicationCommand.dm_permission`.