Skip to content
This repository was archived by the owner on Dec 26, 2022. It is now read-only.
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
76 changes: 0 additions & 76 deletions .github/scripts/all_sorter.py

This file was deleted.

7 changes: 0 additions & 7 deletions .github/workflows/run_scripts.yml
Original file line number Diff line number Diff line change
Expand Up @@ -20,13 +20,6 @@ jobs:
git config user.email "[email protected]"
git pull

- name: running all sorter
run: |
python ./.github/scripts/all_sorter.py
git commit -am ":art: Automatic `__all__` sorting" || echo "No changes to commit"
git push || echo "No changes to push"


- name: running license generator
run: |
python ./.github/scripts/license_generator.py
Expand Down
135 changes: 105 additions & 30 deletions pincer/__init__.py
Original file line number Diff line number Diff line change
Expand Up @@ -14,18 +14,51 @@
from .cog import Cog
from .commands import command, ChatCommandHandler
from .exceptions import (
PincerError, InvalidPayload, UnhandledException, NoExportMethod,
CogError, CogNotFound, CogAlreadyExists, NoValidSetupMethod,
TooManySetupArguments, NoCogManagerReturnFound, CommandError,
CommandCooldownError, CommandIsNotCoroutine, CommandAlreadyRegistered,
CommandDescriptionTooLong, TooManyArguments, InvalidArgumentAnnotation,
CommandReturnIsEmpty, InvalidCommandGuild, InvalidCommandName,
InvalidEventName, InvalidUrlError, EmbedFieldError, TaskError,
TaskAlreadyRunning, TaskCancelError, TaskIsNotCoroutine, TaskInvalidDelay,
DispatchError, DisallowedIntentsError, InvalidTokenError, HeartbeatError,
UnavailableGuildError, HTTPError, NotModifiedError, BadRequestError,
UnauthorizedError, ForbiddenError, NotFoundError, MethodNotAllowedError,
RateLimitError, GatewayError, ServerError, EmbedOverflow, ImageEncodingError
PincerError,
InvalidPayload,
UnhandledException,
NoExportMethod,
CogError,
CogNotFound,
CogAlreadyExists,
NoValidSetupMethod,
TooManySetupArguments,
NoCogManagerReturnFound,
CommandError,
CommandCooldownError,
CommandIsNotCoroutine,
CommandAlreadyRegistered,
CommandDescriptionTooLong,
TooManyArguments,
InvalidArgumentAnnotation,
CommandReturnIsEmpty,
InvalidCommandGuild,
InvalidCommandName,
InvalidEventName,
InvalidUrlError,
EmbedFieldError,
TaskError,
TaskAlreadyRunning,
TaskCancelError,
TaskIsNotCoroutine,
TaskInvalidDelay,
DispatchError,
DisallowedIntentsError,
InvalidTokenError,
HeartbeatError,
UnavailableGuildError,
HTTPError,
NotModifiedError,
BadRequestError,
UnauthorizedError,
ForbiddenError,
NotFoundError,
MethodNotAllowedError,
RateLimitError,
GatewayError,
ServerError,
EmbedOverflow,
ImageEncodingError,
)
from .objects import Intents

Expand All @@ -51,29 +84,71 @@ class VersionInfo(NamedTuple):

def __repr__(self) -> str:
return f"{self.major}.{self.minor}.{self.micro}" + (
f"-{self.release_level}{self.serial}"
* (self.release_level is not None)
f"-{self.release_level}{self.serial}"
* (self.release_level is not None)
)


version_info = VersionInfo(0, 16, 0)
__version__ = repr(version_info)

__all__ = (
"BadRequestError", "Bot", "ChatCommandHandler", "Client", "Cog",
"CogAlreadyExists", "CogError", "CogNotFound", "CommandAlreadyRegistered",
"CommandCooldownError", "CommandDescriptionTooLong", "CommandError",
"CommandIsNotCoroutine", "CommandReturnIsEmpty", "DisallowedIntentsError",
"DispatchError", "EmbedFieldError", "EmbedOverflow", "ForbiddenError",
"GatewayConfig", "GatewayError", "HTTPError", "HeartbeatError",
"ImageEncodingError", "Intents", "InvalidArgumentAnnotation",
"InvalidCommandGuild", "InvalidCommandName", "InvalidEventName",
"InvalidPayload", "InvalidTokenError", "InvalidUrlError",
"MethodNotAllowedError", "NoCogManagerReturnFound", "NoExportMethod",
"NoValidSetupMethod", "NotFoundError", "NotModifiedError", "PincerError",
"RateLimitError", "ServerError", "TaskAlreadyRunning", "TaskCancelError",
"TaskError", "TaskInvalidDelay", "TaskIsNotCoroutine", "TooManyArguments",
"TooManySetupArguments", "UnauthorizedError", "UnavailableGuildError",
"UnhandledException", "__author__", "__email__", "__package__",
"__title__", "__version__", "command", "event_middleware"
"BadRequestError",
"Bot",
"ChatCommandHandler",
"Client",
"Cog",
"CogAlreadyExists",
"CogError",
"CogNotFound",
"CommandAlreadyRegistered",
"CommandCooldownError",
"CommandDescriptionTooLong",
"CommandError",
"CommandIsNotCoroutine",
"CommandReturnIsEmpty",
"DisallowedIntentsError",
"DispatchError",
"EmbedFieldError",
"EmbedOverflow",
"ForbiddenError",
"GatewayConfig",
"GatewayError",
"HTTPError",
"HeartbeatError",
"ImageEncodingError",
"Intents",
"InvalidArgumentAnnotation",
"InvalidCommandGuild",
"InvalidCommandName",
"InvalidEventName",
"InvalidPayload",
"InvalidTokenError",
"InvalidUrlError",
"MethodNotAllowedError",
"NoCogManagerReturnFound",
"NoExportMethod",
"NoValidSetupMethod",
"NotFoundError",
"NotModifiedError",
"PincerError",
"RateLimitError",
"ServerError",
"TaskAlreadyRunning",
"TaskCancelError",
"TaskError",
"TaskInvalidDelay",
"TaskIsNotCoroutine",
"TooManyArguments",
"TooManySetupArguments",
"UnauthorizedError",
"UnavailableGuildError",
"UnhandledException",
"__author__",
"__email__",
"__package__",
"__title__",
"__version__",
"command",
"event_middleware",
)
5 changes: 2 additions & 3 deletions pincer/_config.py
Original file line number Diff line number Diff line change
Expand Up @@ -9,6 +9,7 @@ class GatewayConfig:
"""This file is to make maintaining the library and its gateway
configuration easier. Leave compression blank for no compression.
"""

MAX_RETRIES: int = 5
version: int = 9
encoding: str = "json"
Expand All @@ -23,9 +24,7 @@ def make_uri(cls, uri) -> str:
The GatewayConfig's uri.
"""
return (
f"{uri}"
f"?v={cls.version}"
f"&encoding={cls.encoding}"
f"{uri}" f"?v={cls.version}" f"&encoding={cls.encoding}"
) + f"&compress={cls.compression}" * cls.compressed()

@classmethod
Expand Down
22 changes: 14 additions & 8 deletions pincer/client.py
Original file line number Diff line number Diff line change
Expand Up @@ -258,7 +258,9 @@ def chat_commands(self) -> List[str]:
Get a list of chat command calls which have been registered in
the :class:`~pincer.commands.ChatCommandHandler`\\.
"""
return [cmd.metadata.name for cmd in ChatCommandHandler.register.values()]
return [
cmd.metadata.name for cmd in ChatCommandHandler.register.values()
]

@property
def guild_ids(self) -> List[Snowflake]:
Expand Down Expand Up @@ -346,7 +348,9 @@ async def on_ready(self):
return event

@staticmethod
def get_event_coro(name: str) -> List[Optional[InteractableStructure[None]]]:
def get_event_coro(
name: str,
) -> List[Optional[InteractableStructure[None]]]:
"""get the coroutine for an event

Parameters
Expand All @@ -372,10 +376,7 @@ def get_event_coro(name: str) -> List[Optional[InteractableStructure[None]]]:

@staticmethod
def execute_event(
events: List[InteractableStructure],
gateway: Gateway,
*args,
**kwargs
events: List[InteractableStructure], gateway: Gateway, *args, **kwargs
):
"""Invokes an event.

Expand Down Expand Up @@ -1185,7 +1186,9 @@ async def delete_stage(self, _id: int, reason: Optional[str] = None):
f"stage-instances/{_id}", headers={"reason": reason}
)

async def crosspost_message(self, channel_id: int, message_id: int) -> UserMessage:
async def crosspost_message(
self, channel_id: int, message_id: int
) -> UserMessage:
"""|coro|
Crosspost a message in a News Channel to following channels.

Expand All @@ -1207,6 +1210,9 @@ async def crosspost_message(self, channel_id: int, message_id: int) -> UserMessa
The crossposted message
"""

return await self._http.post(f"channels/{channel_id}/{message_id}/crosspost")
return await self._http.post(
f"channels/{channel_id}/{message_id}/crosspost"
)


Bot = Client
3 changes: 2 additions & 1 deletion pincer/cog.py
Original file line number Diff line number Diff line change
Expand Up @@ -128,7 +128,8 @@ def cogs(self) -> List[Cog]:
The list of cogs
"""
return [
manager for manager in ChatCommandHandler.managers
manager
for manager in ChatCommandHandler.managers
if isinstance(manager, Cog)
]

Expand Down
44 changes: 36 additions & 8 deletions pincer/commands/__init__.py
Original file line number Diff line number Diff line change
Expand Up @@ -14,17 +14,45 @@
Modifier,
)
from .components import (
ActionRow, Button, ButtonStyle, ComponentHandler, SelectMenu, SelectOption,
component, button, select_menu, LinkButton
ActionRow,
Button,
ButtonStyle,
ComponentHandler,
SelectMenu,
SelectOption,
component,
button,
select_menu,
LinkButton,
)
from .groups import Group, Subgroup
from .interactable import Interactable, INTERACTION_REGISTERS

__all__ = (
"ActionRow", "Button", "ButtonStyle", "ChannelTypes",
"ChatCommandHandler", "Choice", "Choices", "CommandArg",
"ComponentHandler", "Description", "Group", "INTERACTION_REGISTERS",
"Interactable", "LinkButton", "MaxValue", "MinValue", "Modifier",
"SelectMenu", "SelectOption", "Subgroup", "button", "command", "component",
"message_command", "select_menu", "user_command"
"ActionRow",
"Button",
"ButtonStyle",
"ChannelTypes",
"ChatCommandHandler",
"Choice",
"Choices",
"CommandArg",
"ComponentHandler",
"Description",
"Group",
"INTERACTION_REGISTERS",
"Interactable",
"LinkButton",
"MaxValue",
"MinValue",
"Modifier",
"SelectMenu",
"SelectOption",
"Subgroup",
"button",
"command",
"component",
"message_command",
"select_menu",
"user_command",
)
Loading