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
Torsten Grote
3c25144331
[app] kill InstalledAppProvider and related code
...
We don't need to cache installed apps locally as they are available via the PackageManager as well. This avoids an entire class of bugs where our cache gets out of sync with reality. Also, it simplifies the code the database. We no longer need to listen to broadcast about which packages get installed and removed which is more tricker when targetting newer Android SDKs.
2022-12-01 09:27:58 +01:00
Torsten Grote
cf913ffefa
[app] Fix or remove UI tests
...
Tests for v0 index have been removed with their assets.
AntiFeaturesTest is not needed anymore, because filtering doesn't happen in new DB
PanicResponderActivityTest can not be tested as easily anymore
MultiIndexUpdaterTests are now spread over various database tests
LocaleSelectionTest is now in org.fdroid.database.BestLocaleTest
Most tests org.fdroid.fdroid.data now have equivalents in the new database library
2022-12-01 09:27:57 +01:00
Torsten Grote
d61ecbfa08
[app] Adapt nearby/swap to new DB
2022-12-01 09:27:57 +01:00
Torsten Grote
48d646361b
[app] Adjust settings UI to new DB
2022-12-01 09:27:57 +01:00
Torsten Grote
0f7c768b28
[app] Make InstallConfirmActivity use new DB
2022-12-01 09:27:57 +01:00
Torsten Grote
3a2f1b10c3
[app] Make installed apps use new DB
2022-12-01 09:27:57 +01:00
Torsten Grote
ad2700a0db
[app] App list search with new DB
2022-12-01 09:27:57 +01:00
Torsten Grote
c4e92fba86
[app] Make Updates tab use new DB
2022-12-01 09:27:57 +01:00
Torsten Grote
adaf2a97ef
[app] Move managing repos to new DB
2022-12-01 09:27:57 +01:00
Torsten Grote
0a7debeb30
[app] Expose beta release channel in the app details UI
2022-12-01 09:27:57 +01:00
Torsten Grote
acafbbaa65
[app] Make AppDetailsActivity use new DB
...
AppIconsTest is now part of org.fdroid.database.AppTest
2022-12-01 09:27:57 +01:00
Torsten Grote
d97d995c43
[app] Use new IndexV1Updater and make latest and category tab use new DB
2022-12-01 09:27:57 +01:00
Hans-Christoph Steiner
ee8af69861
Merge branch 'Use_NotificationChannelCompat' into 'master'
...
Use NotificationChannelCompat.
See merge request fdroid/fdroidclient!1070
2022-12-01 08:23:52 +00:00
Isira Seneviratne
41ada062b4
Merge branch 'master' into Use_NotificationChannelCompat
2022-12-01 06:46:51 +05:30
Hans-Christoph Steiner
2d443f118a
Merge branch 'privext-installer' into 'master'
...
PrivilegedInstaller: Set installerPackageName to PrivExt
See merge request fdroid/fdroidclient!1128
2022-11-30 17:06:00 +00:00
Chirayu Desai
b28bb18962
PrivilegedInstaller: Set installerPackageName to PrivExt
...
* This is what we want it to be, so that apps can be uninstalled
using PrivExt
* No idea why this was set as null here
Change-Id: I1c82104a047e192beb80877daa0fdaeb39fe870a
2022-11-30 16:38:15 +00:00
Hans-Christoph Steiner
fcc5175980
Merge branch 'upgrade-android-studio' into 'master'
...
ugprade Android Studio to Dolphin !1135
See merge request fdroid/fdroidclient!1145
2022-11-28 12:22:09 +00:00
Torsten Grote
eef3c3fb0d
Upgrade to Android Studio Chipmunk
...
and upgrade other dependencies as well
2022-11-28 12:48:58 +01:00
Torsten Grote
83dd06e682
[app] upgrade dependencies
2022-11-28 10:17:30 +01:00
Hans-Christoph Steiner
c629d21b56
gradle verification: only contact keyservers when updating metadata
...
This config should include all the PGP keys needed to verify all the
dependencies used in this build. This prevents Gradle from contacting PGP
keyservers for regular builds. Gradle will still contact keyservers when
updating the metadata.
https://docs.gradle.org/current/userguide/dependency_verification.html#sec:local-keyring-only
2022-11-28 09:49:38 +01:00
Hans-Christoph Steiner
206d8407d4
gradle verification: ignored keys are now available on keyservers
...
I sent some to the keyservers, some key owners have pushed them to
keys.openpgp.net. Also Google people have started maintaining keyrings:
https://android.googlesource.com/platform/frameworks/support/+/HEAD/gradle/verification-keyring.keys
2022-11-28 09:37:14 +01:00
Hans-Christoph Steiner
9f6f010f5d
gradle verification: include all keys in .gpg keyring
...
for f in 429c8816dea04cdb d4da5eab3cd7e958 d5f4c07a434ab3da 03281aa0289ff53a e0cb7823cfd00fbf 02216ed811210daa 03281aa0289ff53a 056aca74d46000bf 280d66a55f5316c5 3967d4eda591b991 429c8816dea04cdb 4dbf5995d492505d 5f7786df73e61f56 6a65176a0fb1cd0b bf984b4145ea13f7 c1b12a5d99c0729d cb43338e060cf9fa d4da5eab3cd7e958 d5f4c07a434ab3da d89d05374952262b d9c565aa72ba2fdd dea3d207428ef16d e0cb7823cfd00fbf eb380dc13c39f675 fefe78456eddc34a; do gpg --export $f | GNUPGHOME=/tmp/fake gpg --primary-keyring gradle/verification-keyring.gpg --import || GNUPGHOME=/tmp/fake gpg --primary-keyring gradle/verification-keyring.gpg --recv-keys $f || GNUPGHOME=/tmp/fake gpg --primary-keyring gradle/verification-keyring.gpg --keyserver hkps://keyserver.ubuntu.com --recv-keys $f || break; done
2022-11-28 09:37:05 +01:00
Hans-Christoph Steiner
5967bad692
Merge branch 'index-v2-randoms' into 'master'
...
three random fixes from !1135
See merge request fdroid/fdroidclient!1143
2022-11-25 13:11:34 +00:00
Torsten Grote
5cfdae0719
[app] Don't show summary if null
...
Originally, we were showing "Unknown application" in English, no matter the user's locale. Then here we were actually showing "null". Both isn't good, so best to not show anything.
2022-11-25 13:37:38 +01:00
Torsten Grote
477436af68
[app] Don't show unknown (other) anti-features by default
2022-11-25 13:37:36 +01:00
Torsten Grote
8c64ad4707
[db] add test for DefaultUriBuilder
2022-11-25 12:59:00 +01:00
Hans-Christoph Steiner
318f09663a
Merge branch 'index-v2-renames' into 'master'
...
Index v2 renames and removals from !1135
See merge request fdroid/fdroidclient!1142
2022-11-25 11:52:27 +00:00
Torsten Grote
38e7bce982
Rename EntryV2 to Entry as requested by Hans in #2443
2022-11-25 12:24:33 +01:00
Torsten Grote
f46db0d9a4
Remove unused code
2022-11-25 12:24:33 +01:00
Torsten Grote
3f88fdb8cb
[app] Remove Provisioner as it isn't used/needed anymore
2022-11-25 12:24:33 +01:00
Hans-Christoph Steiner
9f7b160986
Merge branch 'index-download-libs-fixes' into 'master'
...
index/download lib fixes from !1135
Closes #2412
See merge request fdroid/fdroidclient!1141
2022-11-25 09:50:23 +00:00
Hans-Christoph Steiner
8cf836a8b3
IndexV1UpdaterTest is now in the database lib.
...
libs/database/src/dbTest/java/org/fdroid/index/v1/IndexV1UpdaterTest.kt
2022-11-25 10:20:54 +01:00
Hans-Christoph Steiner
835f7485f0
LocaleSelectionTest is now in org.fdroid.database.BestLocaleTest
2022-11-24 22:44:15 +01:00
Torsten Grote
6d9f3a8d7e
[download] Require ktor-client-core as API dependency, otherwise consumers can't use HttpManager
2022-11-24 22:34:50 +01:00
Torsten Grote
ce1d07b4b1
[index] in v1 the whatsNew refers to suggested version not first version
2022-11-24 22:34:50 +01:00
Torsten Grote
1608502569
[index] move v1 tests from app to index
...
and allow permission arrays of larger size for v1
2022-11-24 20:53:19 +01:00
Torsten Grote
4d3e03b89c
[download] Fix double slash in repo URLs causing redirect exceptions
2022-11-24 20:53:17 +01:00