aboutsummaryrefslogtreecommitdiffstats
path: root/testing/mycroft-core/0005-make-some-deps-optional.patch
diff options
context:
space:
mode:
authorBart Ribbers <bribbers@disroot.org>2020-04-30 16:59:38 +0200
committerRasmus Thomsen <oss@cogitri.dev>2020-05-09 17:24:24 +0000
commit8758aac07d8a4f7c68531fbb759477aba2525418 (patch)
tree82140787c2df6be22092a2df9d5241085505cbdb /testing/mycroft-core/0005-make-some-deps-optional.patch
parent50d68de6551d0c5bd2371206c71928d2a24a0162 (diff)
testing/mycroft-core: new aport
Diffstat (limited to 'testing/mycroft-core/0005-make-some-deps-optional.patch')
-rw-r--r--testing/mycroft-core/0005-make-some-deps-optional.patch187
1 files changed, 187 insertions, 0 deletions
diff --git a/testing/mycroft-core/0005-make-some-deps-optional.patch b/testing/mycroft-core/0005-make-some-deps-optional.patch
new file mode 100644
index 00000000000..c75a0fbd7d8
--- /dev/null
+++ b/testing/mycroft-core/0005-make-some-deps-optional.patch
@@ -0,0 +1,187 @@
+Upstream pull-request: https://github.com/MycroftAI/mycroft-core/pull/2575
+
+diff --git a/.travis.yml b/.travis.yml
+index c01c851d87..a0b9ab2c1c 100644
+--- a/.travis.yml
++++ b/.travis.yml
+@@ -26,8 +26,6 @@ install:
+ - mkdir ${TMPDIR}
+ - echo ${TMPDIR}
+ - VIRTUALENV_ROOT=${VIRTUAL_ENV} ./dev_setup.sh
+- - pip install -r requirements.txt
+- - pip install -r test-requirements.txt
+ # command to run tests
+ script:
+ - pycodestyle mycroft test
+diff --git a/LICENSE.md b/LICENSE.md
+index b2719d2a5e..b882a785c0 100644
+--- a/LICENSE.md
++++ b/LICENSE.md
+@@ -208,4 +208,4 @@ Component licenses for mycroft-core:
+ The mycroft-core software references various Python Packages (via PIP),
+ each of which has a separate license. All are compatible with the
+ Apache 2.0 license. See the referenced packages listed in the
+-"requirements.txt" file for specific terms and conditions.
++"requirements/requirements.txt" file for specific terms and conditions.
+diff --git a/MANIFEST.in b/MANIFEST.in
+index 1888d6da7b..1708d5345f 100644
+--- a/MANIFEST.in
++++ b/MANIFEST.in
+@@ -1,5 +1,5 @@
+ recursive-include mycroft/client/speech/recognizer/model *
+-include requirements.txt
++include requirements/requirements.txt
+ include mycroft/configuration/*.conf
+ recursive-include mycroft/res *
+ recursive-include mycroft/res/snd *
+diff --git a/dev_setup.sh b/dev_setup.sh
+index 3c59bc427b..f7f2d90009 100755
+--- a/dev_setup.sh
++++ b/dev_setup.sh
+@@ -495,16 +495,26 @@ if ! grep -q "$TOP" $VENV_PATH_FILE ; then
+ fi
+
+ # install required python modules
+-if ! pip install -r requirements.txt ; then
+- echo 'Warning: Failed to install all requirements. Continue? y/N'
++if ! pip install -r requirements/requirements.txt ; then
++ echo 'Warning: Failed to install required dependencies. Continue? y/N'
+ read -n1 continue
+ if [[ $continue != 'y' ]] ; then
+ exit 1
+ fi
+ fi
+
+-if ! pip install -r test-requirements.txt ; then
+- echo "Warning test requirements wasn't installed, Note: normal operation should still work fine..."
++# install optional python modules
++if ! pip install -r requirements/requirements-optional.txt ; then
++ echo 'Warning: Failed to install optional dependencies. Continue? y/N'
++ read -n1 continue
++ if [[ $continue != 'y' ]] ; then
++ exit 1
++ fi
++fi
++
++
++if ! pip install -r requirements/requirements-tests.txt ; then
++ echo "Warning: Test requirements failed to install. Note: normal operation should still work fine..."
+ fi
+
+ SYSMEM=$(free | awk '/^Mem:/ { print $2 }')
+@@ -563,4 +573,4 @@ if [[ ! -w /var/log/mycroft/ ]] ; then
+ fi
+
+ #Store a fingerprint of setup
+-md5sum requirements.txt test-requirements.txt dev_setup.sh > .installed
++md5sum requirements/requirements.txt requirements/requirements-optional.txt requirements/requirements-tests.txt dev_setup.sh > .installed
+diff --git a/mycroft/client/enclosure/generic/__init__.py b/mycroft/client/enclosure/generic/__init__.py
+index 6256498add..a86dda739c 100644
+--- a/mycroft/client/enclosure/generic/__init__.py
++++ b/mycroft/client/enclosure/generic/__init__.py
+@@ -15,7 +15,6 @@
+ import subprocess
+ import time
+ import sys
+-from alsaaudio import Mixer
+ from threading import Thread, Timer
+
+ import mycroft.dialog
+diff --git a/requirements/requirements-optional.txt b/requirements/requirements-optional.txt
+new file mode 100644
+index 0000000000..4a62dad731
+--- /dev/null
++++ b/requirements/requirements-optional.txt
+@@ -0,0 +1,4 @@
++pychromecast==3.2.2
++python-vlc==1.1.2
++pyalsaaudio==0.8.2
++google-api-python-client==1.6.4
+diff --git a/test-requirements.txt b/requirements/requirements-tests.txt
+similarity index 90%
+rename from test-requirements.txt
+rename to requirements/requirements-tests.txt
+index 874a0f130d..9e038123e5 100644
+--- a/test-requirements.txt
++++ b/requirements/requirements-tests.txt
+@@ -7,3 +7,5 @@ sphinx==2.2.1
+ sphinx-rtd-theme==0.4.3
+ git+https://github.com/behave/behave@v1.2.7.dev1
+ allure-behave==2.8.10
++
++python-vlc==1.1.2
+diff --git a/requirements.txt b/requirements/requirements.txt
+similarity index 83%
+rename from requirements.txt
+rename to requirements/requirements.txt
+index db2fa43738..f86a81b4bf 100644
+--- a/requirements.txt
++++ b/requirements/requirements.txt
+@@ -7,16 +7,12 @@ SpeechRecognition==3.8.1
+ tornado==6.0.3
+ websocket-client==0.54.0
+ requests-futures==0.9.5
+-pyalsaaudio==0.8.2
+ pyserial==3.0
+ psutil==5.6.6
+ pocketsphinx==0.1.0
+ inflection==0.3.1
+ pillow==7.1.2
+ python-dateutil==2.6.0
+-pychromecast==3.2.2
+-python-vlc==1.1.2
+-google-api-python-client==1.6.4
+ fasteners==0.14.1
+ PyYAML==5.1.2
+
+diff --git a/scripts/my-info.sh b/scripts/my-info.sh
+index a3b944308e..e395411120 100644
+--- a/scripts/my-info.sh
++++ b/scripts/my-info.sh
+@@ -144,7 +144,7 @@ function checkmimic() {
+ # pythoning!
+ function checkPIP() {
+ mlog "Python checks"
+- mlog " - Verifying ${MYCROFT_HOME}/requirements.txt:"
++ mlog " - Verifying ${MYCROFT_HOME}/requirements/requirements.txt:"
+ if workon mycroft ; then
+ pip list > /tmp/mycroft-piplist.$$
+
+diff --git a/setup.py b/setup.py
+index c98f7b4f8f..2e171d66b6 100644
+--- a/setup.py
++++ b/setup.py
+@@ -56,7 +56,9 @@ setup(
+ author_email='devs@mycroft.ai',
+ url='https://github.com/MycroftAI/mycroft-core',
+ description='Mycroft Core',
+- install_requires=required('requirements.txt'),
++ install_requires=required('requirements/requirements.txt'),
++ extras_requires=required('requirements/requirements-optional.txt'),
++ tests_requires=required('requirements/requirements-tests.txt'),
+ packages=find_packages(include=['mycroft*']),
+ include_package_data=True,
+
+diff --git a/test/Dockerfile.test b/test/Dockerfile.test
+index 87e3c85287..32554af019 100644
+--- a/test/Dockerfile.test
++++ b/test/Dockerfile.test
+@@ -64,12 +64,14 @@ RUN python3 -m venv "/opt/mycroft/mycroft-core/.venv"
+ # determine if any changes have been made since it last started
+ WORKDIR /opt/mycroft/mycroft-core
+ RUN .venv/bin/python -m pip install pip==20.0.2
+-COPY requirements.txt .
++COPY requirements/requirements.txt .
+ RUN .venv/bin/python -m pip install -r requirements.txt
+-COPY test-requirements.txt .
+-RUN .venv/bin/python -m pip install -r test-requirements.txt
++COPY requirements/requirements-optional.txt .
++RUN .venv/bin/python -m pip install -r requirements-optional.txt
++COPY requirements/requirements-tests.txt .
++RUN .venv/bin/python -m pip install -r requirements-tests.txt
+ COPY dev_setup.sh .
+-RUN md5sum requirements.txt test-requirements.txt dev_setup.sh > .installed
++RUN md5sum requirements.txt requirements-tests.txt requirements-optional.txt dev_setup.sh > .installed
+
+ # Add the mycroft core virtual environment to the system path.
+ ENV PATH /opt/mycroft/mycroft-core/.venv/bin:$PATH