From 3ae0ac9d55886fd242748e8cd896e6280a6df07e Mon Sep 17 00:00:00 2001 From: Broque Thomas <26755000+Nezreka@users.noreply.github.com> Date: Mon, 18 May 2026 20:08:24 -0700 Subject: [PATCH] Fix musicbrainz test button --- core/connection_test.py | 10 ++++++++++ web_server.py | 1 + 2 files changed, 11 insertions(+) diff --git a/core/connection_test.py b/core/connection_test.py index 4064bab5..2019b4fe 100644 --- a/core/connection_test.py +++ b/core/connection_test.py @@ -379,6 +379,16 @@ def run_service_test(service, test_config): return False, "Hydrabase not connected. Configure URL + API key and click Connect." except Exception as e: return False, f"Hydrabase connection error: {str(e)}" + elif service == "musicbrainz": + try: + from core.metadata.registry import get_musicbrainz_client + mb = get_musicbrainz_client() + results = mb.search_artists("radiohead", limit=1) + if results: + return True, "MusicBrainz reachable" + return False, "MusicBrainz returned no results — may be rate-limited or unreachable." + except Exception as e: + return False, f"MusicBrainz connection error: {str(e)}" elif service == "soundcloud": # Anonymous SoundCloud has no auth, so "test" really means # "is yt-dlp installed and can it reach SoundCloud right now." diff --git a/web_server.py b/web_server.py index 44518521..695b9a57 100644 --- a/web_server.py +++ b/web_server.py @@ -1859,6 +1859,7 @@ SERVICE_CONFIG_REGISTRY = { 'spotify': {'required': ['client_id', 'client_secret']}, 'itunes': {'always': True}, # default storefront works anon 'deezer': {'always': True}, # anon search works, premium ARL is optional + 'musicbrainz': {'always': True}, # public API, no credentials required 'amazon': {'always': True}, # T2Tunes proxy, no credentials required 'discogs': {'required': ['token']}, 'tidal': {'custom': lambda _svc: _tidal_has_auth_token()},