Cache avatars and emotes, add Cache-Control #9

closed cmc opened this on 2026-09-11 02:07 UTC

Discussion

cmc 2026-09-11 02:07 UTC

Emojitar in app/wrapper.go fetches from a.deviantart.net or e.deviantart.net on every request and never stores the result. Route it through the same disk and memory cache path as DownloadAndSendMedia.

Add Cache-Control headers: long max-age with immutable on /media/file (token-signed wixmp URLs do not change), a day on avatars and emotes, a day on /stylesheet and /favicon.ico, a short max-age on HTML matching the API cache TTL.

Depends on: nothing, but pairs with 1.1.

Verify: second avatar request is served without an upstream fetch; headers present in curl -I output.

Roadmap item 1.2, size M. See ROADMAP.md.

closed by commit 1b89e1fe37 by cmc: Cache avatars and emotes, and send Cache-Control headers

2026-09-11 15:13 UTC