mirror of
https://git.anonymousland.org/anonymousland/synapse.git
synced 2025-05-13 05:12:12 -04:00
Reduce the number of "untyped defs" (#12716)
This commit is contained in:
parent
de1e599b9d
commit
17e1eb7749
16 changed files with 142 additions and 69 deletions
|
@ -23,6 +23,7 @@ from synapse.storage.database import DatabasePool, LoggingDatabaseConnection
|
|||
from synapse.storage.databases.main.event_push_actions import (
|
||||
EventPushActionsWorkerStore,
|
||||
)
|
||||
from synapse.storage.types import Cursor
|
||||
|
||||
if TYPE_CHECKING:
|
||||
from synapse.server import HomeServer
|
||||
|
@ -71,7 +72,7 @@ class ServerMetricsStore(EventPushActionsWorkerStore, SQLBaseStore):
|
|||
self._last_user_visit_update = self._get_start_of_day()
|
||||
|
||||
@wrap_as_background_process("read_forward_extremities")
|
||||
async def _read_forward_extremities(self):
|
||||
async def _read_forward_extremities(self) -> None:
|
||||
def fetch(txn):
|
||||
txn.execute(
|
||||
"""
|
||||
|
@ -95,7 +96,7 @@ class ServerMetricsStore(EventPushActionsWorkerStore, SQLBaseStore):
|
|||
(x[0] - 1) * x[1] for x in res if x[1]
|
||||
)
|
||||
|
||||
async def count_daily_e2ee_messages(self):
|
||||
async def count_daily_e2ee_messages(self) -> int:
|
||||
"""
|
||||
Returns an estimate of the number of messages sent in the last day.
|
||||
|
||||
|
@ -115,7 +116,7 @@ class ServerMetricsStore(EventPushActionsWorkerStore, SQLBaseStore):
|
|||
|
||||
return await self.db_pool.runInteraction("count_e2ee_messages", _count_messages)
|
||||
|
||||
async def count_daily_sent_e2ee_messages(self):
|
||||
async def count_daily_sent_e2ee_messages(self) -> int:
|
||||
def _count_messages(txn):
|
||||
# This is good enough as if you have silly characters in your own
|
||||
# hostname then that's your own fault.
|
||||
|
@ -136,7 +137,7 @@ class ServerMetricsStore(EventPushActionsWorkerStore, SQLBaseStore):
|
|||
"count_daily_sent_e2ee_messages", _count_messages
|
||||
)
|
||||
|
||||
async def count_daily_active_e2ee_rooms(self):
|
||||
async def count_daily_active_e2ee_rooms(self) -> int:
|
||||
def _count(txn):
|
||||
sql = """
|
||||
SELECT COUNT(DISTINCT room_id) FROM events
|
||||
|
@ -151,7 +152,7 @@ class ServerMetricsStore(EventPushActionsWorkerStore, SQLBaseStore):
|
|||
"count_daily_active_e2ee_rooms", _count
|
||||
)
|
||||
|
||||
async def count_daily_messages(self):
|
||||
async def count_daily_messages(self) -> int:
|
||||
"""
|
||||
Returns an estimate of the number of messages sent in the last day.
|
||||
|
||||
|
@ -171,7 +172,7 @@ class ServerMetricsStore(EventPushActionsWorkerStore, SQLBaseStore):
|
|||
|
||||
return await self.db_pool.runInteraction("count_messages", _count_messages)
|
||||
|
||||
async def count_daily_sent_messages(self):
|
||||
async def count_daily_sent_messages(self) -> int:
|
||||
def _count_messages(txn):
|
||||
# This is good enough as if you have silly characters in your own
|
||||
# hostname then that's your own fault.
|
||||
|
@ -192,7 +193,7 @@ class ServerMetricsStore(EventPushActionsWorkerStore, SQLBaseStore):
|
|||
"count_daily_sent_messages", _count_messages
|
||||
)
|
||||
|
||||
async def count_daily_active_rooms(self):
|
||||
async def count_daily_active_rooms(self) -> int:
|
||||
def _count(txn):
|
||||
sql = """
|
||||
SELECT COUNT(DISTINCT room_id) FROM events
|
||||
|
@ -226,7 +227,7 @@ class ServerMetricsStore(EventPushActionsWorkerStore, SQLBaseStore):
|
|||
"count_monthly_users", self._count_users, thirty_days_ago
|
||||
)
|
||||
|
||||
def _count_users(self, txn, time_from):
|
||||
def _count_users(self, txn: Cursor, time_from: int) -> int:
|
||||
"""
|
||||
Returns number of users seen in the past time_from period
|
||||
"""
|
||||
|
@ -238,7 +239,10 @@ class ServerMetricsStore(EventPushActionsWorkerStore, SQLBaseStore):
|
|||
) u
|
||||
"""
|
||||
txn.execute(sql, (time_from,))
|
||||
(count,) = txn.fetchone()
|
||||
# Mypy knows that fetchone() might return None if there are no rows.
|
||||
# We know better: "SELECT COUNT(...) FROM ..." without any GROUP BY always
|
||||
# returns exactly one row.
|
||||
(count,) = txn.fetchone() # type: ignore[misc]
|
||||
return count
|
||||
|
||||
async def count_r30_users(self) -> Dict[str, int]:
|
||||
|
@ -453,7 +457,7 @@ class ServerMetricsStore(EventPushActionsWorkerStore, SQLBaseStore):
|
|||
"count_r30v2_users", _count_r30v2_users
|
||||
)
|
||||
|
||||
def _get_start_of_day(self):
|
||||
def _get_start_of_day(self) -> int:
|
||||
"""
|
||||
Returns millisecond unixtime for start of UTC day.
|
||||
"""
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue