Sort_YM/sort_ym
Andrew Pimenov 384095f496 skip tracks without album on insert, stop retrying BadRequestError
apply --yes падал целиком на первом же самозалитом/пиратском треке без
альбома (105 из 1984) - Яндекс отвечает BadRequestError (wrong-json),
т.к. albumId обязателен, а with_retries лечил это как временный сетевой
сбой и вслепую повторял заведомо безнадёжный запрос 4 раза. Теперь
BadRequestError (как и NotFoundError) не ретраится нигде - это
окончательный ответ сервера, а не таймаут. Треки без album_id
пропускаются проактивно с понятным сообщением, а неожиданный
BadRequestError на отдельном треке больше не прерывает весь прогон -
пропускается со счётчиком, остальные треки обрабатываются дальше.
2026-07-06 15:06:07 +03:00
..
__init__.py init: сортировка лайков Яндекс.Музыки по жанру и языку 2026-07-06 09:49:36 +03:00
__main__.py init: сортировка лайков Яндекс.Музыки по жанру и языку 2026-07-06 09:49:36 +03:00
apply.py skip tracks without album on insert, stop retrying BadRequestError 2026-07-06 15:06:07 +03:00
auth.py init: сортировка лайков Яндекс.Музыки по жанру и языку 2026-07-06 09:49:36 +03:00
classify.py classify tracks by combined track + artist genre signals 2026-07-06 14:26:49 +03:00
cli.py classify tracks by combined track + artist genre signals 2026-07-06 14:26:49 +03:00
config.py classify tracks by combined track + artist genre signals 2026-07-06 14:26:49 +03:00
fetch.py classify tracks by combined track + artist genre signals 2026-07-06 14:26:49 +03:00
genres.py classify tracks by combined track + artist genre signals 2026-07-06 14:26:49 +03:00
language.py retry network errors and raise request timeout 2026-07-06 10:05:22 +03:00
report.py classify tracks by combined track + artist genre signals 2026-07-06 14:26:49 +03:00
ymclient.py skip tracks without album on insert, stop retrying BadRequestError 2026-07-06 15:06:07 +03:00