Commit Graph

7941 Commits

Author SHA1 Message Date
Hans-Christoph Steiner 1c055c2b0f
version code 1016000 2022-12-02 15:28:26 +01:00
Hans-Christoph Steiner f83e24df0b
update CHANGELOG.md 2022-12-02 15:28:24 +01:00
Hans-Christoph Steiner 980f4fab68
run tools/remove-unused-and-blank-translations.py 2022-12-02 15:28:22 +01:00
Hans-Christoph Steiner 72771fd9e6 Merge branch 'merge_weblate' into 'master'
weblate

See merge request fdroid/fdroidclient!1149
2022-12-02 12:13:03 +00:00
Eric b9f8971d54 Translated using Weblate: Chinese (Simplified) (zh-rCN) by Eric <hamburger1024@duck.com>
Currently translated at 100.0% (498 of 498 strings)

Co-authored-by: Eric <hamburger1024@duck.com>
Translate-URL: https://hosted.weblate.org/projects/f-droid/f-droid/zh_Hans/
Translation: F-Droid/F-Droid
2022-12-02 11:38:05 +01:00
Tymofii Lytvynenko 303b2a78ac Translated using Weblate: Ukrainian (uk) by Tymofii Lytvynenko <till.svit@gmail.com>
Currently translated at 100.0% (498 of 498 strings)

Co-authored-by: Tymofii Lytvynenko <till.svit@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/f-droid/f-droid/uk/
Translation: F-Droid/F-Droid
2022-12-02 11:38:05 +01:00
Agnieszka C 7f52febca0 Translated using Weblate: Polish (pl) by Agnieszka C <aga_04@o2.pl>
Currently translated at 100.0% (498 of 498 strings)

Co-authored-by: Agnieszka C <aga_04@o2.pl>
Translate-URL: https://hosted.weblate.org/projects/f-droid/f-droid/pl/
Translation: F-Droid/F-Droid
2022-12-02 11:38:05 +01:00
Gediminas Murauskas 27943de831 Translated using Weblate: Lithuanian (lt) by Gediminas Murauskas <muziejusinfo@gmail.com>
Currently translated at 100.0% (498 of 498 strings)

Co-authored-by: Gediminas Murauskas <muziejusinfo@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/f-droid/f-droid/lt/
Translation: F-Droid/F-Droid
2022-12-02 11:38:05 +01:00
Sveinn í Felli e48ddd8f9d Translated using Weblate: Icelandic (is) by Sveinn í Felli <sv1@fellsnet.is>
Currently translated at 100.0% (498 of 498 strings)

Co-authored-by: Sveinn í Felli <sv1@fellsnet.is>
Translate-URL: https://hosted.weblate.org/projects/f-droid/f-droid/is/
Translation: F-Droid/F-Droid
2022-12-02 11:38:05 +01:00
Yaron Shahrabani 004a8dc7d7 Translated using Weblate: Hebrew (he) by Yaron Shahrabani <sh.yaron@gmail.com>
Currently translated at 100.0% (498 of 498 strings)

Co-authored-by: Yaron Shahrabani <sh.yaron@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/f-droid/f-droid/he/
Translation: F-Droid/F-Droid
2022-12-02 11:38:05 +01:00
Fjuro 47b1e66575 Translated using Weblate: Czech (cs) by Fjuro <ifjuro@proton.me>
Currently translated at 100.0% (498 of 498 strings)

Co-authored-by: Fjuro <ifjuro@proton.me>
Translate-URL: https://hosted.weblate.org/projects/f-droid/f-droid/cs/
Translation: F-Droid/F-Droid
2022-12-02 11:38:04 +01:00
Hans-Christoph Steiner 20a058e71a Merge branch 'manifest-cleanup' into 'master'
Removed meta data elements from AndroidManifest.xml

See merge request fdroid/fdroidclient!1119
2022-12-02 09:13:09 +00:00
Nishant 4c51a19080 Removed meta data elements from AndroidManifest.xml 2022-12-02 08:40:53 +00:00
Hans-Christoph Steiner 8f5578f96d Merge branch 'index-v2-new-libs' into 'master'
Use new index and database library

Closes #1971, #2444, #2443, #2442, #2436, #2412, #2370, #2353, #2322, #2157, #2081, #2080, #1989, #1710, #1588, #1206, #860, and #649

See merge request fdroid/fdroidclient!1135
2022-12-02 08:35:53 +00:00
Hans-Christoph Steiner 4a95a423f0 SwapRepoEmulatorTest: stop ignoring and use swap IP setup 2022-12-01 17:43:14 +01:00
Hans-Christoph Steiner 3fa5e98fc4 convert SwapRepoTest into initial UpdateServiceTest
Finally, there can be a test for running UpdateService, which is essential
and has some really hairy code in it.  At least swap has been removed from
there.  This is barebones still, but it now can be developed to test quite
a bit of what is still needed in UpdateService.
2022-12-01 17:43:14 +01:00
Hans-Christoph Steiner d19c5028ac SwapService: split updateRepo out into testable static method 2022-12-01 17:43:14 +01:00
Hans-Christoph Steiner 0d46c32712 purge last vestige of SwapService.ensureRepoExists() 2022-12-01 17:43:14 +01:00
Hans-Christoph Steiner bdc77a31b3 IndexCreator: if symlink fails, copy file into repo
Roboletric apparently does not support Os.symlink, and some devices might
have wonky implementations.  Copying is slower and takes more disk space,
but is much more reliable.  So it is a workable fallback.
2022-12-01 17:43:14 +01:00
Torsten Grote da165361c3 [app] Adapt SwapRepoEmulatorTest to new DB 2022-12-01 17:43:14 +01:00
Torsten Grote cae10f11d9 Make index file name constants public and replace their string usages 2022-12-01 17:43:14 +01:00
Torsten Grote 70593cf58c [app] catch exceptions when running things off UiThread 2022-12-01 17:43:14 +01:00
Torsten Grote 22dc237f87 [app] recover from corrupted sort clause 2022-12-01 17:43:14 +01:00
Torsten Grote c8fbef4816 [app] also sort search results by user-selected sort-mode 2022-12-01 17:43:14 +01:00
Torsten Grote b1499c89d4 [db] add lastUpdated to AppListItem so it can be used for custom sorting in UI 2022-12-01 17:43:14 +01:00
Torsten Grote 6603781652 [app] pass App object into installers, so it is available everywhere where needed 2022-12-01 17:43:13 +01:00
Torsten Grote a8d210e487 [app] Don't use ETag for determining if a repo has been updated or not 2022-12-01 17:43:13 +01:00
Torsten Grote ec69bc00a7 [app] Allow runOffUiThread() to return null 2022-12-01 17:43:13 +01:00
Torsten Grote 367e9e9d0c [db] attach install data from PackageManager to search results
otherwise all found apps are considered not installed
2022-12-01 17:43:13 +01:00
Torsten Grote 7c5ce606d0 Explicitly bubble up NotFoundException to UI
Otherwise, the UI might not catch it and crash. This can happen if a file is not available anymore on all mirrors.
2022-12-01 17:43:13 +01:00
Torsten Grote e86063937a Change repo attribute icons to be localized
This affects anti-features and categories. Reflection diffing has been made more robust in the process with the earlier FileV2 hack removed and better error messages.
2022-12-01 17:43:13 +01:00
Torsten Grote 3eca9402fe [db] expose preferredSigner to AppListItems (needed for picking correct version)
and add a test for checking preferredSigner in DbUpdateChecker
2022-12-01 17:43:13 +01:00
Torsten Grote aa6f30f34d [download] properly calculate hash when resuming downloads
Before, we were ignoring the already downloaded bytes which caused the hash verification to fail.
2022-12-01 17:43:13 +01:00
Torsten Grote 3368519677 [app] Bump minSdkVersion to 23
This is done, because index v2 is signed with apksigner --min-sdk-version 23 by fdroidserver. So to ensure that the client will always be able to verify a v2 index, we force clients to run SDK 23 at least. If they were running 22 and apksigner ever upgrades to incompatible signing algorithms, those clients would get locked out.
2022-12-01 17:43:13 +01:00
Torsten Grote 6a805c464e [db] only consider enabled repos for getApp() query 2022-12-01 17:43:13 +01:00
Torsten Grote e5ebf7a218 [app] Make forceOldIndex preference work for forcing v1
in case there are severe bugs with v2 after it rolled out to users, so they can at least continue to receive updates with this setting.
2022-12-01 17:43:13 +01:00
Torsten Grote d512c909c3 [download] Fix corrupted download after mirror fail-over bug
When we had already read bytes from one mirror, but needed to fail-over to another mirror, we would re-read the same bytes again corrupting our download.

Fixes #2412

This commit resumes the download where the last mirror left off.
2022-12-01 17:43:13 +01:00
Torsten Grote fb5b169e54 [app] Add support for IPFS CID downloading
This uses IndexFile objects instead of String file names everywhere. The general advantage of that is that we can now pass the hash and the file size to the downloader. For index v2 the hash can then get validated while downloading.
2022-12-01 17:43:13 +01:00
Torsten Grote 23966e4a09 [db] Add IPFS CIDv1 to database
and support new version of download library
2022-12-01 17:43:13 +01:00
Torsten Grote 0019535279 [index] Add support for IPFS CIDv1 in the index v2 format 2022-12-01 17:43:13 +01:00
Torsten Grote 77c4506420 [download] add support for IPFS HTTP gateways
This refactors the library so that Downloaders receive the IndexFile directly so that they get access to the IPFS CID, but also to the SHA256 hash and the file size. Mirrors can now be marked as IPFS gateways.
2022-12-01 17:43:13 +01:00
Torsten Grote 1f0db46212 [app] Add Repo name as prefix to update error toasts 2022-12-01 17:43:13 +01:00
Torsten Grote f52433730b [app] Fix formatting of timestamps (e.g. lastUpdated) and remove unused Utils methods 2022-12-01 17:43:13 +01:00
Torsten Grote f6909f4399 [app] Fix downloading from content:// Uris (flash drive repos) 2022-12-01 17:43:13 +01:00
Torsten Grote d000f3fade [app] Remove code for SDK versions that we don't support anymore 2022-12-01 17:43:13 +01:00
Torsten Grote 6c007e92b3 [app] Remove unused code 2022-12-01 17:43:13 +01:00
Torsten Grote 27ffc97e98 [app] Remove jackson dependency
Parsing of JSON is now done inside the index library using kotlinx.serialization multi-platform library.

Another small usage in FDroidMetricsWorker was replaced with native JSONObject.
2022-12-01 17:43:13 +01:00
Torsten Grote 65d0bdf738 [app] Fix ApkVerifierTest by removing index v0 XML parsing and adding permissions directly in the test 2022-12-01 17:43:13 +01:00
Torsten Grote 7a1d288792 [app] remove old ContentProviders from old database implementation 2022-12-01 17:43:13 +01:00
Torsten Grote a783d3cb94 [app] kill old IndexUpdaters and related code as this is now in libraries via RepoUpdater 2022-12-01 09:27:58 +01:00