diff --git a/services/npmplus.py b/services/npmplus.py index a6b80e0..fc94d98 100644 --- a/services/npmplus.py +++ b/services/npmplus.py @@ -48,7 +48,17 @@ def _request_json( with urlopen(req, timeout=10, context=context) as resp: payload = resp.read().decode("utf-8") except HTTPError as e: - raise RuntimeError(f"HTTP {e.code}") from e + detail = f"HTTP {e.code}" + try: + payload = e.read().decode("utf-8").strip() + except Exception: + payload = "" + if payload: + payload = " ".join(payload.split()) + if len(payload) > 300: + payload = payload[:300] + "..." + detail = f"{detail}: {payload}" + raise RuntimeError(f"{detail} ({url})") from e except URLError as e: raise RuntimeError(str(e.reason)) from e