From 079ba2a529c284b8c433982cc75898ac433dfc72 Mon Sep 17 00:00:00 2001 From: Marc Mueller <30130371+cdce8p@users.noreply.github.com> Date: Mon, 7 Oct 2024 12:47:08 +0200 Subject: [PATCH] Add strict typing to radio_browser (#127799) --- .strict-typing | 1 + homeassistant/components/radio_browser/manifest.json | 2 +- homeassistant/components/radio_browser/media_source.py | 2 +- mypy.ini | 10 ++++++++++ requirements_all.txt | 3 +++ requirements_test_all.txt | 3 +++ 6 files changed, 19 insertions(+), 2 deletions(-) diff --git a/.strict-typing b/.strict-typing index 5e9b13305c9..1e67c775cea 100644 --- a/.strict-typing +++ b/.strict-typing @@ -369,6 +369,7 @@ homeassistant.components.pvoutput.* homeassistant.components.qnap_qsw.* homeassistant.components.rabbitair.* homeassistant.components.radarr.* +homeassistant.components.radio_browser.* homeassistant.components.rainforest_raven.* homeassistant.components.rainmachine.* homeassistant.components.raspberry_pi.* diff --git a/homeassistant/components/radio_browser/manifest.json b/homeassistant/components/radio_browser/manifest.json index 4192805ec62..5a52d29d27a 100644 --- a/homeassistant/components/radio_browser/manifest.json +++ b/homeassistant/components/radio_browser/manifest.json @@ -6,5 +6,5 @@ "documentation": "https://www.home-assistant.io/integrations/radio_browser", "integration_type": "service", "iot_class": "cloud_polling", - "requirements": ["radios==0.3.1"] + "requirements": ["radios==0.3.1", "pycountry==23.12.11"] } diff --git a/homeassistant/components/radio_browser/media_source.py b/homeassistant/components/radio_browser/media_source.py index 8d2822ed50f..dc91525677b 100644 --- a/homeassistant/components/radio_browser/media_source.py +++ b/homeassistant/components/radio_browser/media_source.py @@ -4,8 +4,8 @@ from __future__ import annotations import mimetypes +import pycountry from radios import FilterBy, Order, RadioBrowser, Station -from radios.radio_browser import pycountry from homeassistant.components.media_player import MediaClass, MediaType from homeassistant.components.media_source import ( diff --git a/mypy.ini b/mypy.ini index 4e68d6ba2fb..695eb9e1981 100644 --- a/mypy.ini +++ b/mypy.ini @@ -3445,6 +3445,16 @@ disallow_untyped_defs = true warn_return_any = true warn_unreachable = true +[mypy-homeassistant.components.radio_browser.*] +check_untyped_defs = true +disallow_incomplete_defs = true +disallow_subclassing_any = true +disallow_untyped_calls = true +disallow_untyped_decorators = true +disallow_untyped_defs = true +warn_return_any = true +warn_unreachable = true + [mypy-homeassistant.components.rainforest_raven.*] check_untyped_defs = true disallow_incomplete_defs = true diff --git a/requirements_all.txt b/requirements_all.txt index 96283e91973..b66c3c894b8 100644 --- a/requirements_all.txt +++ b/requirements_all.txt @@ -1815,6 +1815,9 @@ pycomfoconnect==0.5.1 # homeassistant.components.coolmaster pycoolmasternet-async==0.2.2 +# homeassistant.components.radio_browser +pycountry==23.12.11 + # homeassistant.components.microsoft pycsspeechtts==1.0.8 diff --git a/requirements_test_all.txt b/requirements_test_all.txt index 4f181f4e710..dd8f7bfc3d5 100644 --- a/requirements_test_all.txt +++ b/requirements_test_all.txt @@ -1468,6 +1468,9 @@ pycomfoconnect==0.5.1 # homeassistant.components.coolmaster pycoolmasternet-async==0.2.2 +# homeassistant.components.radio_browser +pycountry==23.12.11 + # homeassistant.components.microsoft pycsspeechtts==1.0.8