Skip to content

Commit

Permalink
🐛 Adds missing explicit urllib3 sub dependency
Browse files Browse the repository at this point in the history
The `requests` module has `urllib3` and `chardet` as dependencies.
This used to be handled dynamically thanks to the `requests` recipe.
This is a drawback and side effect of kivy#2202.
The on device error was:
```
Imported unittest
loading tests...
running unittest...
unittest result is:
....EE........
======================================================================
ERROR: test_import_module (tests.test_requirements.RequestsTestCase)
----------------------------------------------------------------------
Traceback (most recent call last):
  File "/home/user/app/testapps/on_device_unit_tests/build/bdist.android-armeabi-v7a/test_app/tests/mixin.py", line 17, in test_import_module
  File "/home/user/.local/share/python-for-android/build/other_builds/python3/armeabi-v7a__ndk_target_21/python3/Lib/importlib/__init__.py", line 127, in import_module
  File "<frozen importlib._bootstrap>", line 1014, in _gcd_import
  File "<frozen importlib._bootstrap>", line 991, in _find_and_load
  File "<frozen importlib._bootstrap>", line 975, in _find_and_load_unlocked
  File "<frozen importlib._bootstrap>", line 671, in _load_unlocked
  File "<frozen importlib._bootstrap_external>", line 783, in exec_module
  File "<frozen importlib._bootstrap>", line 219, in _call_with_frames_removed
  File "/home/user/.local/share/python-for-android/build/python-installs/bdist_unit_tests_app/requests/__init__.py", line 43, in <module>
ModuleNotFoundError: No module named 'urllib3'

======================================================================
ERROR: test_run_module (tests.test_requirements.RequestsTestCase)
----------------------------------------------------------------------
Traceback (most recent call last):
  File "/home/user/app/testapps/on_device_unit_tests/build/bdist.android-armeabi-v7a/test_app/tests/test_requirements.py", line 74, in test_run_module
  File "/home/user/.local/share/python-for-android/build/python-installs/bdist_unit_tests_app/requests/__init__.py", line 43, in <module>
ModuleNotFoundError: No module named 'urllib3'

----------------------------------------------------------------------
Ran 14 tests in 0.591s

FAILED (errors=2)

Ran tests
```
  • Loading branch information
AndreMiras committed May 30, 2020
1 parent bff8a2a commit 8849ca0
Show file tree
Hide file tree
Showing 2 changed files with 4 additions and 3 deletions.
2 changes: 1 addition & 1 deletion Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -38,7 +38,7 @@ testapps-with-numpy/%: virtualenv
$(eval $@_APP_ARCH := $(shell basename $*))
. $(ACTIVATE) && cd testapps/on_device_unit_tests/ && \
python setup.py apk --sdk-dir $(ANDROID_SDK_HOME) --ndk-dir $(ANDROID_NDK_HOME) \
--requirements libffi,sdl2,pyjnius,kivy,python3,openssl,requests,sqlite3,setuptools,numpy \
--requirements libffi,sdl2,pyjnius,kivy,python3,openssl,requests,urllib3,chardet,sqlite3,setuptools,numpy \
--arch=$($@_APP_ARCH)

testapps/%: virtualenv
Expand Down
5 changes: 3 additions & 2 deletions testapps/on_device_unit_tests/setup.py
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,8 @@
app requirements via the dictionary `options`. Here you have some examples
to build the supported app modes::
- kivy *basic*: `sqlite3,libffi,openssl,pyjnius,kivy,python3,requests`
- kivy *basic*: `sqlite3,libffi,openssl,pyjnius,kivy,python3,requests,
urllib3,chardet`
- kivy *images/graphs*: `kivy,python3,numpy,matplotlib,Pillow`
- kivy *encryption*: `kivy,python3,cryptography,pycryptodome,scrypt,
m2crypto,pysha3`
Expand All @@ -39,7 +40,7 @@
'apk':
{
'requirements':
'sqlite3,libffi,openssl,pyjnius,kivy,python3,requests',
'sqlite3,libffi,openssl,pyjnius,kivy,python3,requests,urllib3,chardet',
'android-api': 27,
'ndk-api': 21,
'dist-name': 'bdist_unit_tests_app',
Expand Down

0 comments on commit 8849ca0

Please sign in to comment.