diff options
| author | Rapptz <[email protected]> | 2021-08-23 23:46:50 -0400 |
|---|---|---|
| committer | Rapptz <[email protected]> | 2021-08-23 23:46:50 -0400 |
| commit | 490bbffc935856f885edd9a2d1505ac228c38f72 (patch) | |
| tree | 46a2aa80b6ebbe1faddd3ddd8c338cce1e8eb613 /discord/abc.py | |
| parent | Fix typing of move role position payload parameter (diff) | |
| download | discord.py-490bbffc935856f885edd9a2d1505ac228c38f72.tar.xz discord.py-490bbffc935856f885edd9a2d1505ac228c38f72.zip | |
Remove in-place edits and return fresh instances instead
Fixes #4098
Diffstat (limited to 'discord/abc.py')
| -rw-r--r-- | discord/abc.py | 9 |
1 files changed, 3 insertions, 6 deletions
diff --git a/discord/abc.py b/discord/abc.py index ab38c35c..a2ca1e48 100644 --- a/discord/abc.py +++ b/discord/abc.py @@ -84,6 +84,7 @@ if TYPE_CHECKING: from .ui.view import View from .types.channel import ( PermissionOverwrite as PermissionOverwritePayload, + Channel as ChannelPayload, GuildChannel as GuildChannelPayload, OverwriteType, ) @@ -302,11 +303,8 @@ class GuildChannel: payload.append(d) await http.bulk_channel_update(self.guild.id, payload, reason=reason) - self.position = position - if parent_id is not _undefined: - self.category_id = int(parent_id) if parent_id else None - async def _edit(self, options: Dict[str, Any], reason: Optional[str]): + async def _edit(self, options: Dict[str, Any], reason: Optional[str]) -> Optional[ChannelPayload]: try: parent = options.pop('category') except KeyError: @@ -385,8 +383,7 @@ class GuildChannel: options['type'] = ch_type.value if options: - data = await self._state.http.edit_channel(self.id, reason=reason, **options) - self._update(self.guild, data) + return await self._state.http.edit_channel(self.id, reason=reason, **options) def _fill_overwrites(self, data: GuildChannelPayload) -> None: self._overwrites = [] |