Перейти к содержанию

Обновление с 1.x

API /v1 обратно совместим: пути, параметры и структура ответов те же, и существующие клиенты продолжают работать. Изменения касаются в основном эксплуатации.

Изменения в поведении

Область 1.x 2.0
POST /v1/feed включён по умолчанию выключен по умолчанию — задайте ENABLE_FEED=true
POST /v1/previews 404 на весь запрос, если не найден один канал возвращает существующие каналы, остальные опускает
Страница, которую не удалось разобрать 400 502
Один некорректный пост ломалась вся страница пост пропускается и записывается в лог
?position= больше 999 999 422 принимается (до 10 000 000)
Inline-клавиатуры только первый ряд все ряды подряд по порядку
forwarded.name.html некорректный (<span dir="auto">…) разметка имени
forwarded.author — новое необязательное поле
Заголовок Server uvicorn granian

Изменения в конфигурации

Все переменные 1.x сохраняют своё значение: PORT, DISABLE_DOCS, REDIS_URL, ENABLE_FEED, ENABLE_PREVIEWS, ENABLE_RATE_LIMIT, RATE_LIMIT_RPM, CACHE_MODE, PARSER_MODE.

  • У REDIS_URL больше нет значения по умолчанию: без неё используется кэш внутри процесса, а не попытка подключиться к localhost:6379.
  • VERSION удалена; версия берётся из пакета.
  • Новые параметры перечислены в разделе Конфигурация.

Изменения в развёртывании

  • Образ запускается командой telegram-me serve (granian) вместо start.sh (uvicorn). Порт внутри контейнера по-прежнему 3000.
  • Конфигурационные файлы для Fly.io, Google App Engine и Heroku удалены.
  • docker-compose.yml и docker-compose.ghcr.yml заменены одним compose.yaml с пресетами.
  • Серверы, развёрнутые старым workflow, мигрируют автоматически при первом развёртывании 2.0 (см. Продакшен).

Ключи Redis

2.0 хранит кэш под префиксом tme:v2:. Ключи, записанные 1.x (telegram:preview:*), игнорируются и сами истекают в течение двух часов.