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/template.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/template.py')
| -rw-r--r-- | discord/template.py | 24 |
1 files changed, 20 insertions, 4 deletions
diff --git a/discord/template.py b/discord/template.py index 55e3556a..30af3a4d 100644 --- a/discord/template.py +++ b/discord/template.py @@ -206,7 +206,7 @@ class Template: data = await self._state.http.create_from_template(self.code, name, region_value, icon) return Guild(data=data, state=self._state) - async def sync(self) -> None: + async def sync(self) -> Template: """|coro| Sync the template to the guild's current state. @@ -216,6 +216,9 @@ class Template: .. versionadded:: 1.7 + .. versionchanged:: 2.0 + The template is no longer edited in-place, instead it is returned. + Raises ------- HTTPException @@ -224,17 +227,22 @@ class Template: You don't have permissions to edit the template. NotFound This template does not exist. + + Returns + -------- + :class:`Template` + The newly edited template. """ data = await self._state.http.sync_template(self.source_guild.id, self.code) - self._store(data) + return Template(state=self._state, data=data) async def edit( self, *, name: str = MISSING, description: Optional[str] = MISSING, - ) -> None: + ) -> Template: """|coro| Edit the template metadata. @@ -244,6 +252,9 @@ class Template: .. versionadded:: 1.7 + .. versionchanged:: 2.0 + The template is no longer edited in-place, instead it is returned. + Parameters ------------ name: :class:`str` @@ -259,6 +270,11 @@ class Template: You don't have permissions to edit the template. NotFound This template does not exist. + + Returns + -------- + :class:`Template` + The newly edited template. """ payload = {} @@ -268,7 +284,7 @@ class Template: payload['description'] = description data = await self._state.http.edit_template(self.source_guild.id, self.code, payload) - self._store(data) + return Template(state=self._state, data=data) async def delete(self) -> None: """|coro| |