Skip to content

Commit

Permalink
Merge pull request Pycord-Development#1253 from jab416171/master
Browse files Browse the repository at this point in the history
Add reason to delete_messages, fixes Pycord-Development#1252
  • Loading branch information
Middledot authored Apr 11, 2022
2 parents b6edc3c + d725a3e commit a3e1dd0
Showing 1 changed file with 5 additions and 3 deletions.
8 changes: 5 additions & 3 deletions discord/threads.py
Original file line number Diff line number Diff line change
Expand Up @@ -351,7 +351,7 @@ def permissions_for(self, obj: Union[Member, Role], /) -> Permissions:
raise ClientException("Parent channel not found")
return parent.permissions_for(obj)

async def delete_messages(self, messages: Iterable[Snowflake]) -> None:
async def delete_messages(self, messages: Iterable[Snowflake], *, reason: Optional[str] = None) -> None:
"""|coro|
Deletes a list of messages. This is similar to :meth:`Message.delete`
Expand All @@ -373,6 +373,8 @@ async def delete_messages(self, messages: Iterable[Snowflake]) -> None:
-----------
messages: Iterable[:class:`abc.Snowflake`]
An iterable of messages denoting which ones to bulk delete.
reason: Optional[:class:`str`]
The reason for deleting the messages. Shows up on the audit log.
Raises
------
Expand All @@ -394,14 +396,14 @@ async def delete_messages(self, messages: Iterable[Snowflake]) -> None:

if len(messages) == 1:
message_id = messages[0].id
await self._state.http.delete_message(self.id, message_id)
await self._state.http.delete_message(self.id, message_id, reason=reason)
return

if len(messages) > 100:
raise ClientException("Can only bulk delete messages up to 100 messages")

message_ids: SnowflakeList = [m.id for m in messages]
await self._state.http.delete_messages(self.id, message_ids)
await self._state.http.delete_messages(self.id, message_ids, reason=reason)

async def purge(
self,
Expand Down

0 comments on commit a3e1dd0

Please sign in to comment.