revert dbcc41ff since methods are not actually internal

pull/6/head
Michael D. M. Dryden 2021-06-20 01:40:09 -04:00
rodzic 271f21d11d
commit 447172ef0e
2 zmienionych plików z 9 dodań i 9 usunięć

Wyświetl plik

@ -92,8 +92,8 @@ def update_usernames_wrapper(context: CallbackContext):
def update_usernames(context: CallbackContext): # context.job.context contains the chat_id
user_ids = stats._get_message_user_ids()
db_users = stats._get_db_users()
user_ids = stats.get_message_user_ids()
db_users = stats.get_db_users()
tg_users = {user_id: None for user_id in user_ids}
to_update = {}
for u_id in tg_users:
@ -109,9 +109,9 @@ def update_usernames(context: CallbackContext): # context.job.context contains
to_update[u_id] = tg_users[u_id]
except BadRequest: # Handle users no longer in chat or haven't messaged since bot joined
logger.debug("Couldn't get user %s", u_id) # debug level because will spam every hour
stats._update_user_ids(to_update)
stats.update_user_ids(to_update)
if stats.users_lock.acquire(timeout=10):
stats.users = stats._get_db_users()
stats.users = stats.get_db_users()
stats.users_lock.release()
else:
logger.warning("Couldn't acquire username lock.")

Wyświetl plik

@ -88,16 +88,16 @@ class StatsRunner(object):
self.engine = engine
self.tz = tz
self.users: Dict[int, Tuple[str, str]] = self._get_db_users()
self.users: Dict[int, Tuple[str, str]] = self.get_db_users()
self.users_lock = Lock()
def _get_message_user_ids(self) -> List[int]:
def get_message_user_ids(self) -> List[int]:
"""Returns list of unique user ids from messages in database."""
with self.engine.connect() as con:
result = con.execute("SELECT DISTINCT from_user FROM messages_utc;")
return [user for user, in result.fetchall()]
def _get_db_users(self) -> Dict[int, Tuple[str, str]]:
def get_db_users(self) -> Dict[int, Tuple[str, str]]:
"""Returns dictionary mapping user ids to usernames and full names."""
query = """
select user_id, username, display_name from (
@ -116,7 +116,7 @@ class StatsRunner(object):
return {user_id: (username, name) for user_id, username, name in result}
def _update_user_ids(self, user_dict: Dict[int, Tuple[str, str]]):
def update_user_ids(self, user_dict: Dict[int, Tuple[str, str]]):
"""
Updates user names table with user_dict
:param user_dict: mapping of user ids to (username, display name)
@ -176,7 +176,7 @@ class StatsRunner(object):
query_where = f"WHERE {' AND '.join(query_conditions)}"
query = f"""
SELECT "from_user", COUNT(*)
SELECT "from_user", COUNT(*) as "count"
FROM "messages_utc"
{query_where}
GROUP BY "from_user"