# requirements.txt — Lumen Bot # Python 3.10+ # # ВАЖНО: версии зафиксированы через == (а не >=), т.к. HF Spaces пересобирает # Docker-образ с нуля при каждом деплое, и без верхней границы `pip install` # мог бы молча подтянуть новую мажорную версию с ломающими изменениями API — # особенно критично для google-genai, чей API (types.GoogleSearch, # types.GoogleMaps, types.UrlContext и т.п.) активно используется в bot.py # и менялся между мажорными версиями. Обновлять версии здесь — осознанное # решение с последующей проверкой /diag и ручным тестом основных команд, # а не побочный эффект случайного редеплоя. aiohttp==3.14.1 aiogram==3.29.1 fastapi==0.139.0 google-genai==2.11.0 mutagen==1.48.1 uvicorn==0.51.0 # tzdata — python:3.10-slim (см. Dockerfile) не ставит системную базу часовых # поясов через apt, а stdlib-модуль zoneinfo (используется в _current_quota_day # для дневного сброса счётчиков квоты по America/Los_Angeles — там у Google # полночь для обнуления RPD-лимитов) без нeё падает ZoneInfoNotFoundError. Код # и так безопасно откатывается на UTC при отсутствии данных (см. try/except в # _current_quota_day), но тогда сброс квоты сдвигается на 7-8 часов от реального # обнуления лимита у Google — с этим пакетом сброс происходит в верное время. # Чистый pip-пакет с данными IANA tzdb, без компиляции — не раздувает образ. tzdata==2025.2