adjust default log, pick and config locations. renotify on critical only, make user sessions persistem

This commit is contained in:
Andreas Wrede
2026-04-10 13:24:57 -04:00
parent 2015195112
commit 2468386f24
8 changed files with 26 additions and 11 deletions
+14
View File
@@ -226,3 +226,17 @@ def _purge_expired_sessions() -> None:
expired = [t for t, s in list(_sessions.items()) if s["expires"] < now]
for t in expired:
del _sessions[t]
def save_sessions() -> dict:
"""Return a snapshot of non-expired sessions suitable for pickling."""
_purge_expired_sessions()
return dict(_sessions)
def load_sessions(snapshot: dict) -> None:
"""Restore sessions from a pickled snapshot, dropping any that have expired."""
global _sessions
now = time.time()
_sessions = {t: s for t, s in snapshot.items() if s.get("expires", 0) > now}
logger.debug("Restored %d session(s) from pickle", len(_sessions))