#775 already resolves pasted Spotify / Apple / MusicBrainz / Deezer links to an exact artist/album/track on the Search page. Added Discogs to that set (the one source in the request not already covered; Amazon left out per request). - by_id resolver: discogs in SUPPORTED_SOURCES + _KNOWN_HOSTS; parse /artist/<id>-slug, /release/<id>-slug, /master/<id>-slug (master→album), and strip the slug to the leading numeric id. Discogs has no standalone track URLs (tracks live inside a release), so artist + album resolve. - Fetch dispatch: discogs albums use get_album(include_tracks=False) like itunes/musicbrainz; artists use get_artist; both already return the common normalized card shape. Updated the not-a-link hint to mention Discogs. Frontend needs no change — it adopts whatever source the resolver returns and Discogs is already a search source. Tests: parse release/master/artist (slug-stripped, scheme-less) + resolve release→get_album(numeric id) and artist→get_artist. 43 by_id tests pass. |
||
|---|---|---|
| .. | ||
| __init__.py | ||
| basic.py | ||
| by_id.py | ||
| cache.py | ||
| library_check.py | ||
| orchestrator.py | ||
| sources.py | ||
| stream.py | ||