test_sdk_exists() succeeds on an empty directory so it does not give any
new information. Contrary, test_sdk_exists() succeeds on an empty
directory, so find_sdk_tools_cmd() returned None even though the tools
where not found, before.
Now that the description formatting is removed, there is no need to load
all of the app metadata before operating on a single one. This change
makes lint and rewritemeta only load the metadata for the apps it is actually
operating on. Before, it would always load all metadata files. #845closes#678
ci-images-server was created separately from ci-images-base back in the day
when we had to support Debian/stretch without stretch-backports. Those
days are gone now, so ci-images-server has been archived and should no
longer be used.
Virgin-islands-british_centralamerica_2.obf.zip is 1MB, while
Norway_bouvet_europe_2.obf.zip is 12KB. This file gets copied a lot in the
test runs so it adds up fast.
Back when fdroidserver was built around aapt, that was needed to
guarantee that a compatible version of aapt was used. Now, aapt is
only optionally used for getting the APK ID, so this was just
complicating maintenance.
Currently translated at 96.8% (555 of 573 strings)
Translated using Weblate: Albanian (sq) by Besnik Bleta <besnik@programeshqip.org>
Currently translated at 80.8% (463 of 573 strings)
Co-authored-by: Besnik Bleta <besnik@programeshqip.org>
Translate-URL: https://hosted.weblate.org/projects/f-droid/fdroidserver/sq/
Translation: F-Droid/F-Droid Server
Currently translated at 80.1% (459 of 573 strings)
Translated using Weblate: Hungarian (hu) by Hans-Christoph Steiner <hans@guardianproject.info>
Currently translated at 13.7% (79 of 573 strings)
Translated using Weblate: Swedish (sv) by Hans-Christoph Steiner <hans@guardianproject.info>
Currently translated at 7.5% (43 of 573 strings)
Translated using Weblate: Russian (ru) by Hans-Christoph Steiner <hans@guardianproject.info>
Currently translated at 84.2% (483 of 573 strings)
Translated using Weblate: Korean (ko) by Hans-Christoph Steiner <hans@guardianproject.info>
Currently translated at 36.1% (207 of 573 strings)
Translated using Weblate: Tibetan (bo) by Hans-Christoph Steiner <hans@guardianproject.info>
Currently translated at 67.8% (389 of 573 strings)
Translated using Weblate: German (de) by Hans-Christoph Steiner <hans@guardianproject.info>
Currently translated at 86.0% (493 of 573 strings)
Translated using Weblate: Spanish (es) by Hans-Christoph Steiner <hans@guardianproject.info>
Currently translated at 55.4% (318 of 573 strings)
Translated using Weblate: Chinese (Traditional) (zh_Hant) by Hans-Christoph Steiner <hans@guardianproject.info>
Currently translated at 82.7% (474 of 573 strings)
Translated using Weblate: Spanish (Argentina) (es_AR) by Hans-Christoph Steiner <hans@guardianproject.info>
Currently translated at 14.4% (83 of 573 strings)
Translated using Weblate: Albanian (sq) by Hans-Christoph Steiner <hans@guardianproject.info>
Currently translated at 80.1% (459 of 573 strings)
Translated using Weblate: Tibetan (bo) by Hans-Christoph Steiner <hans@guardianproject.info>
Currently translated at 67.7% (388 of 573 strings)
Translated using Weblate: German (de) by Hans-Christoph Steiner <hans@guardianproject.info>
Currently translated at 85.8% (492 of 573 strings)
Translated using Weblate: Spanish (es) by Hans-Christoph Steiner <hans@guardianproject.info>
Currently translated at 55.3% (317 of 573 strings)
Translated using Weblate: Chinese (Traditional) (zh_Hant) by Hans-Christoph Steiner <hans@guardianproject.info>
Currently translated at 82.5% (473 of 573 strings)
Co-authored-by: Hans-Christoph Steiner <hans@guardianproject.info>
Translate-URL: https://hosted.weblate.org/projects/f-droid/fdroidserver/bo/
Translate-URL: https://hosted.weblate.org/projects/f-droid/fdroidserver/de/
Translate-URL: https://hosted.weblate.org/projects/f-droid/fdroidserver/es/
Translate-URL: https://hosted.weblate.org/projects/f-droid/fdroidserver/es_AR/
Translate-URL: https://hosted.weblate.org/projects/f-droid/fdroidserver/hu/
Translate-URL: https://hosted.weblate.org/projects/f-droid/fdroidserver/ko/
Translate-URL: https://hosted.weblate.org/projects/f-droid/fdroidserver/ru/
Translate-URL: https://hosted.weblate.org/projects/f-droid/fdroidserver/sq/
Translate-URL: https://hosted.weblate.org/projects/f-droid/fdroidserver/sv/
Translate-URL: https://hosted.weblate.org/projects/f-droid/fdroidserver/zh_Hant/
Translation: F-Droid/F-Droid Server
Currently translated at 89.7% (514 of 573 strings)
Translated using Weblate: Polish (pl) by Michal L <michalrmsmi@wp.pl>
Currently translated at 89.5% (513 of 573 strings)
Translated using Weblate: Polish (pl) by Michal L <michalrmsmi@wp.pl>
Currently translated at 86.5% (496 of 573 strings)
Co-authored-by: Michal L <michalrmsmi@wp.pl>
Translate-URL: https://hosted.weblate.org/projects/f-droid/fdroidserver/pl/
Translation: F-Droid/F-Droid Server
When using fdroidserver methods as an API, the full setup might not
have taken place. `app` instances can always just be a dict, the App
class is mostly just a typing shortcut. This is incremental, it only
affects a couple of functions in fdroidserver/update.py.