Skip to content

v1.0.3-elf.2 — MDBlist Retry-After + fleet-wide 429 cooldown

Choose a tag to compare

@funkypenguin funkypenguin released this 26 May 23:22
c23a356

Fork-only patch on top of upstream v1.0.3. The -elf.N suffix is a semver pre-release tag so this sorts strictly between v1.0.3 and the next upstream v1.0.4.

What changed

Bug Fixes

  • MDBlist 429 handling now honours Retry-After and applies a fleet-wide cooldown. When MDBlist returned an HTTP 429, the fork was discarding the Retry-After header, applying a flat 1-hour per-title back-off, and continuing to fan out concurrent requests so every queued title individually tripped its own 429. Now: the Retry-After value is parsed and used (capped at 1h) for the per-title back-off, and a short global cooldown (capped at 120s) is set on any 429 and checked before every MDBlist call. With the Redis coordinator this cooldown is fleet-wide; with the in-process coordinator it's per-worker. Logs match upstream's format. (#26)

  • Rating-display-mode=2 no longer renders literal "Genre ★ None" when no rating is available (e.g. no MDBlist key configured, per-title back-off active, or global cooldown active). Falls back to "N/A" at the source. (#26)

Relationship to upstream

Backport of MDBlist 429 hardening that landed in upstream UmbraProjects/PostersPlus around v1.0.0. Our fork branched off pre-v1.0.0 and missed it.