Torsten Grote
4df60a42c8
[db] Calculate app compatibility in DB
...
and remove feature version as it app can't even use that.
Compatibility checking has been added to the DB layer as a post-processing step only because the UI wants to query for that on the app level (which would need all APKs).
2022-09-12 09:46:15 +00:00
Torsten Grote
3cb7538fc8
[db] Add special queries for AppListItems
2022-09-12 09:46:15 +00:00
Torsten Grote
97567a2057
[db] Add UpdateChecker
...
Doing the actual update check is more work than it would be with keeping info about all installed apps in the DB. However, this way, we don't need to keep that info in sync with reality. Also, we need to check for updates only after updating repos, so there we are on a worker thread already anyway and an spare an extra second.
2022-09-12 09:46:15 +00:00
Torsten Grote
55a446fe64
[db] Allow pre-populating the database via onCreate callback
...
Also add more methods for managing repos and improve selecting apps from repos
2022-09-12 09:46:15 +00:00
Torsten Grote
44ceaa6842
[db] Add a method for getting an app without specifying the repoId
2022-09-12 09:46:15 +00:00
Torsten Grote
5908789c29
[db] Add repo preferences as separate table
...
and use it in IndexV1Updater
2022-09-12 09:46:15 +00:00
Torsten Grote
50bb9ce60c
[db] Prepare DB for use by UI
...
Add AppOverviewItem and certificates for repos
2022-09-12 09:46:15 +00:00
Torsten Grote
95266df96a
[db] Add simple IndexV1Updater (not in final form)
...
just to be able to get a real DB into the app for further testing
2022-09-12 09:46:15 +00:00
Torsten Grote
a445bee197
[db] Add support for apps and streaming
2022-09-12 09:46:15 +00:00
Torsten Grote
ca6da651ec
[db] First prototype
2022-09-12 09:46:15 +00:00
Torsten Grote
ade37a4d9c
[download] Add docs for special exceptions
...
These are needed, so callers of the downloader can react to special errors.
Also signal that getInputStream() can throw NotFoundException for repo version fallback.
2022-09-12 09:46:15 +00:00
Torsten Grote
a830f1ef86
[download] Add new download method for v2 index
...
that receives total file size and ensures that the downloaded file has the provided sha256 hash
2022-09-12 09:46:15 +00:00
Hans-Christoph Steiner
c92d64a36b
Merge branch 'monochrome-icon' into 'master'
...
A monochrome icon for android 13+
See merge request fdroid/fdroidclient!1134
2022-08-25 18:25:57 +00:00
Donnnno
0b2938e6b0
A monochrome icon for android 13+
2022-08-14 16:49:17 +02:00
Hans-Christoph Steiner
7945912168
Merge branch 'index-library' into 'master'
...
Add new index library
See merge request fdroid/fdroidclient!1120
2022-07-20 16:22:24 +00:00
Torsten Grote
702d8f92cc
[index] rename packageId to packageName
...
as this seems to be the more established term
2022-07-20 10:37:25 -03:00
Torsten Grote
d63c09a91e
[index] Rename IndexV2Verifier to EntryVerifier at the insistence of Hans
2022-07-17 15:57:15 -03:00
Torsten Grote
59625d446e
[index] Add more tests for error cases
2022-07-17 15:57:14 -03:00
Torsten Grote
8b2d96dc1b
[index] Add LocaleChooser with getBestLocale() method and test
...
This is for getting the best matching localized content.
2022-07-17 15:57:14 -03:00
Torsten Grote
bb6238406d
[index] fix screenshot sorting for tests
2022-07-17 15:57:14 -03:00
Torsten Grote
a4d378171d
[index] make v1.OldIndexException public
...
and remember if the timestamp was the same, so we can treat this as the repo hasn't changed hen updating.
2022-07-17 15:57:14 -03:00
Torsten Grote
688a5f98b3
[index] allow passing versionCode into test data generation
2022-07-17 15:57:14 -03:00
Torsten Grote
632833a3e7
[index] Add UpdateChecker with tests
...
Also introduce interfaces for important classes, so they can be implemented by stuff like database classes as well. This makes UpdateChecker and CompatibilityChecker more generic.
Also add tests for CompatibilityChecker.
2022-07-17 15:57:14 -03:00
Torsten Grote
17acd0d56f
[index] add methods to walk over all files in the index v2
2022-07-17 15:57:13 -03:00
Torsten Grote
6c3184abd9
[index] Add IndexV1Creator for Android
...
This also can serve as a base for an IndexV2Creator later.
2022-07-17 15:57:13 -03:00
Torsten Grote
9b947f7052
[index] Add README and LICENSE
2022-07-17 15:57:13 -03:00
Torsten Grote
fcd180dd3b
[index] Let proguard keep serializer() methods
2022-07-17 15:57:13 -03:00
Torsten Grote
4cea518bfa
[index] Reject old v1 indexes
2022-07-17 15:57:13 -03:00
Torsten Grote
795c579111
[index] Add maven-publish plugin for publishing to maven central
2022-07-17 15:57:13 -03:00
Torsten Grote
d2d8b4ee9f
[index] Add dokka for creating HTML library docs
2022-07-17 15:57:12 -03:00
Torsten Grote
f9ea53bbe1
[index] Add an IndexV2Verifier
...
that shares most code with IndexV1Verifier using a common sub-class. The only difference are the json file name and which digests will be accepted.
2022-07-17 15:57:12 -03:00
Torsten Grote
469e17b613
[index] implement diffing for V2 via IndexV2DiffStreamProcessor
...
This uses hacky reflection and doesn't properly diff everything it could, but just what we need for the DB
This commit also sneaks in some last minute change requests for the indexV2 structure
2022-07-17 15:57:12 -03:00
Torsten Grote
78bcda2d7d
[index] remove grouping of author and donation fields
...
at the explicit request of Hans who feels strongly about it.
2022-07-17 15:57:12 -03:00
Torsten Grote
d6ce02c922
[index] Add proper test data and clean up some things for tests
2022-07-17 15:57:12 -03:00
Torsten Grote
1195ee0547
[index] Add CompatibilityChecker for determining if app is compatible with current device
2022-07-17 15:57:12 -03:00
Torsten Grote
a64f1a48ef
[index] Implement verification for Index V1
2022-07-17 15:57:11 -03:00
Torsten Grote
2b5c913332
[index] Add v1 to v2 conversion
2022-07-17 15:57:11 -03:00
Torsten Grote
802deb43eb
[index] First prototype
2022-07-17 15:57:11 -03:00
Michael Pöhn
123be3af3f
Merge branch 'disable-failing-ci-test' into 'master'
...
Ignore LocalHTTPDManagerTest#testStartStop test because it is failing CI
See merge request fdroid/fdroidclient!1131
2022-07-17 18:52:20 +00:00
Torsten Grote
5086c0df97
Ignore LocalHTTPDManagerTest#testStartStop test because it is failing CI
2022-07-17 12:50:35 -03:00
Hans-Christoph Steiner
356b746fdb
Merge branch 'ci-fail-on-first-error' into 'master'
...
Move test_lint_pmd_checkstyle CI job to fail on first error
See merge request fdroid/fdroidclient!1121
2022-05-31 10:21:08 +00:00
Torsten Grote
c369709c54
Move test_lint_pmd_checkstyle CI job to fail on first error
...
in order to make it easier to find out what actually made the CI fail
2022-05-31 10:20:45 +00:00
Hans-Christoph Steiner
21bb86f666
Merge branch 'licaon-kter-master-patch-59936' into 'master'
...
Update AF for NonFreeNet to be complete
See merge request fdroid/fdroidclient!1122
2022-05-31 10:19:38 +00:00
Licaon_Kter
9d32dafaae
Update AF for NonFreeNet to be complete
2022-05-31 10:19:16 +00:00
Hans-Christoph Steiner
c9fc732ef1
Merge branch 'allow-v1-for-swap' into 'master'
...
Allow v1 for swap repos
See merge request fdroid/fdroidclient!1124
2022-05-31 10:15:23 +00:00
Torsten Grote
3e6f7604f8
Allow v1 for swap repos
...
HTTP comms in a local LAN is super fast, so we might as well check the swap repo for v1 first, before doing auto-fallback to v0
2022-05-30 11:13:58 -03:00
Hans-Christoph Steiner
bd7cc2b72f
Merge branch 'java11-gradle7' into 'master'
...
Upgrade to Gradle 7 and Java 11
See merge request fdroid/fdroidclient!1100
2022-05-25 15:20:25 +00:00
Hans-Christoph Steiner
1ca03ae2dc
gitlab-ci: rework for buildserver-bullseye and easier KVM
2022-05-25 16:24:55 +02:00
Torsten Grote
6428ef00a5
Revert .gitlab-ci.yml changes in "Upgrade to Gradle 7 and Java 11"
...
This partially reverts commit c463b3c9ed .
2022-05-25 15:13:21 +02:00
Hans-Christoph Steiner
d6e97b4634
update to latest: org.robolectric:robolectric:4.8.1
...
./gradlew --write-verification-metadata pgp,sha256 testFullDebugUnitTest
./gradlew --write-verification-metadata sha256 testFullDebugUnitTest
2022-05-25 13:42:26 +02:00