android/ios: artist artwork fallback fetches each artist source twice

Aperta
#1,105 0 commenti 0 reazioni 0 assegnatari Vedi su GitHub

Nessuno ha ancora preso questa issue.

Valutazione

Difficoltà
3/5
Tempo stimato
1-2 giorni
Idoneità per principianti
75/100
Tipo di issue
Bug
Chiarezza
Specificata chiaramente
Stato di attività
Attiva
Stack tecnologico
kotlin

Direzione di ricerca

Start by reading the #1103 changes around artist source fallback and ArtworkFetcher.kt:82-87, where undersized remote images are dropped from disk cache. Trace how artist and album sources are fetched and how the size check uses the fetched image. Done when artist sources are fetched once, the first undersized image is returned before album sources, and the duplicate sources and ARTIST_IMAGE_MINIMUM_SIZES are removed.

Scritto dal modello di indicizzazione a partire dal testo della issue.

Descrizione

enhancement impact:U1 P3 reach:R2 size:M

The #1103 chain tries each artist source at >=500px, then again at any size. On Android an under-size remote image is dropped from the disk cache (ArtworkFetcher.kt:82-87) and there is no HTTP cache, so an artist whose only image is small downloads it twice, and every miss (S2 404, no server image) is requested twice. With the name lookup on for all artists, that doubles first-load misses. iOS rereads from URLCache, so only misses double there.

Better: one pass over artist sources; the fetcher keeps the first under-size image it already holds for the size check and returns it before the album sources. Drops the duplicated sources and ARTIST_IMAGE_MINIMUM_SIZES.

Seen in review of 79e4b2e8d (#1103).

Impact U1 (extra requests, slower first artwork load) · Reach R2 (every artist without a large image) · Implemented: no · Design fit: fits · Complexity: M

Lingua principale
Kotlin
Stelle
233
Fork
28
Metriche di merge delle PR
Nessuna PR unita negli ultimi 30g

Preparare l'ambiente

Come iniziare

  1. Leggi tutta la issue e poi la guida ai contributi del progetto.
  2. Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
  3. Fai un fork del repository e lavora su un branch.
  4. Apri una pull request che faccia riferimento al numero della issue.

Altre issue di timusus/Shuttle2

Tutte le issue di timusus/Shuttle2

Issue simili

Altre issue su Kotlin

Ricevi le nuove issue nella tua casella

Un breve riepilogo di issue GitHub adatte ai principianti.