android is now a supported platform Python since Python 3.13.
Earlier logic for figuring out android is still kept to preserve
backwards compatibility with Python versions <= 3.12.
Also have added a comment where we are monkeypatching sys.platform to
"android" to remove it once minimum python requirement is removed
Found initially during Python bump for Termux (https://github.com/termux/termux-packages/pull/27739)
Also seems like Pyright too hasn't caught up with this yet. So it needs
to be made aware as well
- Modernized FlacAudio implementation using updated dr_flac APIs.
- Fixed Interrogate syntax error in dr_flac.h by guarding MSVC-specific __int64 types with !defined(CPPPARSER).
- Updated FlacAudioCursor to use PCM frame-based read and seek methods.
- Implemented required callbacks (cb_tell_proc) for modern dr_flac support.
Fixes#1570Closes#1791
Existing "selector" mode (which was unused and has been used to
implement ORM textures has been renamed to metallic-roughness, and new
modes have been added for occlusion and occlusion-metallic-roughness.
New GLSL input names have been added. The .egg format has been
extended. The Assimp loader has been updated. The shader generator now
handles occlusion maps, and a unit test for that is added.
pyjnius needs to do env->FindClass in the app thread, which only works if the app thread was created by Java, so I changed android_native_app_glue to do that instead of via pthreads
Apparently Nuitka uses custom coroutine classes that inherit from Python's own coroutine class, causing PyCoro_CheckExact to be inadequate
In the future we may want to check the ABC or check the existence of send/throw methods
This is the non-legacy way to ship native libraries nowadays, leaving them in the .apk so that there doesn't need to be an extraction step and the app takes up less space.
The blob is now stored in a raw resource, so no longer duplicated between each architecture
Setting extractNativeLibs:false doesn't yet work, the remaining step is somehow getting Python to load extension modules that are still part of the apk