kivy / kivy/python-for-android

[improvement] make prerequisites check parallel + cache results to speed things up.

Open
#2,897 0 comments 0 reactions 0 assignees View on GitHub
feature-request Priority: Medium
Dominant language
Python
Stars
8.9k
Forks
2k
Avg merge
12h 20m
Merged PRs (30d)
9

Description

* Prerequisites check (macOS) happens several times during APK/AAB build (i.e. at different stages of `buildozer android debug deploy run logcat`) and not only once.
* This is not a problem during first build that is long anyways and the dependencies are crucial, but on the application rebuild these checks take some numerable percent of build time and this can be improved.
* The idea is to have list of prerequisites, launch a checks in parallel, return a result, and then based on a result install possible missing dependencies one after another This should speed reoccurring checks several times. Most of the times no missing packages will be reported anyways.
* In addition some unique per build cache can be used to store prerequisites check results, that will even more speed things up because no unnecessary checks will reoccur.

Contributor guide

Open the contributing guide

Research direction

Start by tracing the prerequisite checks triggered during `buildozer android debug deploy run logcat` and compare first builds with application rebuilds. Done means checks run in parallel, missing dependencies are installed sequentially, and per-build results prevent repeated checks without changing required dependency detection.

Written by the indexing model from the issue text.

Assessment

Tech stack
android, python
Domain
build-system
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
30/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.