library: S2 artwork API misses names with curly apostrophes and Unicode dashes
Nessuno ha ancora preso questa issue.
Valutazione
- Difficoltà
- 2/5
- Tempo stimato
- 1-3 ore
- Idoneità per principianti
- 82/100
- Tipo di issue
- Bug
- Chiarezza
- Specificata chiaramente
- Stato di attività
- Attiva
- Stack tecnologico
- kotlin
- Ambito
- backend-api-design
Direzione di ricerca
Inizia da S2ArtworkApi.albumArtworkUrl e artistArtworkUrl in android/mediaprovider/core/src/commonMain/.../S2ArtworkApi.kt, poi esamina i test unitari in :android:mediaprovider:core. Verifica come i nomi vengono trasformati in URL di ricerca e aggiungi test per gli apostrofi, le virgolette e i trattini Unicode elencati. Il lavoro è completato quando questi nomi producono ricerche normalizzate e i test unitari del core passano.
Scritto dal modello di indicizzazione a partire dal testo della issue.
Descrizione
Artist/album names with typographic punctuation miss in the S2 artwork API, so those items show placeholders when the media server has no image either.
GET /v1/artwork?artist=DMA's&album=How Many Dreams?→ 200; the same withDMA’s(U+2019) → 404.S2ArtworkApi.albumArtworkUrl/artistArtworkUrl(android/mediaprovider/core/src/commonMain/.../S2ArtworkApi.kt:21-23) pass the tag text through verbatim. Shared by Android (S2 artwork sources) and iOS (ArtworkUrls).- Seen on the owner's iPhone 2026-11-05: 7 S2 API lookups answered 404 during one Home screen load; DMA's tile shows the placeholder. That the library's tag uses U+2019 is (unverified): the App Store build's container and request URLs aren't readable.
Fix: normalise the lookup names before building the URL (‘ ’ ʼ → ', “ ” → ", Unicode hyphens/dashes → -), with unit tests in :android:mediaprovider:core. Cache keys change for affected items only, which is fine (misses aren't cached).
Impact U2 (visible missing covers) · Reach R2 (device repro, one library) · Implemented: no · Design fit: fits · Complexity: S
- Lingua principale
- Kotlin
- Stelle
- 234
- Fork
- 28
- Metriche di merge delle PR
- Nessuna PR unita negli ultimi 30g
Preparare l'ambiente
- Nessun Dockerfile né file Docker Compose
- Nessun modello di pull request
- Leggi la guida per i contributori
Come iniziare
- Leggi tutta la issue e poi la guida ai contributi del progetto.
- Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
- Fai un fork del repository e lavora su un branch.
- Apri una pull request che faccia riferimento al numero della issue.
Altre issue di timusus/Shuttle2
-
enhancement impact:U1 P3 reach:R2 size:S
Difficoltà 2/5 1-3 ore Idoneità per principianti 72/100
-
flaky
Difficoltà 4/5 1-2 giorni Idoneità per principianti 35/100
-
flaky
Difficoltà 3/5 1-2 giorni Idoneità per principianti 57/100
-
flaky
Difficoltà 4/5 1-2 giorni Idoneità per principianti 47/100
-
flaky
Difficoltà 4/5 3-5 giorni Idoneità per principianti 35/100
Tutte le issue di timusus/Shuttle2
Issue simili
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 74/100
QuranHub/quranhub-android#354 ·
I maintainer di solito rispondono entro 2 giorni
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 74/100
I maintainer di solito rispondono entro 2 giorni
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 75/100
-
Gradle plugin calls deprecated Configuration.setVisible (removed in Gradle 11)Forse già presa @griffio l’ha presa oggi. Apertacomponent: gradle-plugin
Difficoltà 2/5 1-3 ore Idoneità per principianti 83/100
sqldelight/sqldelight#6391 · 1 commento ·
-
unconfirmed
Difficoltà 2/5 1-3 ore Idoneità per principianti 72/100
thunderbird/thunderbird-android#11893 · 1 commento ·
I maintainer di solito rispondono entro 2 giorni