From 45cef6fb7c06487e4b3973cab8467d0acb820190 Mon Sep 17 00:00:00 2001 From: Matty Widdop <18513864+MattyTheHacker@users.noreply.github.com> Date: Wed, 16 Sep 2026 15:05:06 +0100 Subject: [PATCH 1/5] Move ApplicationContext --- cogs/add_users_to_threads_and_channels.py | 4 +--- cogs/annual_handover_and_reset.py | 4 ++-- cogs/archive.py | 4 ++-- cogs/check_su_platform_authorisation.py | 4 ++-- cogs/command_error.py | 4 +--- cogs/committee_actions_tracking.py | 4 ++-- cogs/delete_all.py | 3 +-- cogs/edit_message.py | 4 ++-- cogs/everest.py | 4 ++-- cogs/induct.py | 4 ++-- cogs/invite_link.py | 4 +--- cogs/kill.py | 3 +-- cogs/make_applicant.py | 4 ++-- cogs/make_member.py | 4 +--- cogs/ping.py | 4 +--- cogs/source.py | 4 +--- cogs/stats/__init__.py | 4 +--- cogs/strike.py | 4 ++-- cogs/write_roles.py | 4 +--- 19 files changed, 28 insertions(+), 46 deletions(-) diff --git a/cogs/add_users_to_threads_and_channels.py b/cogs/add_users_to_threads_and_channels.py index 76b130447..460219ddd 100644 --- a/cogs/add_users_to_threads_and_channels.py +++ b/cogs/add_users_to_threads_and_channels.py @@ -8,7 +8,7 @@ from config import settings from exceptions import GuestRoleDoesNotExistError, GuildDoesNotExistError -from utils import CommandChecks, TeXBotBaseCog +from utils import CommandChecks, TeXBotBaseCog, TeXBotApplicationContext, TeXBotAutocompleteContext from utils.error_capture_decorators import capture_guild_does_not_exist_error if TYPE_CHECKING: @@ -17,8 +17,6 @@ from logging import Logger from typing import Final - from utils import TeXBotApplicationContext, TeXBotAutocompleteContext - __all__: Sequence[str] = ("AddUsersToThreadsAndChannelsCommandsCog",) diff --git a/cogs/annual_handover_and_reset.py b/cogs/annual_handover_and_reset.py index 692a5a89e..0b50104cd 100644 --- a/cogs/annual_handover_and_reset.py +++ b/cogs/annual_handover_and_reset.py @@ -8,14 +8,14 @@ from config import settings from db.core.models import GroupMadeMember -from utils import CommandChecks, TeXBotBaseCog +from utils import CommandChecks, TeXBotBaseCog, TeXBotApplicationContext if TYPE_CHECKING: from collections.abc import Collection, Mapping, Sequence from logging import Logger from typing import Final - from utils import AllChannelTypes, TeXBotApplicationContext + from utils import AllChannelTypes __all__: Sequence[str] = ( "AnnualRolesResetCommandCog", diff --git a/cogs/archive.py b/cogs/archive.py index 684189540..0f1ad35b5 100644 --- a/cogs/archive.py +++ b/cogs/archive.py @@ -8,7 +8,7 @@ from exceptions import EveryoneRoleCouldNotBeRetrievedError from exceptions.base import BaseDoesNotExistError -from utils import CommandChecks, TeXBotBaseCog +from utils import CommandChecks, TeXBotBaseCog, TeXBotApplicationContext, TeXBotAutocompleteContext if TYPE_CHECKING: from collections.abc import Sequence @@ -16,7 +16,7 @@ from logging import Logger from typing import Final - from utils import AllChannelTypes, TeXBotApplicationContext, TeXBotAutocompleteContext + from utils import AllChannelTypes __all__: Sequence[str] = ("ArchiveCommandsCog",) diff --git a/cogs/check_su_platform_authorisation.py b/cogs/check_su_platform_authorisation.py index 610ca873a..08d9c6ceb 100644 --- a/cogs/check_su_platform_authorisation.py +++ b/cogs/check_su_platform_authorisation.py @@ -9,7 +9,7 @@ from discord.ext import tasks from config import settings -from utils import CommandChecks, TeXBotBaseCog +from utils import CommandChecks, TeXBotBaseCog, TeXBotApplicationContext from utils.error_capture_decorators import ( capture_guild_does_not_exist_error, ) @@ -21,7 +21,7 @@ from logging import Logger from typing import Final - from utils import TeXBot, TeXBotApplicationContext + from utils import TeXBot __all__: Sequence[str] = ( "CheckSUPlatformAuthorisationCommandCog", diff --git a/cogs/command_error.py b/cogs/command_error.py index d6c5e55a0..85aaccb36 100644 --- a/cogs/command_error.py +++ b/cogs/command_error.py @@ -9,15 +9,13 @@ from exceptions import GuildDoesNotExistError from exceptions.base import BaseErrorWithErrorCode -from utils import CommandChecks, TeXBotBaseCog +from utils import CommandChecks, TeXBotBaseCog, TeXBotApplicationContext if TYPE_CHECKING: from collections.abc import Sequence from logging import Logger from typing import Final - from utils import TeXBotApplicationContext - __all__: Sequence[str] = ("CommandErrorCog",) diff --git a/cogs/committee_actions_tracking.py b/cogs/committee_actions_tracking.py index 1a3af291e..5fe00f7fd 100644 --- a/cogs/committee_actions_tracking.py +++ b/cogs/committee_actions_tracking.py @@ -18,7 +18,7 @@ InvalidActionDescriptionError, InvalidActionTargetError, ) -from utils import CommandChecks, TeXBotBaseCog +from utils import CommandChecks, TeXBotBaseCog, TeXBotApplicationContext if TYPE_CHECKING: from collections.abc import Sequence @@ -26,7 +26,7 @@ from logging import Logger from typing import Final - from utils import TeXBotApplicationContext, TeXBotAutocompleteContext + from utils import TeXBotAutocompleteContext __all__: Sequence[str] = ( "CommitteeActionsTrackingBaseCog", diff --git a/cogs/delete_all.py b/cogs/delete_all.py index 6a355aca8..104c555b6 100644 --- a/cogs/delete_all.py +++ b/cogs/delete_all.py @@ -11,13 +11,12 @@ SentGetRolesReminderMember, SentOneOffIntroductionReminderMember, ) -from utils import CommandChecks, TeXBotBaseCog +from utils import CommandChecks, TeXBotBaseCog, TeXBotApplicationContext if TYPE_CHECKING: from collections.abc import Sequence from db.core.models.utils import AsyncBaseModel - from utils import TeXBotApplicationContext __all__: Sequence[str] = ("DeleteAllCommandsCog",) diff --git a/cogs/edit_message.py b/cogs/edit_message.py index 84b237531..ba0107799 100644 --- a/cogs/edit_message.py +++ b/cogs/edit_message.py @@ -7,13 +7,13 @@ from exceptions import DiscordMemberNotInMainGuildError from exceptions.base import BaseDoesNotExistError -from utils import CommandChecks, TeXBotBaseCog +from utils import CommandChecks, TeXBotBaseCog, TeXBotApplicationContext if TYPE_CHECKING: from collections.abc import Sequence from collections.abc import Set as AbstractSet - from utils import TeXBotApplicationContext, TeXBotAutocompleteContext + from utils import TeXBotAutocompleteContext __all__: Sequence[str] = ("EditMessageCommandCog",) diff --git a/cogs/everest.py b/cogs/everest.py index 50f5ee244..165f72b0c 100644 --- a/cogs/everest.py +++ b/cogs/everest.py @@ -6,7 +6,7 @@ import discord -from utils import TeXBotBaseCog +from utils import TeXBotBaseCog, TeXBotApplicationContext if TYPE_CHECKING: from collections.abc import Sequence @@ -14,7 +14,7 @@ from logging import Logger from typing import Final - from utils import TeXBotApplicationContext, TeXBotAutocompleteContext + from utils import TeXBotAutocompleteContext __all__: Sequence[str] = ("EverestCommandCog",) diff --git a/cogs/induct.py b/cogs/induct.py index 6a66d011e..0274fd25c 100644 --- a/cogs/induct.py +++ b/cogs/induct.py @@ -17,7 +17,7 @@ GuildDoesNotExistError, MemberRoleDoesNotExistError, ) -from utils import CommandChecks, TeXBotBaseCog +from utils import CommandChecks, TeXBotBaseCog, TeXBotApplicationContext from utils.error_capture_decorators import capture_guild_does_not_exist_error if TYPE_CHECKING: @@ -26,7 +26,7 @@ from logging import Logger from typing import Final, Literal - from utils import TeXBotApplicationContext, TeXBotAutocompleteContext + from utils import TeXBotAutocompleteContext __all__: Sequence[str] = ( "BaseInductCog", diff --git a/cogs/invite_link.py b/cogs/invite_link.py index bf0616838..b481f3f4e 100644 --- a/cogs/invite_link.py +++ b/cogs/invite_link.py @@ -5,13 +5,11 @@ import discord from config import settings -from utils import TeXBotBaseCog +from utils import TeXBotBaseCog, TeXBotApplicationContext if TYPE_CHECKING: from collections.abc import Sequence - from utils import TeXBotApplicationContext - __all__: Sequence[str] = ("InviteLinkCommandCog",) diff --git a/cogs/kill.py b/cogs/kill.py index 0a83bb095..b5385558b 100644 --- a/cogs/kill.py +++ b/cogs/kill.py @@ -7,14 +7,13 @@ from discord.ui import View from exceptions import CommitteeRoleDoesNotExistError -from utils import CommandChecks, TeXBotBaseCog +from utils import CommandChecks, TeXBotBaseCog, TeXBotApplicationContext if TYPE_CHECKING: from collections.abc import Sequence from logging import Logger from typing import Final - from utils import TeXBotApplicationContext __all__: Sequence[str] = ("ConfirmKillView", "KillCommandCog") diff --git a/cogs/make_applicant.py b/cogs/make_applicant.py index 5ebf09060..e60701316 100644 --- a/cogs/make_applicant.py +++ b/cogs/make_applicant.py @@ -6,14 +6,14 @@ import discord from exceptions.does_not_exist import ApplicantRoleDoesNotExistError, GuildDoesNotExistError -from utils import CommandChecks, TeXBotBaseCog +from utils import CommandChecks, TeXBotBaseCog, TeXBotApplicationContext if TYPE_CHECKING: from collections.abc import Sequence from logging import Logger from typing import Final - from utils import TeXBotApplicationContext, TeXBotAutocompleteContext + from utils import TeXBotAutocompleteContext __all__: Sequence[str] = ( "BaseMakeApplicantCog", diff --git a/cogs/make_member.py b/cogs/make_member.py index 656c6655c..851052ea9 100644 --- a/cogs/make_member.py +++ b/cogs/make_member.py @@ -10,7 +10,7 @@ from config import settings from db.core.models import GroupMadeMember from exceptions import ApplicantRoleDoesNotExistError, GuestRoleDoesNotExistError -from utils import CommandChecks, TeXBotBaseCog +from utils import CommandChecks, TeXBotBaseCog, TeXBotApplicationContext from utils.msl import fetch_community_group_members_count, is_id_a_community_group_member if TYPE_CHECKING: @@ -18,8 +18,6 @@ from logging import Logger from typing import Final - from utils import TeXBotApplicationContext - __all__: Sequence[str] = ("MakeMemberCommandCog", "MemberCountCommandCog") diff --git a/cogs/ping.py b/cogs/ping.py index 71fdc90f7..8672b86b8 100644 --- a/cogs/ping.py +++ b/cogs/ping.py @@ -6,13 +6,11 @@ import discord from config import settings -from utils import TeXBotBaseCog +from utils import TeXBotBaseCog, TeXBotApplicationContext if TYPE_CHECKING: from collections.abc import Sequence - from utils import TeXBotApplicationContext - __all__: Sequence[str] = ("PingCommandCog",) diff --git a/cogs/source.py b/cogs/source.py index fa3e74dad..a8a7aca69 100644 --- a/cogs/source.py +++ b/cogs/source.py @@ -4,13 +4,11 @@ import discord -from utils import TeXBotBaseCog +from utils import TeXBotBaseCog, TeXBotApplicationContext if TYPE_CHECKING: from collections.abc import Sequence - from utils import TeXBotApplicationContext - __all__: Sequence[str] = ("SourceCommandCog",) diff --git a/cogs/stats/__init__.py b/cogs/stats/__init__.py index ccb3e3f32..0307596cc 100644 --- a/cogs/stats/__init__.py +++ b/cogs/stats/__init__.py @@ -8,7 +8,7 @@ from config import settings from db.core.models import LeftDiscordMember -from utils import CommandChecks, TeXBotBaseCog +from utils import CommandChecks, TeXBotBaseCog, TeXBotApplicationContext from utils.error_capture_decorators import capture_guild_does_not_exist_error from .counts import get_channel_message_counts, get_server_message_counts @@ -18,8 +18,6 @@ from collections.abc import AsyncIterable, Mapping, Sequence from typing import Final - from utils import TeXBotApplicationContext - __all__: Sequence[str] = ("StatsCommandsCog",) diff --git a/cogs/strike.py b/cogs/strike.py index 3c870c0f7..5de692a6b 100644 --- a/cogs/strike.py +++ b/cogs/strike.py @@ -18,7 +18,7 @@ NoAuditLogsStrikeTrackingError, StrikeTrackingError, ) -from utils import CommandChecks, TeXBotBaseCog +from utils import CommandChecks, TeXBotBaseCog, TeXBotApplicationContext from utils.error_capture_decorators import ( capture_guild_does_not_exist_error, capture_strike_tracking_error, @@ -31,7 +31,7 @@ from logging import Logger from typing import Final - from utils import TeXBotApplicationContext, TeXBotAutocompleteContext + from utils import TeXBotAutocompleteContext from utils.message_sender_components import MessageSavingSenderComponent __all__: Sequence[str] = ( diff --git a/cogs/write_roles.py b/cogs/write_roles.py index 18cb66220..9e847d5f7 100644 --- a/cogs/write_roles.py +++ b/cogs/write_roles.py @@ -5,13 +5,11 @@ import discord from config import settings -from utils import CommandChecks, TeXBotBaseCog +from utils import CommandChecks, TeXBotBaseCog, TeXBotApplicationContext if TYPE_CHECKING: from collections.abc import Sequence - from utils import TeXBotApplicationContext - __all__: Sequence[str] = ("WriteRolesCommandCog",) From 1a83d587331f814b47599d8d198e677f12359642 Mon Sep 17 00:00:00 2001 From: Matty Widdop <18513864+MattyTheHacker@users.noreply.github.com> Date: Wed, 16 Sep 2026 15:10:48 +0100 Subject: [PATCH 2/5] Fix AbstractSet and AutoComplete --- cogs/add_users_to_threads_and_channels.py | 2 +- cogs/archive.py | 2 +- cogs/check_su_platform_authorisation.py | 2 +- cogs/committee_actions_tracking.py | 6 ++---- cogs/edit_message.py | 7 ++----- cogs/everest.py | 7 ++----- cogs/induct.py | 6 ++---- cogs/make_applicant.py | 3 +-- cogs/strike.py | 6 ++---- 9 files changed, 14 insertions(+), 27 deletions(-) diff --git a/cogs/add_users_to_threads_and_channels.py b/cogs/add_users_to_threads_and_channels.py index 460219ddd..68f439a4e 100644 --- a/cogs/add_users_to_threads_and_channels.py +++ b/cogs/add_users_to_threads_and_channels.py @@ -3,6 +3,7 @@ import logging from collections.abc import Iterable from typing import TYPE_CHECKING +from collections.abc import Set as AbstractSet import discord @@ -13,7 +14,6 @@ if TYPE_CHECKING: from collections.abc import Sequence - from collections.abc import Set as AbstractSet from logging import Logger from typing import Final diff --git a/cogs/archive.py b/cogs/archive.py index 0f1ad35b5..011292828 100644 --- a/cogs/archive.py +++ b/cogs/archive.py @@ -3,6 +3,7 @@ import logging import re from typing import TYPE_CHECKING +from collections.abc import Set as AbstractSet import discord @@ -12,7 +13,6 @@ if TYPE_CHECKING: from collections.abc import Sequence - from collections.abc import Set as AbstractSet from logging import Logger from typing import Final diff --git a/cogs/check_su_platform_authorisation.py b/cogs/check_su_platform_authorisation.py index 08d9c6ceb..bb877763b 100644 --- a/cogs/check_su_platform_authorisation.py +++ b/cogs/check_su_platform_authorisation.py @@ -14,10 +14,10 @@ capture_guild_does_not_exist_error, ) from utils.msl import fetch_url_content_with_session +from collections.abc import Set as AbstractSet if TYPE_CHECKING: from collections.abc import Iterable, Sequence - from collections.abc import Set as AbstractSet from logging import Logger from typing import Final diff --git a/cogs/committee_actions_tracking.py b/cogs/committee_actions_tracking.py index 5fe00f7fd..89c27b30f 100644 --- a/cogs/committee_actions_tracking.py +++ b/cogs/committee_actions_tracking.py @@ -18,16 +18,14 @@ InvalidActionDescriptionError, InvalidActionTargetError, ) -from utils import CommandChecks, TeXBotBaseCog, TeXBotApplicationContext +from utils import CommandChecks, TeXBotBaseCog, TeXBotApplicationContext, TeXBotAutocompleteContext +from collections.abc import Set as AbstractSet if TYPE_CHECKING: from collections.abc import Sequence - from collections.abc import Set as AbstractSet from logging import Logger from typing import Final - from utils import TeXBotAutocompleteContext - __all__: Sequence[str] = ( "CommitteeActionsTrackingBaseCog", "CommitteeActionsTrackingContextCommandCog", diff --git a/cogs/edit_message.py b/cogs/edit_message.py index ba0107799..179eae862 100644 --- a/cogs/edit_message.py +++ b/cogs/edit_message.py @@ -4,16 +4,13 @@ from typing import TYPE_CHECKING, override import discord - +from collections.abc import Set as AbstractSet from exceptions import DiscordMemberNotInMainGuildError from exceptions.base import BaseDoesNotExistError -from utils import CommandChecks, TeXBotBaseCog, TeXBotApplicationContext +from utils import CommandChecks, TeXBotBaseCog, TeXBotApplicationContext, TeXBotAutocompleteContext if TYPE_CHECKING: from collections.abc import Sequence - from collections.abc import Set as AbstractSet - - from utils import TeXBotAutocompleteContext __all__: Sequence[str] = ("EditMessageCommandCog",) diff --git a/cogs/everest.py b/cogs/everest.py index 165f72b0c..c46bab009 100644 --- a/cogs/everest.py +++ b/cogs/everest.py @@ -5,17 +5,14 @@ from typing import TYPE_CHECKING, override import discord - -from utils import TeXBotBaseCog, TeXBotApplicationContext +from collections.abc import Set as AbstractSet +from utils import TeXBotBaseCog, TeXBotApplicationContext, TeXBotAutocompleteContext if TYPE_CHECKING: from collections.abc import Sequence - from collections.abc import Set as AbstractSet from logging import Logger from typing import Final - from utils import TeXBotAutocompleteContext - __all__: Sequence[str] = ("EverestCommandCog",) diff --git a/cogs/induct.py b/cogs/induct.py index 0274fd25c..a8d700fb9 100644 --- a/cogs/induct.py +++ b/cogs/induct.py @@ -17,16 +17,14 @@ GuildDoesNotExistError, MemberRoleDoesNotExistError, ) -from utils import CommandChecks, TeXBotBaseCog, TeXBotApplicationContext +from utils import CommandChecks, TeXBotBaseCog, TeXBotApplicationContext, TeXBotAutocompleteContext from utils.error_capture_decorators import capture_guild_does_not_exist_error - +from collections.abc import Set as AbstractSet if TYPE_CHECKING: from collections.abc import Sequence - from collections.abc import Set as AbstractSet from logging import Logger from typing import Final, Literal - from utils import TeXBotAutocompleteContext __all__: Sequence[str] = ( "BaseInductCog", diff --git a/cogs/make_applicant.py b/cogs/make_applicant.py index e60701316..7ba8fcd07 100644 --- a/cogs/make_applicant.py +++ b/cogs/make_applicant.py @@ -6,14 +6,13 @@ import discord from exceptions.does_not_exist import ApplicantRoleDoesNotExistError, GuildDoesNotExistError -from utils import CommandChecks, TeXBotBaseCog, TeXBotApplicationContext +from utils import CommandChecks, TeXBotBaseCog, TeXBotApplicationContext, TeXBotAutocompleteContext if TYPE_CHECKING: from collections.abc import Sequence from logging import Logger from typing import Final - from utils import TeXBotAutocompleteContext __all__: Sequence[str] = ( "BaseMakeApplicantCog", diff --git a/cogs/strike.py b/cogs/strike.py index 5de692a6b..584da4054 100644 --- a/cogs/strike.py +++ b/cogs/strike.py @@ -18,20 +18,18 @@ NoAuditLogsStrikeTrackingError, StrikeTrackingError, ) -from utils import CommandChecks, TeXBotBaseCog, TeXBotApplicationContext +from utils import CommandChecks, TeXBotBaseCog, TeXBotApplicationContext, TeXBotAutocompleteContext from utils.error_capture_decorators import ( capture_guild_does_not_exist_error, capture_strike_tracking_error, ) from utils.message_sender_components import ChannelMessageSender, ResponseMessageSender - +from collections.abc import Set as AbstractSet if TYPE_CHECKING: from collections.abc import Mapping, Sequence - from collections.abc import Set as AbstractSet from logging import Logger from typing import Final - from utils import TeXBotAutocompleteContext from utils.message_sender_components import MessageSavingSenderComponent __all__: Sequence[str] = ( From 233fcb4935d9c6b24d3b529ba730f800a86eab57 Mon Sep 17 00:00:00 2001 From: Matty Widdop <18513864+MattyTheHacker@users.noreply.github.com> Date: Wed, 16 Sep 2026 15:12:04 +0100 Subject: [PATCH 3/5] Reformat --- cogs/add_users_to_threads_and_channels.py | 9 +++++++-- cogs/annual_handover_and_reset.py | 2 +- cogs/archive.py | 9 +++++++-- cogs/check_su_platform_authorisation.py | 4 ++-- cogs/command_error.py | 2 +- cogs/committee_actions_tracking.py | 9 +++++++-- cogs/delete_all.py | 2 +- cogs/edit_message.py | 10 ++++++++-- cogs/everest.py | 5 +++-- cogs/induct.py | 10 ++++++++-- cogs/invite_link.py | 2 +- cogs/kill.py | 2 +- cogs/make_applicant.py | 7 ++++++- cogs/make_member.py | 2 +- cogs/ping.py | 2 +- cogs/source.py | 2 +- cogs/stats/__init__.py | 2 +- cogs/strike.py | 10 ++++++++-- cogs/write_roles.py | 2 +- 19 files changed, 66 insertions(+), 27 deletions(-) diff --git a/cogs/add_users_to_threads_and_channels.py b/cogs/add_users_to_threads_and_channels.py index 68f439a4e..d6e094607 100644 --- a/cogs/add_users_to_threads_and_channels.py +++ b/cogs/add_users_to_threads_and_channels.py @@ -2,14 +2,19 @@ import logging from collections.abc import Iterable -from typing import TYPE_CHECKING from collections.abc import Set as AbstractSet +from typing import TYPE_CHECKING import discord from config import settings from exceptions import GuestRoleDoesNotExistError, GuildDoesNotExistError -from utils import CommandChecks, TeXBotBaseCog, TeXBotApplicationContext, TeXBotAutocompleteContext +from utils import ( + CommandChecks, + TeXBotApplicationContext, + TeXBotAutocompleteContext, + TeXBotBaseCog, +) from utils.error_capture_decorators import capture_guild_does_not_exist_error if TYPE_CHECKING: diff --git a/cogs/annual_handover_and_reset.py b/cogs/annual_handover_and_reset.py index 0b50104cd..5c8ff99fd 100644 --- a/cogs/annual_handover_and_reset.py +++ b/cogs/annual_handover_and_reset.py @@ -8,7 +8,7 @@ from config import settings from db.core.models import GroupMadeMember -from utils import CommandChecks, TeXBotBaseCog, TeXBotApplicationContext +from utils import CommandChecks, TeXBotApplicationContext, TeXBotBaseCog if TYPE_CHECKING: from collections.abc import Collection, Mapping, Sequence diff --git a/cogs/archive.py b/cogs/archive.py index 011292828..f9591ba3e 100644 --- a/cogs/archive.py +++ b/cogs/archive.py @@ -2,14 +2,19 @@ import logging import re -from typing import TYPE_CHECKING from collections.abc import Set as AbstractSet +from typing import TYPE_CHECKING import discord from exceptions import EveryoneRoleCouldNotBeRetrievedError from exceptions.base import BaseDoesNotExistError -from utils import CommandChecks, TeXBotBaseCog, TeXBotApplicationContext, TeXBotAutocompleteContext +from utils import ( + CommandChecks, + TeXBotApplicationContext, + TeXBotAutocompleteContext, + TeXBotBaseCog, +) if TYPE_CHECKING: from collections.abc import Sequence diff --git a/cogs/check_su_platform_authorisation.py b/cogs/check_su_platform_authorisation.py index bb877763b..03a7aaa47 100644 --- a/cogs/check_su_platform_authorisation.py +++ b/cogs/check_su_platform_authorisation.py @@ -1,6 +1,7 @@ """Contains cog classes for SU platform access cookie authorisation check interactions.""" import logging +from collections.abc import Set as AbstractSet from enum import Enum from typing import TYPE_CHECKING, override @@ -9,12 +10,11 @@ from discord.ext import tasks from config import settings -from utils import CommandChecks, TeXBotBaseCog, TeXBotApplicationContext +from utils import CommandChecks, TeXBotApplicationContext, TeXBotBaseCog from utils.error_capture_decorators import ( capture_guild_does_not_exist_error, ) from utils.msl import fetch_url_content_with_session -from collections.abc import Set as AbstractSet if TYPE_CHECKING: from collections.abc import Iterable, Sequence diff --git a/cogs/command_error.py b/cogs/command_error.py index 85aaccb36..37c1f8500 100644 --- a/cogs/command_error.py +++ b/cogs/command_error.py @@ -9,7 +9,7 @@ from exceptions import GuildDoesNotExistError from exceptions.base import BaseErrorWithErrorCode -from utils import CommandChecks, TeXBotBaseCog, TeXBotApplicationContext +from utils import CommandChecks, TeXBotApplicationContext, TeXBotBaseCog if TYPE_CHECKING: from collections.abc import Sequence diff --git a/cogs/committee_actions_tracking.py b/cogs/committee_actions_tracking.py index 89c27b30f..fd262f979 100644 --- a/cogs/committee_actions_tracking.py +++ b/cogs/committee_actions_tracking.py @@ -4,6 +4,7 @@ import logging import random import textwrap +from collections.abc import Set as AbstractSet from enum import Enum from typing import TYPE_CHECKING @@ -18,8 +19,12 @@ InvalidActionDescriptionError, InvalidActionTargetError, ) -from utils import CommandChecks, TeXBotBaseCog, TeXBotApplicationContext, TeXBotAutocompleteContext -from collections.abc import Set as AbstractSet +from utils import ( + CommandChecks, + TeXBotApplicationContext, + TeXBotAutocompleteContext, + TeXBotBaseCog, +) if TYPE_CHECKING: from collections.abc import Sequence diff --git a/cogs/delete_all.py b/cogs/delete_all.py index 104c555b6..ab1c876a7 100644 --- a/cogs/delete_all.py +++ b/cogs/delete_all.py @@ -11,7 +11,7 @@ SentGetRolesReminderMember, SentOneOffIntroductionReminderMember, ) -from utils import CommandChecks, TeXBotBaseCog, TeXBotApplicationContext +from utils import CommandChecks, TeXBotApplicationContext, TeXBotBaseCog if TYPE_CHECKING: from collections.abc import Sequence diff --git a/cogs/edit_message.py b/cogs/edit_message.py index 179eae862..7280e0311 100644 --- a/cogs/edit_message.py +++ b/cogs/edit_message.py @@ -1,13 +1,19 @@ """Contains cog classes for any edit_message interactions.""" import re +from collections.abc import Set as AbstractSet from typing import TYPE_CHECKING, override import discord -from collections.abc import Set as AbstractSet + from exceptions import DiscordMemberNotInMainGuildError from exceptions.base import BaseDoesNotExistError -from utils import CommandChecks, TeXBotBaseCog, TeXBotApplicationContext, TeXBotAutocompleteContext +from utils import ( + CommandChecks, + TeXBotApplicationContext, + TeXBotAutocompleteContext, + TeXBotBaseCog, +) if TYPE_CHECKING: from collections.abc import Sequence diff --git a/cogs/everest.py b/cogs/everest.py index c46bab009..680a1defc 100644 --- a/cogs/everest.py +++ b/cogs/everest.py @@ -1,12 +1,13 @@ """Contains cog classes for any Everest interactions.""" import logging +from collections.abc import Set as AbstractSet from enum import Enum from typing import TYPE_CHECKING, override import discord -from collections.abc import Set as AbstractSet -from utils import TeXBotBaseCog, TeXBotApplicationContext, TeXBotAutocompleteContext + +from utils import TeXBotApplicationContext, TeXBotAutocompleteContext, TeXBotBaseCog if TYPE_CHECKING: from collections.abc import Sequence diff --git a/cogs/induct.py b/cogs/induct.py index a8d700fb9..6f9090b07 100644 --- a/cogs/induct.py +++ b/cogs/induct.py @@ -3,6 +3,7 @@ import contextlib import logging import random +from collections.abc import Set as AbstractSet from typing import TYPE_CHECKING import discord @@ -17,9 +18,14 @@ GuildDoesNotExistError, MemberRoleDoesNotExistError, ) -from utils import CommandChecks, TeXBotBaseCog, TeXBotApplicationContext, TeXBotAutocompleteContext +from utils import ( + CommandChecks, + TeXBotApplicationContext, + TeXBotAutocompleteContext, + TeXBotBaseCog, +) from utils.error_capture_decorators import capture_guild_does_not_exist_error -from collections.abc import Set as AbstractSet + if TYPE_CHECKING: from collections.abc import Sequence from logging import Logger diff --git a/cogs/invite_link.py b/cogs/invite_link.py index b481f3f4e..48d9b05c9 100644 --- a/cogs/invite_link.py +++ b/cogs/invite_link.py @@ -5,7 +5,7 @@ import discord from config import settings -from utils import TeXBotBaseCog, TeXBotApplicationContext +from utils import TeXBotApplicationContext, TeXBotBaseCog if TYPE_CHECKING: from collections.abc import Sequence diff --git a/cogs/kill.py b/cogs/kill.py index b5385558b..761b11510 100644 --- a/cogs/kill.py +++ b/cogs/kill.py @@ -7,7 +7,7 @@ from discord.ui import View from exceptions import CommitteeRoleDoesNotExistError -from utils import CommandChecks, TeXBotBaseCog, TeXBotApplicationContext +from utils import CommandChecks, TeXBotApplicationContext, TeXBotBaseCog if TYPE_CHECKING: from collections.abc import Sequence diff --git a/cogs/make_applicant.py b/cogs/make_applicant.py index 7ba8fcd07..1ed972fac 100644 --- a/cogs/make_applicant.py +++ b/cogs/make_applicant.py @@ -6,7 +6,12 @@ import discord from exceptions.does_not_exist import ApplicantRoleDoesNotExistError, GuildDoesNotExistError -from utils import CommandChecks, TeXBotBaseCog, TeXBotApplicationContext, TeXBotAutocompleteContext +from utils import ( + CommandChecks, + TeXBotApplicationContext, + TeXBotAutocompleteContext, + TeXBotBaseCog, +) if TYPE_CHECKING: from collections.abc import Sequence diff --git a/cogs/make_member.py b/cogs/make_member.py index 851052ea9..def295195 100644 --- a/cogs/make_member.py +++ b/cogs/make_member.py @@ -10,7 +10,7 @@ from config import settings from db.core.models import GroupMadeMember from exceptions import ApplicantRoleDoesNotExistError, GuestRoleDoesNotExistError -from utils import CommandChecks, TeXBotBaseCog, TeXBotApplicationContext +from utils import CommandChecks, TeXBotApplicationContext, TeXBotBaseCog from utils.msl import fetch_community_group_members_count, is_id_a_community_group_member if TYPE_CHECKING: diff --git a/cogs/ping.py b/cogs/ping.py index 8672b86b8..ecb77631b 100644 --- a/cogs/ping.py +++ b/cogs/ping.py @@ -6,7 +6,7 @@ import discord from config import settings -from utils import TeXBotBaseCog, TeXBotApplicationContext +from utils import TeXBotApplicationContext, TeXBotBaseCog if TYPE_CHECKING: from collections.abc import Sequence diff --git a/cogs/source.py b/cogs/source.py index a8a7aca69..87d437549 100644 --- a/cogs/source.py +++ b/cogs/source.py @@ -4,7 +4,7 @@ import discord -from utils import TeXBotBaseCog, TeXBotApplicationContext +from utils import TeXBotApplicationContext, TeXBotBaseCog if TYPE_CHECKING: from collections.abc import Sequence diff --git a/cogs/stats/__init__.py b/cogs/stats/__init__.py index 0307596cc..4900b5def 100644 --- a/cogs/stats/__init__.py +++ b/cogs/stats/__init__.py @@ -8,7 +8,7 @@ from config import settings from db.core.models import LeftDiscordMember -from utils import CommandChecks, TeXBotBaseCog, TeXBotApplicationContext +from utils import CommandChecks, TeXBotApplicationContext, TeXBotBaseCog from utils.error_capture_decorators import capture_guild_does_not_exist_error from .counts import get_channel_message_counts, get_server_message_counts diff --git a/cogs/strike.py b/cogs/strike.py index 584da4054..398113670 100644 --- a/cogs/strike.py +++ b/cogs/strike.py @@ -5,6 +5,7 @@ import datetime import logging import re +from collections.abc import Set as AbstractSet from typing import TYPE_CHECKING import discord @@ -18,13 +19,18 @@ NoAuditLogsStrikeTrackingError, StrikeTrackingError, ) -from utils import CommandChecks, TeXBotBaseCog, TeXBotApplicationContext, TeXBotAutocompleteContext +from utils import ( + CommandChecks, + TeXBotApplicationContext, + TeXBotAutocompleteContext, + TeXBotBaseCog, +) from utils.error_capture_decorators import ( capture_guild_does_not_exist_error, capture_strike_tracking_error, ) from utils.message_sender_components import ChannelMessageSender, ResponseMessageSender -from collections.abc import Set as AbstractSet + if TYPE_CHECKING: from collections.abc import Mapping, Sequence from logging import Logger diff --git a/cogs/write_roles.py b/cogs/write_roles.py index 9e847d5f7..2bb6e09bd 100644 --- a/cogs/write_roles.py +++ b/cogs/write_roles.py @@ -5,7 +5,7 @@ import discord from config import settings -from utils import CommandChecks, TeXBotBaseCog, TeXBotApplicationContext +from utils import CommandChecks, TeXBotApplicationContext, TeXBotBaseCog if TYPE_CHECKING: from collections.abc import Sequence From 62494f610dcfdb2aea8208cd781902e4fbf1810b Mon Sep 17 00:00:00 2001 From: Matty Widdop <18513864+MattyTheHacker@users.noreply.github.com> Date: Wed, 16 Sep 2026 15:21:37 +0100 Subject: [PATCH 4/5] Undo change --- cogs/command_error.py | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/cogs/command_error.py b/cogs/command_error.py index 37c1f8500..d6c5e55a0 100644 --- a/cogs/command_error.py +++ b/cogs/command_error.py @@ -9,13 +9,15 @@ from exceptions import GuildDoesNotExistError from exceptions.base import BaseErrorWithErrorCode -from utils import CommandChecks, TeXBotApplicationContext, TeXBotBaseCog +from utils import CommandChecks, TeXBotBaseCog if TYPE_CHECKING: from collections.abc import Sequence from logging import Logger from typing import Final + from utils import TeXBotApplicationContext + __all__: Sequence[str] = ("CommandErrorCog",) From 377e580845d3196cf15a7c7aa95d3d134b5aafdd Mon Sep 17 00:00:00 2001 From: Matty Widdop <18513864+MattyTheHacker@users.noreply.github.com> Date: Wed, 16 Sep 2026 15:27:08 +0100 Subject: [PATCH 5/5] Ignore the remaining warnings --- cogs/add_users_to_threads_and_channels.py | 6 +++--- cogs/annual_handover_and_reset.py | 2 +- cogs/archive.py | 6 +++--- cogs/check_su_platform_authorisation.py | 4 ++-- cogs/committee_actions_tracking.py | 6 +++--- cogs/delete_all.py | 2 +- cogs/edit_message.py | 6 +++--- cogs/everest.py | 8 ++++++-- cogs/induct.py | 6 +++--- cogs/invite_link.py | 2 +- cogs/kill.py | 2 +- cogs/make_applicant.py | 4 ++-- cogs/make_member.py | 2 +- cogs/ping.py | 2 +- cogs/source.py | 2 +- cogs/stats/__init__.py | 2 +- cogs/strike.py | 6 +++--- cogs/write_roles.py | 2 +- 18 files changed, 37 insertions(+), 33 deletions(-) diff --git a/cogs/add_users_to_threads_and_channels.py b/cogs/add_users_to_threads_and_channels.py index d6e094607..619b1faf1 100644 --- a/cogs/add_users_to_threads_and_channels.py +++ b/cogs/add_users_to_threads_and_channels.py @@ -2,7 +2,7 @@ import logging from collections.abc import Iterable -from collections.abc import Set as AbstractSet +from collections.abc import Set as AbstractSet # noqa: TC003 from typing import TYPE_CHECKING import discord @@ -11,8 +11,8 @@ from exceptions import GuestRoleDoesNotExistError, GuildDoesNotExistError from utils import ( CommandChecks, - TeXBotApplicationContext, - TeXBotAutocompleteContext, + TeXBotApplicationContext, # noqa: TC001 + TeXBotAutocompleteContext, # noqa: TC001 TeXBotBaseCog, ) from utils.error_capture_decorators import capture_guild_does_not_exist_error diff --git a/cogs/annual_handover_and_reset.py b/cogs/annual_handover_and_reset.py index 5c8ff99fd..064d0b699 100644 --- a/cogs/annual_handover_and_reset.py +++ b/cogs/annual_handover_and_reset.py @@ -8,7 +8,7 @@ from config import settings from db.core.models import GroupMadeMember -from utils import CommandChecks, TeXBotApplicationContext, TeXBotBaseCog +from utils import CommandChecks, TeXBotApplicationContext, TeXBotBaseCog # noqa: TC001 if TYPE_CHECKING: from collections.abc import Collection, Mapping, Sequence diff --git a/cogs/archive.py b/cogs/archive.py index f9591ba3e..02976a93d 100644 --- a/cogs/archive.py +++ b/cogs/archive.py @@ -2,7 +2,7 @@ import logging import re -from collections.abc import Set as AbstractSet +from collections.abc import Set as AbstractSet # noqa: TC003 from typing import TYPE_CHECKING import discord @@ -11,8 +11,8 @@ from exceptions.base import BaseDoesNotExistError from utils import ( CommandChecks, - TeXBotApplicationContext, - TeXBotAutocompleteContext, + TeXBotApplicationContext, # noqa: TC001 + TeXBotAutocompleteContext, # noqa: TC001 TeXBotBaseCog, ) diff --git a/cogs/check_su_platform_authorisation.py b/cogs/check_su_platform_authorisation.py index 03a7aaa47..4a0601285 100644 --- a/cogs/check_su_platform_authorisation.py +++ b/cogs/check_su_platform_authorisation.py @@ -1,7 +1,7 @@ """Contains cog classes for SU platform access cookie authorisation check interactions.""" import logging -from collections.abc import Set as AbstractSet +from collections.abc import Set as AbstractSet # noqa: TC003 from enum import Enum from typing import TYPE_CHECKING, override @@ -10,7 +10,7 @@ from discord.ext import tasks from config import settings -from utils import CommandChecks, TeXBotApplicationContext, TeXBotBaseCog +from utils import CommandChecks, TeXBotApplicationContext, TeXBotBaseCog # noqa: TC001 from utils.error_capture_decorators import ( capture_guild_does_not_exist_error, ) diff --git a/cogs/committee_actions_tracking.py b/cogs/committee_actions_tracking.py index fd262f979..14088e7d4 100644 --- a/cogs/committee_actions_tracking.py +++ b/cogs/committee_actions_tracking.py @@ -4,7 +4,7 @@ import logging import random import textwrap -from collections.abc import Set as AbstractSet +from collections.abc import Set as AbstractSet # noqa: TC003 from enum import Enum from typing import TYPE_CHECKING @@ -21,8 +21,8 @@ ) from utils import ( CommandChecks, - TeXBotApplicationContext, - TeXBotAutocompleteContext, + TeXBotApplicationContext, # noqa: TC001 + TeXBotAutocompleteContext, # noqa: TC001 TeXBotBaseCog, ) diff --git a/cogs/delete_all.py b/cogs/delete_all.py index ab1c876a7..7199a3e05 100644 --- a/cogs/delete_all.py +++ b/cogs/delete_all.py @@ -11,7 +11,7 @@ SentGetRolesReminderMember, SentOneOffIntroductionReminderMember, ) -from utils import CommandChecks, TeXBotApplicationContext, TeXBotBaseCog +from utils import CommandChecks, TeXBotApplicationContext, TeXBotBaseCog # noqa: TC001 if TYPE_CHECKING: from collections.abc import Sequence diff --git a/cogs/edit_message.py b/cogs/edit_message.py index 7280e0311..db80252d0 100644 --- a/cogs/edit_message.py +++ b/cogs/edit_message.py @@ -1,7 +1,7 @@ """Contains cog classes for any edit_message interactions.""" import re -from collections.abc import Set as AbstractSet +from collections.abc import Set as AbstractSet # noqa: TC003 from typing import TYPE_CHECKING, override import discord @@ -10,8 +10,8 @@ from exceptions.base import BaseDoesNotExistError from utils import ( CommandChecks, - TeXBotApplicationContext, - TeXBotAutocompleteContext, + TeXBotApplicationContext, # noqa: TC001 + TeXBotAutocompleteContext, # noqa: TC001 TeXBotBaseCog, ) diff --git a/cogs/everest.py b/cogs/everest.py index 680a1defc..b91e54fc1 100644 --- a/cogs/everest.py +++ b/cogs/everest.py @@ -1,13 +1,17 @@ """Contains cog classes for any Everest interactions.""" import logging -from collections.abc import Set as AbstractSet +from collections.abc import Set as AbstractSet # noqa: TC003 from enum import Enum from typing import TYPE_CHECKING, override import discord -from utils import TeXBotApplicationContext, TeXBotAutocompleteContext, TeXBotBaseCog +from utils import ( # noqa: TC001 + TeXBotApplicationContext, + TeXBotAutocompleteContext, + TeXBotBaseCog, +) if TYPE_CHECKING: from collections.abc import Sequence diff --git a/cogs/induct.py b/cogs/induct.py index 6f9090b07..9f8c3ba16 100644 --- a/cogs/induct.py +++ b/cogs/induct.py @@ -3,7 +3,7 @@ import contextlib import logging import random -from collections.abc import Set as AbstractSet +from collections.abc import Set as AbstractSet # noqa: TC003 from typing import TYPE_CHECKING import discord @@ -20,8 +20,8 @@ ) from utils import ( CommandChecks, - TeXBotApplicationContext, - TeXBotAutocompleteContext, + TeXBotApplicationContext, # noqa: TC001 + TeXBotAutocompleteContext, # noqa: TC001 TeXBotBaseCog, ) from utils.error_capture_decorators import capture_guild_does_not_exist_error diff --git a/cogs/invite_link.py b/cogs/invite_link.py index 48d9b05c9..cbee7f88d 100644 --- a/cogs/invite_link.py +++ b/cogs/invite_link.py @@ -5,7 +5,7 @@ import discord from config import settings -from utils import TeXBotApplicationContext, TeXBotBaseCog +from utils import TeXBotApplicationContext, TeXBotBaseCog # noqa: TC001 if TYPE_CHECKING: from collections.abc import Sequence diff --git a/cogs/kill.py b/cogs/kill.py index 761b11510..8fdc46a92 100644 --- a/cogs/kill.py +++ b/cogs/kill.py @@ -7,7 +7,7 @@ from discord.ui import View from exceptions import CommitteeRoleDoesNotExistError -from utils import CommandChecks, TeXBotApplicationContext, TeXBotBaseCog +from utils import CommandChecks, TeXBotApplicationContext, TeXBotBaseCog # noqa: TC001 if TYPE_CHECKING: from collections.abc import Sequence diff --git a/cogs/make_applicant.py b/cogs/make_applicant.py index 1ed972fac..33f0e9332 100644 --- a/cogs/make_applicant.py +++ b/cogs/make_applicant.py @@ -8,8 +8,8 @@ from exceptions.does_not_exist import ApplicantRoleDoesNotExistError, GuildDoesNotExistError from utils import ( CommandChecks, - TeXBotApplicationContext, - TeXBotAutocompleteContext, + TeXBotApplicationContext, # noqa: TC001 + TeXBotAutocompleteContext, # noqa: TC001 TeXBotBaseCog, ) diff --git a/cogs/make_member.py b/cogs/make_member.py index def295195..5ab3fb71d 100644 --- a/cogs/make_member.py +++ b/cogs/make_member.py @@ -10,7 +10,7 @@ from config import settings from db.core.models import GroupMadeMember from exceptions import ApplicantRoleDoesNotExistError, GuestRoleDoesNotExistError -from utils import CommandChecks, TeXBotApplicationContext, TeXBotBaseCog +from utils import CommandChecks, TeXBotApplicationContext, TeXBotBaseCog # noqa: TC001 from utils.msl import fetch_community_group_members_count, is_id_a_community_group_member if TYPE_CHECKING: diff --git a/cogs/ping.py b/cogs/ping.py index ecb77631b..a363381f3 100644 --- a/cogs/ping.py +++ b/cogs/ping.py @@ -6,7 +6,7 @@ import discord from config import settings -from utils import TeXBotApplicationContext, TeXBotBaseCog +from utils import TeXBotApplicationContext, TeXBotBaseCog # noqa: TC001 if TYPE_CHECKING: from collections.abc import Sequence diff --git a/cogs/source.py b/cogs/source.py index 87d437549..e7ed1991b 100644 --- a/cogs/source.py +++ b/cogs/source.py @@ -4,7 +4,7 @@ import discord -from utils import TeXBotApplicationContext, TeXBotBaseCog +from utils import TeXBotApplicationContext, TeXBotBaseCog # noqa: TC001 if TYPE_CHECKING: from collections.abc import Sequence diff --git a/cogs/stats/__init__.py b/cogs/stats/__init__.py index 4900b5def..b979874a8 100644 --- a/cogs/stats/__init__.py +++ b/cogs/stats/__init__.py @@ -8,7 +8,7 @@ from config import settings from db.core.models import LeftDiscordMember -from utils import CommandChecks, TeXBotApplicationContext, TeXBotBaseCog +from utils import CommandChecks, TeXBotApplicationContext, TeXBotBaseCog # noqa: TC001 from utils.error_capture_decorators import capture_guild_does_not_exist_error from .counts import get_channel_message_counts, get_server_message_counts diff --git a/cogs/strike.py b/cogs/strike.py index 398113670..dcf8e1ae8 100644 --- a/cogs/strike.py +++ b/cogs/strike.py @@ -5,7 +5,7 @@ import datetime import logging import re -from collections.abc import Set as AbstractSet +from collections.abc import Set as AbstractSet # noqa: TC003 from typing import TYPE_CHECKING import discord @@ -21,8 +21,8 @@ ) from utils import ( CommandChecks, - TeXBotApplicationContext, - TeXBotAutocompleteContext, + TeXBotApplicationContext, # noqa: TC001 + TeXBotAutocompleteContext, # noqa: TC001 TeXBotBaseCog, ) from utils.error_capture_decorators import ( diff --git a/cogs/write_roles.py b/cogs/write_roles.py index 2bb6e09bd..22355643a 100644 --- a/cogs/write_roles.py +++ b/cogs/write_roles.py @@ -5,7 +5,7 @@ import discord from config import settings -from utils import CommandChecks, TeXBotApplicationContext, TeXBotBaseCog +from utils import CommandChecks, TeXBotApplicationContext, TeXBotBaseCog # noqa: TC001 if TYPE_CHECKING: from collections.abc import Sequence