aboutsummaryrefslogtreecommitdiffstats
path: root/metricity/__init__.py
diff options
context:
space:
mode:
Diffstat (limited to 'metricity/__init__.py')
-rw-r--r--metricity/__init__.py18
1 files changed, 17 insertions, 1 deletions
diff --git a/metricity/__init__.py b/metricity/__init__.py
index 5fecffc..9216f05 100644
--- a/metricity/__init__.py
+++ b/metricity/__init__.py
@@ -1,12 +1,20 @@
"""Metric collection for the Python Discord server."""
+import asyncio
import logging
+import os
+from typing import TYPE_CHECKING
+
import coloredlogs
+from botcore.utils import apply_monkey_patches
from metricity.config import PythonConfig
-__version__ = "1.3.0"
+if TYPE_CHECKING:
+ from metricity.bot import Bot
+
+__version__ = "1.4.0"
# Set root log level
logging.basicConfig(level=PythonConfig.log_level)
@@ -18,3 +26,11 @@ logging.getLogger("discord.client").setLevel(PythonConfig.discord_log_level)
# Gino has an obnoxiously loud log for all queries executed, not great when inserting
# tens of thousands of users, so we can disable that (it's just a SQLAlchemy logger)
logging.getLogger("gino.engine._SAEngine").setLevel(logging.WARNING)
+
+# On Windows, the selector event loop is required for aiodns.
+if os.name == "nt":
+ asyncio.set_event_loop_policy(asyncio.WindowsSelectorEventLoopPolicy())
+
+apply_monkey_patches()
+
+instance: "Bot" = None # Global Bot instance.