kivy / kivy/python-for-android

None is not allowed for bootstrap

Open
#2,201 2 comments 0 reactions 0 assignees View on GitHub
bug
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

Open the contributing 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

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.