kivy / kivy/python-for-android
None is not allowed for bootstrap
- Dominant language
- Python
- Stars
- 8.9k
- Forks
- 2k
- Avg merge
- 12h 20m
- Merged PRs (30d)
- 9
Description
### Versions
* Python: 3.8.2
* OS: Windows 10/WSL
* Kivy: 2.0.0c2
* Cython: 0.29.17
### Description
Using p4a master 5/15/2020 and python-for-android==2020.4.29 neither from Buildozer
```
[INFO]: # Your distribution was created successfully, exiting.
[INFO]: Dist can be found at (for now) /home/bobf/.local/share/python-for-android/dists/fl__arm64-v8a
[INFO]: Of the existing distributions, the following meet the given requirements:
[INFO]: fl: min API 21, includes recipes (hostpython3, libffi, openssl, sdl2_image, sdl2_mixer, sdl2_ttf, sqlite3, python3, sdl2, setuptools, six, pyjnius, android, kivy, certifi), built for archs (arm64-v8a)
[INFO]: fl has compatible recipes, using this one
Traceback (most recent call last):
File "/home/bobf/.local/bin/p4a", line 8, in
sys.exit(main())
File "/home/bobf/.local/lib/python3.8/site-packages/pythonforandroid/entrypoints.py", line 18, in main
ToolchainCL()
File "/home/bobf/.local/lib/python3.8/site-packages/pythonforandroid/toolchain.py", line 692, in __init__
getattr(self, command)(args)
File "/home/bobf/.local/lib/python3.8/site-packages/pythonforandroid/toolchain.py", line 155, in wrapper_func
func(self, args, **kw)
File "/home/bobf/.local/lib/python3.8/site-packages/pythonforandroid/toolchain.py", line 1111, in apk
output, build_args = self._build_package(args, package_type='apk')
File "/home/bobf/.local/lib/python3.8/site-packages/pythonforandroid/toolchain.py", line 1004, in _build_package
ctx.prepare_bootstrap(bs)
File "/home/bobf/.local/lib/python3.8/site-packages/pythonforandroid/build.py", line 480, in prepare_bootstrap
raise TypeError("None is not allowed for bootstrap")
TypeError: None is not allowed for bootstrap
```
Worakaround is the long unrequired .p4a option:
`--bootstrap=sdl2`
### buildozer.spec
Command:
```sh
// REPLACE ME: buildozer command ran? e.g. buildozer android debug
```
Spec file:
```
// REPLACE ME: Paste your buildozer.spec file here
```
### Logs
```
// REPLACE ME: Paste the build ouput containing the error
```
Contributor guide
Research direction
Start at pythonforandroid/toolchain.py in the apk flow and follow bootstrap preparation into pythonforandroid/build.py, where the reported TypeError is raised. Reproduce the failure with the reported setup and compare it with the explicit --bootstrap=sdl2 workaround; done means the command handles bootstrap selection without this TypeError or gives a clear actionable error.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- android, python
- Domain
- build-system, mobile
- Issue type
- Bug
- Difficulty
- 3/5
- Estimated time
- 1-2 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 35/100