Added some additional typing information

This commit is contained in:
Frisk 2022-01-13 17:18:40 +01:00
parent f2b468d6e1
commit c87c066861
No known key found for this signature in database
GPG key ID: 213F7C15068AF8AC
2 changed files with 31 additions and 19 deletions

View file

@ -17,12 +17,12 @@ import re
import sys import sys
import time import time
import logging import logging
from typing import Optional from typing import Optional, Union, Tuple
import requests import requests
from src.configloader import settings from src.configloader import settings
from src.discord.message import DiscordMessage, DiscordMessageMetadata from src.discord.message import DiscordMessage, DiscordMessageMetadata, DiscordMessageRaw
AUTO_SUPPRESSION_ENABLED = settings.get("auto_suppression", {"enabled": False}).get("enabled") AUTO_SUPPRESSION_ENABLED = settings.get("auto_suppression", {"enabled": False}).get("enabled")
if AUTO_SUPPRESSION_ENABLED: if AUTO_SUPPRESSION_ENABLED:
@ -35,7 +35,7 @@ logger = logging.getLogger("rcgcdw.discord.queue")
class MessageQueue: class MessageQueue:
"""Message queue class for undelivered messages""" """Message queue class for undelivered messages"""
def __init__(self): def __init__(self):
self._queue = [] self._queue: list[Tuple[Union[DiscordMessage, DiscordMessageRaw], DiscordMessageMetadata]] = []
def __repr__(self): def __repr__(self):
return self._queue return self._queue
@ -49,10 +49,10 @@ class MessageQueue:
def clear(self): def clear(self):
self._queue.clear() self._queue.clear()
def add_message(self, message): def add_message(self, message: Tuple[Union[DiscordMessage, DiscordMessageRaw], DiscordMessageMetadata]):
self._queue.append(message) self._queue.append(message)
def cut_messages(self, item_num): def cut_messages(self, item_num: int):
self._queue = self._queue[item_num:] self._queue = self._queue[item_num:]
@staticmethod @staticmethod

View file

@ -14,9 +14,15 @@
# along with RcGcDw. If not, see <http://www.gnu.org/licenses/>. # along with RcGcDw. If not, see <http://www.gnu.org/licenses/>.
import gettext, sys, logging import gettext, sys, logging
from typing import Union, Optional
from src.configloader import settings from src.configloader import settings
logger = logging.getLogger("rcgcdw.i18n") logger = logging.getLogger("rcgcdw.i18n")
rcgcdw: Optional[Union[gettext.GNUTranslations, gettext.NullTranslations]] = None
discussion_formatters: Optional[Union[gettext.GNUTranslations, gettext.NullTranslations]] = None
rc: Optional[Union[gettext.GNUTranslations, gettext.NullTranslations]] = None
formatters_i18n: Optional[Union[gettext.GNUTranslations, gettext.NullTranslations]] = None
misc: Optional[Union[gettext.GNUTranslations, gettext.NullTranslations]] = None
redaction: Optional[Union[gettext.GNUTranslations, gettext.NullTranslations]] = None
# Setup translation # Setup translation
@ -27,7 +33,10 @@ def python37_pgettext_backward_compatibility(context: str, string: str):
return string return string
return translation return translation
try:
def load_languages():
global rcgcdw, rc, formatters_i18n, misc, redaction
try:
if settings["lang"] != "en": if settings["lang"] != "en":
rcgcdw = gettext.translation('rcgcdw', localedir='locale', languages=[settings["lang"]]) rcgcdw = gettext.translation('rcgcdw', localedir='locale', languages=[settings["lang"]])
rc = gettext.translation('rc', localedir='locale', languages=[settings["lang"]]) rc = gettext.translation('rc', localedir='locale', languages=[settings["lang"]])
@ -37,6 +46,9 @@ try:
else: else:
rcgcdw, discussion_formatters, rc, formatters_i18n, misc, redaction = gettext.NullTranslations(), gettext.NullTranslations(), gettext.NullTranslations(), gettext.NullTranslations(), gettext.NullTranslations(), gettext.NullTranslations() rcgcdw, discussion_formatters, rc, formatters_i18n, misc, redaction = gettext.NullTranslations(), gettext.NullTranslations(), gettext.NullTranslations(), gettext.NullTranslations(), gettext.NullTranslations(), gettext.NullTranslations()
formatters_i18n.pgettext = python37_pgettext_backward_compatibility formatters_i18n.pgettext = python37_pgettext_backward_compatibility
except FileNotFoundError: except FileNotFoundError:
logger.critical("No language files have been found. Make sure locale folder is located in the directory.") logger.critical("No language files have been found. Make sure locale folder is located in the directory.")
sys.exit(1) sys.exit(1)
load_languages()