fix(ci): pin androguard==4.1.4 for F-Droid publish (verified locally)

Reproduced locally against the v0.4.2 APK: androguard 4.0.x fails resource
parsing ('res1 must be zero!'), 4.1.0/4.1.1 fail signature parsing
('NoOverwriteDict' object has no attribute 'append'), and 4.1.4 parses both
cleanly. fdroidserver 2.4.4's own resolver pulls a buggy 4.1.x, so pin 4.1.4.
This commit is contained in:
engineer
2026-06-01 15:00:59 -07:00
parent 1c242e6a21
commit 1e07e36d5c

View File

@@ -69,11 +69,12 @@ jobs:
run: ./gradlew assembleRelease run: ./gradlew assembleRelease
- name: Install fdroidserver - name: Install fdroidserver
# Use latest fdroidserver (+ its tested androguard). Pinning fdroidserver # androguard version matters: 4.0.x crashes parsing our APK resources
# 2.4.4 hit androguard parse bugs on modern aapt2 APKs: 4.1+ crashes with # ("res1 must be zero!"); 4.1.0/4.1.1 crash on the signature block
# "'NoOverwriteDict' object has no attribute 'append'", 4.0.x with # ("'NoOverwriteDict' object has no attribute 'append'"). androguard 4.1.4
# "res1 must be zero!". Latest fdroidserver ships a compatible androguard. # fixes both — verified locally against the v0.4.2 APK. fdroidserver's own
run: pip install --upgrade fdroidserver # resolver picks a buggy 4.1.x, so pin androguard explicitly.
run: pip install "fdroidserver==2.4.4" "androguard==4.1.4"
- name: Setup F-Droid repo - name: Setup F-Droid repo
id: fdroid-setup id: fdroid-setup