Fixed
- Media downloads recover from transient "location unavailable" errors — Telegram sometimes reports a media file's storage location as temporarily unavailable (
LOCATION_NOT_AVAILABLE, orLOCATION_INVALID, onupload.GetFile). The backup now re-fetches the message for a fresh file reference/location and retries with exponential backoff; if the file is still unavailable after a few attempts, the item is left for the next scheduled run rather than failing outright. Telethon surfaces these as a genericBadRequestError(the code is preserved on the exception), so they previously fell through to a plain retry that could not recover a stale reference. The message-refresh call and per-download timeout were also hardened so they can no longer cancel a Telegram rate-limit (FloodWait) wait. (#203, #204)
Credits
- Thanks to @charys117 for reporting the production
LOCATION_NOT_AVAILABLEfailures — with detailed Telethon error-mapping evidence — and contributing the fix in #203.
📋 Full changelog: docs/CHANGELOG.md