"""Temp directory scanner and cleaner. Ported from net.i2p.util.TempDirScanner. """ from __future__ import annotations import os import time def scan_temp_dir(directory: str, max_age_secs: float) -> list[str]: """Remove files older than max_age_secs from directory. Returns list of removed file paths. """ removed: list[str] = [] now = time.time() try: for entry in os.scandir(directory): if entry.is_file(): age = now - entry.stat().st_mtime if age > max_age_secs: try: os.unlink(entry.path) removed.append(entry.path) except OSError: pass except OSError: pass return removed