Releases: kivy/python-for-android
Releases · kivy/python-for-android
v2026.05.09
What's Changed
- Merge
masterintodevelopby @misl6 in #2960 - recipes: new
materialyoucolorrecipe by @T-Dynamos in #2950 - Add support for display cutouts in manifest and add methods to retrieve data by @kuzeyron in #2969
- (
recipes/materialyoucolor): update to 2.0.7 by @T-Dynamos in #2975 - Arch type error when creating apk for project with setup.py by @pramodin in #2978
- ✅ Fix test_get_dep_names_of_package by @AndreMiras in #2979
- MANAGE_EXTERNAL_STORAGE by @cweilouis in #2983
- ✅ improve sh mocking reliability by @AndreMiras in #2980
- ✅ Fix broken sdl2 mixer test by @AndreMiras in #2987
- 🔊 Improve rebuild recipes logging & bump
pyzbarversion by @AndreMiras in #2986 - 🔥 Remove unused Makefile variables by @AndreMiras in #2985
- libzmq: fix build by @T-Dynamos in #2842
- recipes: new recipe
coincurveby @T-Dynamos in #2835 - Qt Bootstrap - Adapting to Qt 6.7 release by @shyamnathp in #2990
- (
recipes/materialyoucolor): update to 2.0.9 by @T-Dynamos in #2994 - recipes: Introduce
RustCompiledComponentsRecipe, addpydantic-coreand updatecryptographyby @T-Dynamos in #2962 - Fix mock assertion in ICU recipe by @s-t-e-v-e-n-k in #3003
- Sunset
apple-silicon-m1self-hosted runner, as now is supported by Github Hosted runners viamacos-latesttag. Usemacos-13for runs on Intel macs by @misl6 in #3011 - recipe: introduce isolated builds, using
PyProjectRecipeby @T-Dynamos in #3007 - recipes: add new
pyreqwest_impersonaterecipe by @T-Dynamos in #3016 - recipes: add new
uvlooprecipe by @T-Dynamos in #3015 - pillow: update to
10.3.0by @T-Dynamos in #3022 ffpyplayer: update to4.5.1by @T-Dynamos in #3025archs.py: remove backslash logic by @T-Dynamos in #3026sqlalchemy: update to2.0.30by @T-Dynamos in #3027- ✨Fixed wrong spelling: depelopment -> development by @ByteJoseph in #3038
- recipes: add new
grpciorecipe by @kengoon in #3023 - Grpcio recipe: Fix runtime error, cannot locate symbol "getservbyport_y" by @kengoon in #3043
- libsodium-recipe-update to url by @gonatienza in #3042
- Add ModernGL recipe by @emersonmx in #3045
- Fix broken quickstart link by @zenoengine in #3046
- 👷 Publish to DockerHub by @AndreMiras in #3047
- 🔇 Fix sh logs too verbose by @AndreMiras in #3048
- ⬆️ Bump sh module to v2, refs #2746 by @AndreMiras in #3049
- Add tiktoken recipe by @RobertFlatt in #3051
- 👷 Fix docker login by @AndreMiras in #3052
- 🐛 Fix rebuild updated recipes by @AndreMiras in #3053
- aubio recipe created by @jithesh82 in #3044
- ♻️ Minor code cleaning by @AndreMiras in #3054
- 👷 Docker workflow fixes by @AndreMiras in #3067
- Bump
FFMpegRecipeandPyAVRecipeversions by @DexerBR in #3065 - Fix typos discovered by codespell by @cclauss in #3079
- 👷 On-demand CI custom build by @AndreMiras in #3073
- GitHub Actions: comment out the failing sdl2_scipy test by @cclauss in #3077
- Add ability to use private github repos for recipes by @brentpicasso in #3074
- Add bitarray recipe by @Novfensec in #3084
- bump openssl to 3 by @HyTurtle in #3086
- Update pyopenssl version by @rnixx in #3087
- Fix rm: cannot remove 'CMakeFiles/': Is a directory by @Fak3 in #3090
- 💚 Fix sphinx documentation build errors by @AndreMiras in #3091
- Add hardware acceleration codecs to ffmpeg recipe by @brentpicasso in #3092
- Update sdl2_ttf from 2.20.2 to 2.22.0 by @Fak3 in #3096
- kivy recipe: add filetype dependency by @Fak3 in #3099
- Add
httpxrecipe by @DexerBR in #3100 - Update LICENSE, fix copyright license year by @JasonnnW3000 in #3102
- update kivy to 2.3.1 by @Fak3 in #3103
- ⬆️ Migrate to actions/upload-artifact@v4 by @AndreMiras in #3119
- Fix kiwisolver recipe fatal error: 'Python.h' file not found by @mriscoc in #3118
- 🐛 Fix the kiwisolver build on macOS, fixes #3122 by @AndreMiras in #3128
- 🐛 Update the greenlet recipe, closes #2806 by @AndreMiras in #3132
- 🐛 Update and fix atom recipe, closes #2802 by @AndreMiras in #3131
- 🐛 Upgrade and fix gevent recipe, closes #2805 by @AndreMiras in #3129
- 🔥 Drop libmysqlclient recipe, closes #2808 by @AndreMiras in #3130
- Add
SDL3bootstrap (alongsideSDL3,SDL3_ttf,SDL3_mixer,SDL3_imagerecipes) for Kivy3.0.0by @misl6 in #3125 kivyandpyjnius: switch toPyProjectRecipeby @T-Dynamos in #3139primp: update to0.14.0by @T-Dynamos in #3138- Fix Cmake compatibility issue on jpeg recipe by @Huyston in #3147
pyjnius: pin cython version by @T-Dynamos in #3151sdl2_image: fix downloading by @T-Dynamos in #3135- [Display-Cutout] More tools for the developer + minor changes by @kuzeyron in #3170
- [Display-Cutout] Added missing features due to limitations by @kuzeyron in #3171
- Update Android Gradle Plugin to
8.11.0and Gradle Wrapper to8.14.3+ update default API target to35in tests by @FilipeMarch in #3172 - Update:
numpy,pandas,sdl2to newer versions which supportndk28cby @T-Dynamos in #3164 - Require
c++stl for Kivy whensdl3is used (Kivy 3.0.0) by @misl6 in #3181 - Bump SDL3 recipe version to the latest stable release (
3.2.18) by @DexerBR in #3182 - Fix
md5sumfor SDL3 recipe version3.2.18by @DexerBR in #3183 - Remove redundant sympy recipe by @Novfensec in #3206
flask: update to3.1.1by @T-Dynamos in #3207kivy: depend on android by @T-Dynamos in #3209android: shift to PPR by @T-Dynamos in #3208pyjnius: update to 1.7.0 by @T-Dynamos in #3210pillow: update to11.3.0by @T-Dynamos in #3211- pynacl-recipe by @gonatienza in #3212
- fix plat-name by @T-Dynamos in #3217
opencv: fix build by @T-Dynamos in #3218- Bump pypa/gh-action-pypi-publish from 1.4.2 to 1.13.0 in /.github/workflows by @de...
v2024.01.21
What's Changed
- Update Lottie player version by @HugoDaniel in #2900
- Add doc tests, make them pass. by @Julian-O in #2890
- Remove
distutilsusage, as is not available anymore on Python3.12by @misl6 in #2912 - enable json1 extenstion in sqlite3 by @HyTurtle in #2915
- Bump
pyjniusversion to1.6.1by @misl6 in #2914 - Add (now mandatory)
.readthedocs.yamlfile, add docsrequirements.txtand update sphinx conf by @misl6 in #2916 - Introduce FAQ by @Julian-O in #2917
- Update Android gradle plugin to
8.1.1and gradle to8.0.2by @misl6 in #2887 - Add support for Python
3.11and make it the default while buildinghostpython3andpython3by @T-Dynamos in #2850 - Update
python-for-androidprerequisites (Dockerfile,prerequisites.py, docs) by @misl6 in #2923 - Remove redundant append into WHITELIST_PATTERNS by @shyamnathp in #2935
- Update Contributing Guidelines and Readme by @Julian-O in #2922
sourceCompatibility1.7 andtargetCompatibility1.7 are obsolete, use 1.8 by default by @misl6 in #2942- Update sdl2 deps to reflect the same targeted in kivy/kivy by @misl6 in #2927
- Initial support for PySide6 and Qt by @shyamnathp in #2918
- Bump Kivy version to
2.3.0by @misl6 in #2952 - Update OpenSSL version to
1.1.1wby @prolenodev in #2958 - Release 2024.01.21 by @misl6 in #2959
New Contributors
- @HugoDaniel made their first contribution in #2900
- @shyamnathp made their first contribution in #2935
- @prolenodev made their first contribution in #2958
Full Changelog: v2023.09.16...v2024.01.21
v2023.09.16
Highlights
- This is the last
python-for-androidrelease that targets Python 3.10 by default. The next release will switch to Python 3.11
What's Changed
- Merge master into develop by @misl6 in #2797
- Cffi update by @HyTurtle in #2800
- Use build rather than pep517 for building by @s-t-e-v-e-n-k in #2784
- Bump
actions/setup-pythonandactions/checkoutversions, as old ones are deprecated by @misl6 in #2827 - Removes
mysqldbrecipe as does not support Python 3 by @misl6 in #2828 - Removes
Babelrecipe as it's not needed anymore. by @misl6 in #2826 - Remove
dateutilrecipe, as it's not needed anymore by @misl6 in #2829 - Optimize CI runs, by avoiding unnecessary rebuilds by @misl6 in #2833
- Remove
pytzrecipe, as it's not needed anymore by @misl6 in #2830 - Changed the url to use https as http fails by @kuzeyron in #2846
- vlc: fix build by @T-Dynamos in #2841
- Correct sys_platform by @Julian-O in #2852
- Docs: Fix code string - quickstart.rst by @kulothunganug in #2859
- Bump
kivyversion to2.2.1by @misl6 in #2855 - Use a pinned version of
Cythonfor now, as most of the recipes are incompatible withCython==3.x.xby @misl6 in #2862 - Automatically generate required pre-requisites by @Julian-O in #2858
- Use platform.uname instead of os.uname by @Julian-O in #2857
- Fix simple typos in comments by @Julian-O in #2863
build_platformshould be all-lowercase by @misl6 in #2864- Docs: Fix typos and updated command to build apk - README by @kulothunganug in #2860
- Patching cleanup by @Julian-O in #2868
- Python versions: Update documentation & CI testing by @Julian-O in #2869
- Correct check for --sdk option by @Julian-O in #2870
- Factor out dependency checking. Use modern version handling by @Julian-O in #2866
- 🚨 linter fixes by @AndreMiras in #2874
- Remove deprecated FlatDir in Gradle template by @Julian-O in #2876
- Standardise ensure_dir and rmdir by @Julian-O in #2871
- Standardise on move by @Julian-O in #2884
- Use Python's touch() rather than shelling out. by @Julian-O in #2886
- Release 2023.09.16 by @misl6 in #2891
New Contributors
- @s-t-e-v-e-n-k made their first contribution in #2784
- @T-Dynamos made their first contribution in #2841
- @Julian-O made their first contribution in #2852
- @kulothunganug made their first contribution in #2859
Full Changelog: v2023.05.21...v2023.09.16
v2023.05.21
What's Changed
- Add support for Python 3.10 and make it the default while building hostpython3 and python3 by @misl6 in #2577
- Add PyAV recipe by @DexerBR in #2750
- Add debug loggings for identifying a matching dist by @BitcoinWukong in #2751
- Home app functionality by @kuzeyron in #2761
- Use io.IOBase for LogFile by @dylanmccall in #2763
- android_api to integer by @kuzeyron in #2765
- fix #2768 smallIconName null can t be compared to String by @brvier in #2769
- fix tools/liblink: syntax error by @SomberNight in #2771
- Update
pyjniusversion to1.5.0by @misl6 in #2791 - Update Kivy recipe for 2.2.0 by @misl6 in #2793
New Contributors
- @DexerBR made their first contribution in #2750
- @BitcoinWukong made their first contribution in #2751
- @dylanmccall made their first contribution in #2763
Full Changelog: v2023.02.10...v2023.05.21
v2023.02.10
Highlights:
shversion has been restricted tosh>=1.10, <2.0;, assh>2.0is incompatible. We will migrate our code accordingly in the future.pydanticrecipe has been updated.
Full changelog:
v2023.01.28
Highlights:
scyptrecipe has been updated.--orientationoption controls the allowed orientations (portrait,landscape,portrait-reverse,landscape-reverse). The allowed orientations list is then set toKIVY_ORIENTATIONenvironment variable, which is used during window setup time to populate theSDL_HINT_ORIENTATIONSvalue, as we're doing for other platforms.--manifest-orientationoption has been added to keep theandroid:screenOrientationpersonalisation functionality, even if Android will be likely deprecate this attribute in future.- If
--manifest-orientationis not set, and only (one of multiple)--orientation options are passed, the value forandroid:screenOrientationis guessed and synthesized from the --orientation option. Sinceandroid:screenOrientationaccepts only 1 value, if multiple--orientationare given,android:screenOrientation` will be set to unspecified. - Introduced support for permission properties (
maxSdkVersionandusesPermissionFlags)
Full changelog:
- Implements
--manifest-orientationand changes how--orientationworks so we can now pass the setting to the SDL orientation hint #2739 (misl6) - Update __init__.py from
scryptrecipe #2738 (FilipeMarch) - Apply a patch from SDL upstream that fixes orientation settings #2730 (misl6)
- Support permission properties (
maxSdkVersionandusesPermissionFlags) + removeWRITE_EXTERNAL_STORAGEpermission, which has been previously declared by default #2725 (misl6) - Merge master in develop #2721 (misl6)
v2022.12.20
Highlights:
- Minimal and recommended Android NDK version is now 25b
MIN_TARGET_APIhas been updated to30andRECOMMENDED_TARGET_APIin order to comply with Google Play Store requirements.android.activitynow offersApplication.ActivityLifecycleCallbackshelpers.SDL2,SDL2_ttf,SDL2_mixer,SDL2_imagerecipes has been updated to latest stable releases.- Now service notifications are highly customisable!
Full changelog:
InputType.TYPE_TEXT_FLAG_MULTI_LINEforcesInputType.TYPE_TEXTeven ifSDLActivity.keyboardInputTypeisNULL#2716 (misl6)- secp256k1 Update "--host=" #2714 (RobertFlatt)
- Delete pythonforandroid/recipes/cdecimal directory #2713 (RobertFlatt)
- Bump
sdl2version to2.26.1#2712 (misl6) - Flake8 does not support inline comments for any of the keys. #2708 (misl6)
- Gradle: Run the clean task before anything else to make sure nothing is cached. #2705 (misl6)
- Custom Service notification #2703 (RobertFlatt)
- Include paths for sdl2_mixer have changed. Added a method to return the right one. #2700 (misl6)
- WRITE_EXTERNAL_STORAGE maxSdk #2694 (RobertFlatt)
- Fixes an issue regarding blacklist and bytecode compile + some cleanup #2693 (misl6)
- Bump to a version of
SDLwith patches for the TextInput / TextEditing (SDL2.26.0) #2692 (misl6) - Make CI compile aiohttp again. #2690 (xavierfiechter)
- Add resources #2684 (RobertFlatt)
- Update
MIN_TARGET_APIto30andRECOMMENDED_TARGET_APIto33#2683 (misl6) - recipe.download_file: implement shallow git cloning #2682 (SomberNight)
- requirements: relax version bound on "pep517" #2680 (SomberNight)
- Add new Android permissions #2677 (RobertFlatt)
- Resize webview when keyboard is shown #2674 (dbnicholson)
- Update
SDL2,SDL2_ttf,SDL2_mixer,SDL2_imageto latest releases #2673 (misl6) - Fixes libvpx build #2672 (misl6)
tomlmay not be available on systemwide python #2670 (misl6)- android/activity: Add Application.ActivityLifecycleCallbacks helpers #2669 (dbnicholson)
- Bump minimal and recommended Android NDK version to 25b #2668 (misl6)
- Include HOME in build environment #2582 (dbnicholson)
v2022.09.04
Highlights:
- This is the last release that defaults to Python 3.9 when building
hostpython3andpython3. The next one will target Python 3.10 - This is the last release that uses Android NDK 23b by default, the next one will use Android NDK 25
- This is the last release that defaults to target API 27, the next one will default to target API 31, following the new requirement from Google for apps that need to be distributed on Play Store.
- In order to fully support API 31 and as a propaedeutic change for new features in Kivy, in the next release,
python-for-androidwill use the new SDL2 releases.
Full changelog:
liblzma: Usep4a_installinstead ofinstall, as a file namedINSTALLis already present. #2663 (misl6)- Force
--platform=linux/amd64in Dockerfile #2660 (misl6) - Remove six and enum34 dependency #2657 (misl6)
- Update supported Python versions #2656 (misl6)
- Fixes some E275 - assert is a keyword. #2647 (misl6)
- Updates matplotlib, fixes an issue related to shared libc++ #2645 (misl6)
- RTSP support for ffmpeg #2644 (alicakici1234)
- Fixes TypeError: str.join() takes exactly one argument (2 given) in hostpython3/__init__.py", line 69 #2642 (Furtif)
- Resolve absolute path to local recipes #2640 (dbnicholson)
- Merges master into develop after release 2022.07.20 #2639 (misl6)
- Fix webview Back button behaviour #2636 (interlark)
- Add icon-bg and icon-fg to fix_args #2633 (danigm)
- Remove stray - in output file name #2581 (dbnicholson)
- Add option for adding files to res/xml without touching manifest #2330 (rambo)
v2022.07.20
Highlights:
- NDK 23 + Gradle 7 support
- Apple Silicon support (with NDK ≥ 24)
- Use shutil.which instead of sh.which (fixes an issue introduced by
sh==1.14.3 - Updated scipy - lapack - numpy recipes
- Added
LEGACY_NDKoption to build lapack/scipy recipes with a separate NDK - Now also webview and service bootstraps allow building multiarch artifacts.
- macOS prerequisites are now handled automatically, except for NDK and SDK.
- pythonforandroid.androidndk.AndroidNDK has been added in order to better handle NDK paths and configs.
Full changelog:
- Upgrading the flask version to avoid exception at the start of webview application #2560 (Prashanth-BC)
- add recipe for freetype-py to not include the prebuilt .so for the wr… #2558 (domedave)
- Update to Kivy 2.1.0 #2557 (RobertFlatt)
- tflite-runtime recipe #2554 (RobertFlatt)
- Update AndroidManifest.tmpl.xml #2551 (drahba)
- Update recipe.py (#2544) #2546 (misl6)
- Update python versions matrix on CI #2534 (misl6)
- Add ifaddr recipe #2527 (syrykh)
- Remove websocket-client recipe #2526 (syrykh)
- Fix build #2525 (correa)
- Add aaptOptions noCompress #2523 (RobertFlatt)
- Updated version of pygame from 2.0.1 to 2.1.0 #2520 (CAPTAIN1947)
- Bump Pillow version to 8.4.0 #2516 (misl6)
- Moved support-request to v2. v1 has been shut down. #2515 (misl6)
- Add support-requests configuration. #2514 (misl6)
- proper --host for libsecp256k1, libogg, libvorbis, libcurl #2512 (accumulator)
- Fix broken Contribute link #2505 (daMatz)
- Makes pep8 happy on sdl2 recipe #2504 (misl6)
- Fix broken recipes with missing arch.arch in get_site_packages_dir #2503 (misl6)
- added android permission ACCESS_BACKGROUND_LOCATION #2500 (xloem)
- GitHub Actions: Fixes wrong actions/checkout@v2 usage #2496 (misl6)
- Fixes ndk_include_dir on lxml recipe. #2495 (misl6)
- Move coveralls to github actions #2490 (misl6)
- Master #2489 (misl6)
- Add should_build method to sdl2 recipe #2482 (AndyRusso)
- AAB support related changes #2467 (misl6)
- services: fix START_STICKY #2401 (mzakharo)
v2022.03.13
Highlights:
- This is the first version of
python-for-androidthat supports Android App Bundle (AAB) packaging - Kivy recipe now targets
Kivy 2.1.0which is now the latest stable version available. - AndroidManifest.tmpl.xml has been updated to support Android 12 devices.
Full changelog:
- Upgrading the flask version to avoid exception at the start of webview application #2560 (Prashanth-BC)
- add recipe for freetype-py to not include the prebuilt .so for the wr… #2558 (domedave)
- Update to Kivy 2.1.0 #2557 (RobertFlatt)
- tflite-runtime recipe #2554 (RobertFlatt)
- Update AndroidManifest.tmpl.xml #2551 (drahba)
- Update recipe.py (#2544) #2546 (misl6)
- Update python versions matrix on CI #2534 (misl6)
- Add ifaddr recipe #2527 (syrykh)
- Remove websocket-client recipe #2526 (syrykh)
- Fix build #2525 (correa)
- Add aaptOptions noCompress #2523 (RobertFlatt)
- Updated version of pygame from 2.0.1 to 2.1.0 #2520 (CAPTAIN1947)
- Bump Pillow version to 8.4.0 #2516 (misl6)
- Moved support-request to v2. v1 has been shut down. #2515 (misl6)
- Add support-requests configuration. #2514 (misl6)
- proper --host for libsecp256k1, libogg, libvorbis, libcurl #2512 (accumulator)
- Fix broken Contribute link #2505 (daMatz)
- Makes pep8 happy on sdl2 recipe #2504 (misl6)
- Fix broken recipes with missing arch.arch in get_site_packages_dir #2503 (misl6)
- added android permission ACCESS_BACKGROUND_LOCATION #2500 (xloem)
- GitHub Actions: Fixes wrong actions/checkout@v2 usage #2496 (misl6)
- Fixes ndk_include_dir on lxml recipe. #2495 (misl6)
- Move coveralls to github actions #2490 (misl6)
- Master #2489 (misl6)
- Add should_build method to sdl2 recipe #2482 (AndyRusso)
- AAB support related changes #2467 (misl6)
- services: fix START_STICKY #2401 (mzakharo)