aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--bot/utils/members.py47
1 files changed, 0 insertions, 47 deletions
diff --git a/bot/utils/members.py b/bot/utils/members.py
deleted file mode 100644
index de5850ca..00000000
--- a/bot/utils/members.py
+++ /dev/null
@@ -1,47 +0,0 @@
-import logging
-import typing as t
-
-import discord
-
-log = logging.getLogger(__name__)
-
-
-async def get_or_fetch_member(guild: discord.Guild, member_id: int) -> t.Optional[discord.Member]:
- """
- Attempt to get a member from cache; on failure fetch from the API.
-
- Return `None` to indicate the member could not be found.
- """
- if member := guild.get_member(member_id):
- log.trace("%s retrieved from cache.", member)
- else:
- try:
- member = await guild.fetch_member(member_id)
- except discord.errors.NotFound:
- log.trace("Failed to fetch %d from API.", member_id)
- return None
- log.trace("%s fetched from API.", member)
- return member
-
-
-async def handle_role_change(
- member: discord.Member,
- coro: t.Callable[..., t.Coroutine],
- role: discord.Role
-) -> None:
- """
- Change `member`'s cooldown role via awaiting `coro` and handle errors.
-
- `coro` is intended to be `discord.Member.add_roles` or `discord.Member.remove_roles`.
- """
- try:
- await coro(role)
- except discord.NotFound:
- log.debug(f"Failed to change role for {member} ({member.id}): member not found")
- except discord.Forbidden:
- log.error(
- f"Forbidden to change role for {member} ({member.id}); "
- f"possibly due to role hierarchy"
- )
- except discord.HTTPException as e:
- log.error(f"Failed to change role for {member} ({member.id}): {e.status} {e.code}")