From 1214b44a3ac65d164ca5cf0472a6ee136df192b3 Mon Sep 17 00:00:00 2001 From: JarbasAI <33701864+JarbasAl@users.noreply.github.com> Date: Wed, 11 Sep 2024 01:15:18 +0100 Subject: [PATCH] trust semantic versioning (#538) * stable dependencies * fix:handle old padacioso versions --- .../intent_services/padacioso_service.py | 12 ++++++-- requirements/mycroft.txt | 30 +++++++++---------- requirements/requirements.txt | 18 +++++------ requirements/skills-audio.txt | 7 +++++ requirements/skills-desktop.txt | 5 ++-- requirements/skills-essential.txt | 20 ++++++------- requirements/skills-gui.txt | 2 +- requirements/skills-internet.txt | 14 +++++---- requirements/skills-media.txt | 10 ++++--- setup.py | 1 + test/unittests/skills/test_intent_service.py | 5 +--- 11 files changed, 69 insertions(+), 55 deletions(-) create mode 100644 requirements/skills-audio.txt diff --git a/ovos_core/intent_services/padacioso_service.py b/ovos_core/intent_services/padacioso_service.py index f051423739f..0c888c48bab 100644 --- a/ovos_core/intent_services/padacioso_service.py +++ b/ovos_core/intent_services/padacioso_service.py @@ -61,9 +61,15 @@ def __init__(self, bus, config): self.conf_low = self.padacioso_config.get("conf_low") or 0.5 self.workers = self.padacioso_config.get("workers") or 4 - self.containers = {lang: FallbackIntentContainer( - self.padacioso_config.get("fuzz"), n_workers=self.workers) - for lang in langs} + try: + self.containers = { + lang: FallbackIntentContainer(self.padacioso_config.get("fuzz"), + n_workers=self.workers) + for lang in langs} + except TypeError: # old padacioso version without n_workers kwarg + self.containers = { + lang: FallbackIntentContainer(self.padacioso_config.get("fuzz")) + for lang in langs} self.bus.on('padatious:register_intent', self.register_intent) self.bus.on('padatious:register_entity', self.register_entity) diff --git a/requirements/mycroft.txt b/requirements/mycroft.txt index 79032544319..45af4f21e6d 100644 --- a/requirements/mycroft.txt +++ b/requirements/mycroft.txt @@ -1,22 +1,22 @@ # ovos modules for compat with mycroft namespace -ovos_PHAL<0.1.0, >=0.0.5a14 -ovos-audio~=0.0, >=0.0.2a32 -ovos-listener~=0.0, >=0.0.3a2 -ovos-gui~=0.0, >=0.0.4a5 -ovos-messagebus~=0.0 +ovos_PHAL>=0.0.5,<1.0.0 +ovos-audio>=0.0.0,<1.0.0 +ovos-listener>=0.0.3,<1.0.0 +ovos-gui>=0.0.4,<1.0.0 +ovos-messagebus>=0.0.1,<1.0.0 # default plugins -ovos-stt-plugin-server>=0.0.3, <0.1.0 -ovos-tts-plugin-mimic>=0.2.8, <0.3.0 -ovos-tts-plugin-server>=0.0.2a6 +ovos-stt-plugin-server>=0.0.3, <1.0.0 +ovos-tts-plugin-mimic>=0.2.8, <1.0.0 +ovos-tts-plugin-server>=0.0.2a6, <1.0.0 -ovos-ww-plugin-pocketsphinx~=0.1 -ovos-ww-plugin-precise~=0.1 -ovos-vad-plugin-webrtcvad>=0.0.1, <0.1.0 +ovos-ww-plugin-pocketsphinx>=0.1, <1.0.0 +ovos-ww-plugin-precise>=0.1, <1.0.0 +ovos-vad-plugin-webrtcvad>=0.0.1, <1.0.0 -ovos_plugin_common_play>=0.0.6a11, <0.1.0 +ovos_plugin_common_play>=0.0.7, <1.0.0 # ovos-ocp-youtube-plugin~=0.0, >=0.0.1 -ovos-ocp-m3u-plugin>=0.0.1,<0.1.0 -ovos-ocp-rss-plugin>=0.0.2,<0.1.0 +ovos-ocp-m3u-plugin>=0.0.1,<1.0.0 +ovos-ocp-rss-plugin>=0.0.2,<1.0.0 ovos-ocp-files-plugin~=0.13 -ovos-ocp-news-plugin>=0.0.3,<0.1.0 +ovos-ocp-news-plugin>=0.0.3,<1.0.0 diff --git a/requirements/requirements.txt b/requirements/requirements.txt index 887af0caeac..71f50158529 100644 --- a/requirements/requirements.txt +++ b/requirements/requirements.txt @@ -3,18 +3,18 @@ python-dateutil>=2.6, <3.0 watchdog>=2.1, <3.0 combo-lock>=0.2.2, <0.3 -padacioso~=0.2, >=0.2.1 +padacioso>=0.1.0,<1.0.0 adapt-parser>=1.0.0, <2.0.0 -ovos-utils>=0.0.38 -ovos_bus_client<0.1.0, >=0.0.9a28 -ovos-plugin-manager<0.1.0, >=0.0.26a33 -ovos-config~=0.0,>=0.0.13a8 -ovos-lingua-franca>=0.4.7 -ovos-backend-client~=0.1.0 -ovos-workshop>=0.0.16a45 +ovos-utils>=0.0.38,<1.0.0 +ovos_bus_client>=0.0.9,<1.0.0 +ovos-plugin-manager>=0.0.26,<1.0.0 +ovos-config>=0.0.13,<1.0.0 +ovos-lingua-franca>=0.4.7,<1.0.0 +ovos-backend-client>=0.1.0,<1.0.0 +ovos-workshop>=0.0.16,<1.0.0 -ovos-utterance-normalizer>=0.0.0a5 +ovos-utterance-normalizer>=0.1.0,<1.0.0 # ensure default plugin available for any solver plugins ovos-translate-server-plugin diff --git a/requirements/skills-audio.txt b/requirements/skills-audio.txt new file mode 100644 index 00000000000..7e326349a4c --- /dev/null +++ b/requirements/skills-audio.txt @@ -0,0 +1,7 @@ +# skills that run in audio enabled devices (require mic/speaker) +ovos-skill-boot-finished>=0.1.0,<1.0.0 +ovos-skill-audio-recording>=0.1.0,<1.0.0 +ovos-skill-dictation>=0.1.0,<1.0.0 +ovos-skill-parrot>=0.0.1,<1.0.0 +ovos-skill-volume>=0.0.2,<1.0.0 +ovos-skill-naptime>=0.2.3,<1.0.0 diff --git a/requirements/skills-desktop.txt b/requirements/skills-desktop.txt index dd825328658..d4023d4d430 100644 --- a/requirements/skills-desktop.txt +++ b/requirements/skills-desktop.txt @@ -1,3 +1,2 @@ -# TODO - publish -# https://github.com/OpenVoiceOS/skill-ovos-dictation -# https://github.com/OpenVoiceOS/skill-ovos-application-launcher +# skills that require a linux desktop environment +ovos-skill-application-launcher>=0.1.0,<1.0.0 diff --git a/requirements/skills-essential.txt b/requirements/skills-essential.txt index 34a1b74dcc7..2bd437bcf1c 100644 --- a/requirements/skills-essential.txt +++ b/requirements/skills-essential.txt @@ -1,11 +1,9 @@ -ovos-skill-volume~=0.0, >=0.0.2a3 -ovos-skill-fallback-unknown~=0.0, >=0.0.4a1 -ovos-skill-alerts>=0.0.1a6 -ovos-skill-personal~=0.0, >=0.0.4a1 -ovos-skill-naptime~=0.2, >=0.2.2 -ovos-skill-date-time>=0.2.3a4 -ovos-skill-hello-world~=0.0, >=0.0.4a2 -ovos-skill-parrot -# TODO - publish -# https://github.com/OpenVoiceOS/skill-ovos-boot-finished -# https://github.com/OpenVoiceOS/skill-ovos-audio-recording +# skills providing core functionality (offline) +ovos-skill-fallback-unknown>=0.0.4,<1.0.0 +ovos-skill-alerts>=0.0.1,<1.0.0 +ovos-skill-personal>=0.0.4,<1.0.0 +ovos-skill-date-time>=0.2.3,<1.0.0 +ovos-skill-hello-world>=0.0.4,<1.0.0 +skill-wordnet>=0.0.1,<1.0.0 +#skill-randomness>=0.0.1,<1.0.0 +ovos-skill-spelling>=0.1.0,<1.0.0 diff --git a/requirements/skills-gui.txt b/requirements/skills-gui.txt index 4d657d952d1..ae894f4c1f9 100644 --- a/requirements/skills-gui.txt +++ b/requirements/skills-gui.txt @@ -1 +1 @@ -ovos-skill-homescreen +ovos-skill-homescreen>=0.0.3,<1.0.0 \ No newline at end of file diff --git a/requirements/skills-internet.txt b/requirements/skills-internet.txt index de90dd2c953..5d545d0b6cd 100644 --- a/requirements/skills-internet.txt +++ b/requirements/skills-internet.txt @@ -1,5 +1,9 @@ -ovos-skill-weather~=0.0, >=0.0.1a14 -ovos-skill-ddg -ovos-skill-wolfie -ovos-skill-wikipedia -skill-ovos-fallback-chatgpt +# skills that require internet connectivity, should not be installed in offline devices +ovos-skill-weather>=0.0.1,<1.0.0 +skill-ddg>=0.0.2,<1.0.0 +skill-wolfie>=0.2.0,<1.0.0 +ovos-skill-wikipedia>=0.5.0,<1.0.0 +skill-ovos-fallback-chatgpt>=0.0.2,<1.0.0 +ovos-skill-wikihow>=0.2.0,<1.0.0 +ovos-skill-speedtest>=0.1.0,<1.0.0 +ovos-skill-ip>=0.1.0,<1.0.0 diff --git a/requirements/skills-media.txt b/requirements/skills-media.txt index d04476683ed..4bc45f639d8 100644 --- a/requirements/skills-media.txt +++ b/requirements/skills-media.txt @@ -1,4 +1,6 @@ -ovos-skill-somafm -skill-youtube-music -ovos-skill-tunein -ovos-skill-news +# skills for OCP, require audio playback plugins (usually mpv) +ovos-skill-somafm>=0.0.2,<1.0.0 +skill-news>=0.0.4,<1.0.0 +ovos-skill-pyradios>=0.1.0,<1.0.0 +ovos-skill-local-media>=0.2.0,<1.0.0 +ovos-skill-youtube-music>=0.1.1,<1.0.0 diff --git a/setup.py b/setup.py index cecb0a70642..24f0c636de1 100644 --- a/setup.py +++ b/setup.py @@ -71,6 +71,7 @@ def required(requirements_file): 'lgpl': required('requirements/lgpl.txt'), 'deprecated': required('requirements/extra-deprecated.txt'), 'skills-essential': required('requirements/skills-essential.txt'), + 'skills-audio': required('requirements/skills-audio.txt'), 'skills-desktop': required('requirements/skills-desktop.txt'), 'skills-internet': required('requirements/skills-internet.txt'), 'skills-gui': required('requirements/skills-gui.txt'), diff --git a/test/unittests/skills/test_intent_service.py b/test/unittests/skills/test_intent_service.py index 79b64f2f538..986c0550b50 100644 --- a/test/unittests/skills/test_intent_service.py +++ b/test/unittests/skills/test_intent_service.py @@ -337,11 +337,8 @@ def test_shutdown(self): 'register_intent', 'register_vocab', 'remove_context', - 'skill.converse.get_response', 'skill.converse.get_response.disable', - 'skill.converse.get_response.enable', - 'skill.converse.ping', - 'skill.converse.request'}) + 'skill.converse.get_response.enable'}) class TestAdaptIntent(TestCase):