From 489e5f3288efb9b9e6649447209e1ac1746ccb32 Mon Sep 17 00:00:00 2001 From: James Gayfer Date: Wed, 18 Aug 2021 02:12:40 -0700 Subject: [PATCH] Use channel default auto archive duration Currently creating a new thread uses a default auto archive duration of 1440 minutes, or 1 day. Rather than prescribing our own default, we can use the default auto archive duration that is set on the channel. This ensures that newly created threads will respect the default auto archive duration as prescribed by the user. --- discord/channel.py | 8 ++++---- discord/message.py | 6 +++--- 2 files changed, 7 insertions(+), 7 deletions(-) diff --git a/discord/channel.py b/discord/channel.py index ea7179b90..47e2c1132 100644 --- a/discord/channel.py +++ b/discord/channel.py @@ -662,7 +662,7 @@ class TextChannel(discord.abc.Messageable, discord.abc.GuildChannel, Hashable): *, name: str, message: Optional[Snowflake] = None, - auto_archive_duration: ThreadArchiveDuration = 1440, + auto_archive_duration: ThreadArchiveDuration = MISSING, type: Optional[ChannelType] = None, reason: Optional[str] = None, ) -> Thread: @@ -692,7 +692,7 @@ class TextChannel(discord.abc.Messageable, discord.abc.GuildChannel, Hashable): Defaults to ``None``. auto_archive_duration: :class:`int` The duration in minutes before a thread is automatically archived for inactivity. - Defaults to ``1440`` or 24 hours. + If not provided, the channel's default auto archive duration is used. type: Optional[:class:`ChannelType`] The type of thread to create. If a ``message`` is passed then this parameter is ignored, as a thread created with a message is always a public thread. @@ -720,7 +720,7 @@ class TextChannel(discord.abc.Messageable, discord.abc.GuildChannel, Hashable): data = await self._state.http.start_thread_without_message( self.id, name=name, - auto_archive_duration=auto_archive_duration, + auto_archive_duration=auto_archive_duration or self.default_auto_archive_duration, type=type.value, reason=reason, ) @@ -729,7 +729,7 @@ class TextChannel(discord.abc.Messageable, discord.abc.GuildChannel, Hashable): self.id, message.id, name=name, - auto_archive_duration=auto_archive_duration, + auto_archive_duration=auto_archive_duration or self.default_auto_archive_duration, reason=reason, ) diff --git a/discord/message.py b/discord/message.py index a0842d587..003232b53 100644 --- a/discord/message.py +++ b/discord/message.py @@ -1484,7 +1484,7 @@ class Message(Hashable): """ await self._state.http.clear_reactions(self.channel.id, self.id) - async def create_thread(self, *, name: str, auto_archive_duration: ThreadArchiveDuration = 1440) -> Thread: + async def create_thread(self, *, name: str, auto_archive_duration: ThreadArchiveDuration = MISSING) -> Thread: """|coro| Creates a public thread from this message. @@ -1502,7 +1502,7 @@ class Message(Hashable): The name of the thread. auto_archive_duration: :class:`int` The duration in minutes before a thread is automatically archived for inactivity. - Defaults to ``1440`` or 24 hours. + If not provided, the channel's default auto archive duration is used. Raises ------- @@ -1525,7 +1525,7 @@ class Message(Hashable): self.channel.id, self.id, name=name, - auto_archive_duration=auto_archive_duration, + auto_archive_duration=auto_archive_duration or self.channel.default_auto_archive_duration, ) return Thread(guild=self.guild, state=self._state, data=data) # type: ignore