aboutsummaryrefslogtreecommitdiffstats
path: root/pydis_site/apps/api/models
diff options
context:
space:
mode:
authorGravatar Johannes Christ <[email protected]>2023-05-10 12:30:57 +0200
committerGravatar Johannes Christ <[email protected]>2023-05-10 12:48:51 +0200
commit07855963a1eedd80c410ab2dd51fcae1200c9cee (patch)
tree9ed264f9c5dacd44c4382a6c8d73e56a16af5234 /pydis_site/apps/api/models
parentMerge pull request #966 from python-discord/dependabot/pip/flake8-bugbear-23.5.9 (diff)
Switch to ruff for linting
Diffstat (limited to 'pydis_site/apps/api/models')
-rw-r--r--pydis_site/apps/api/models/bot/message.py7
-rw-r--r--pydis_site/apps/api/models/bot/metricity.py19
2 files changed, 12 insertions, 14 deletions
diff --git a/pydis_site/apps/api/models/bot/message.py b/pydis_site/apps/api/models/bot/message.py
index 89ae27e4..d8147cd4 100644
--- a/pydis_site/apps/api/models/bot/message.py
+++ b/pydis_site/apps/api/models/bot/message.py
@@ -61,9 +61,10 @@ class Message(ModelReprMixin, models.Model):
@property
def timestamp(self) -> datetime.datetime:
"""Attribute that represents the message timestamp as derived from the snowflake id."""
- return datetime.datetime.utcfromtimestamp(
- ((self.id >> 22) + 1420070400000) / 1000
- ).replace(tzinfo=datetime.timezone.utc)
+ return datetime.datetime.fromtimestamp(
+ ((self.id >> 22) + 1420070400000) / 1000,
+ tz=datetime.timezone.utc,
+ )
class Meta:
"""Metadata provided for Django's ORM."""
diff --git a/pydis_site/apps/api/models/bot/metricity.py b/pydis_site/apps/api/models/bot/metricity.py
index f53dd33c..a55f5e5b 100644
--- a/pydis_site/apps/api/models/bot/metricity.py
+++ b/pydis_site/apps/api/models/bot/metricity.py
@@ -1,4 +1,3 @@
-from typing import List, Tuple
from django.db import connections
@@ -10,10 +9,9 @@ EXCLUDE_CHANNELS = (
)
-class NotFoundError(Exception): # noqa: N818
+class NotFoundError(Exception):
"""Raised when an entity cannot be found."""
- pass
class Metricity:
@@ -31,15 +29,14 @@ class Metricity:
def user(self, user_id: str) -> dict:
"""Query a user's data."""
# TODO: Swap this back to some sort of verified at date
- columns = ["joined_at"]
- query = f"SELECT {','.join(columns)} FROM users WHERE id = '%s'"
+ query = "SELECT joined_at FROM users WHERE id = '%s'"
self.cursor.execute(query, [user_id])
values = self.cursor.fetchone()
if not values:
- raise NotFoundError()
+ raise NotFoundError
- return dict(zip(columns, values))
+ return {'joined_at': values[0]}
def total_messages(self, user_id: str) -> int:
"""Query total number of messages for a user."""
@@ -58,7 +55,7 @@ class Metricity:
values = self.cursor.fetchone()
if not values:
- raise NotFoundError()
+ raise NotFoundError
return values[0]
@@ -88,11 +85,11 @@ class Metricity:
values = self.cursor.fetchone()
if not values:
- raise NotFoundError()
+ raise NotFoundError
return values[0]
- def top_channel_activity(self, user_id: str) -> List[Tuple[str, int]]:
+ def top_channel_activity(self, user_id: str) -> list[tuple[str, int]]:
"""
Query the top three channels in which the user is most active.
@@ -127,7 +124,7 @@ class Metricity:
values = self.cursor.fetchall()
if not values:
- raise NotFoundError()
+ raise NotFoundError
return values