Commit Graph

60 Commits

Author SHA1 Message Date
Torsten Grote
51d43f9004 [db] update repo cache right after new repo got added
so we can use the new repo right away without waiting for DB to inform us about change. This is important if we want to show list of apps of a repo right after adding it.
2023-10-18 11:39:38 +00:00
Torsten Grote
a5ec22fa6c [db] add queries for getting app list items by repo 2023-10-18 11:39:38 +00:00
Torsten Grote
66b6c955a8 [db] add https:// scheme if it is missing from given repo URI 2023-10-18 11:39:38 +00:00
Torsten Grote
7c0c9c2cae [db] add support for detecting swap repos
Note that those are not really meant to be added to the DB as they are ephemeral by nature.
2023-10-18 11:39:38 +00:00
Torsten Grote
f068d920bd Add RepoManagerAddAllIntegrationTest which adds all known (stable) repos
See: https://forum.f-droid.org/t/known-repositories/721
2023-10-18 11:39:38 +00:00
Torsten Grote
03a5b697bb [db] Handle fdroidrepos:// Uris as well 2023-10-18 11:39:38 +00:00
Torsten Grote
7b52db331c [db] Catch NotFoundException in RepoAdder 2023-10-18 11:39:38 +00:00
Torsten Grote
40c71e4b06 [db] Reject invalid URIs when adding repos 2023-10-18 11:39:38 +00:00
Torsten Grote
6abf3e3a8f [db] Add execution delay in attempt to fix flaky RepoAdder test 2023-10-18 11:39:38 +00:00
Torsten Grote
35481a8011 Initial support for fdroid.link URIs 2023-10-18 11:39:38 +00:00
Aayush Gupta
17faf8d3ef Mark apps with target SDK lower than 23 as incompatiable
* Reason: https://developer.android.com/about/versions/14/behavior-changes-all#minimum-target-api-level

Signed-off-by: Aayush Gupta <aayushgupta219@gmail.com>
2023-10-13 23:58:05 +05:30
Torsten Grote
7c9083fea1 Add test for compat flag in AppOverviewItems 2023-10-10 11:08:10 -03:00
Torsten Grote
30ad12cc57 Fix missing flag in RepoV2StreamReceiver 2023-10-10 11:05:24 -03:00
sim
b1f73e8cb7 Do not list incompatible app
Fix #41
2023-10-10 13:50:34 +00:00
Torsten Grote
93979a5dc7 [db] don't return default archive repos for getRepository() query based on certificate 2023-08-23 11:57:47 +02:00
Torsten Grote
1e54751142 [db] handle SerializationException when parsing index for RepoAdder 2023-08-23 10:53:44 +02:00
Torsten Grote
26b2c7b2fd Upgrade test dependencies and fix instrumentation test issue 2023-08-23 10:30:21 +02:00
Torsten Grote
f3e8a0a45b [db] Add plumping for fetching and adding a new repo 2023-08-21 10:52:34 +02:00
Torsten Grote
43816ffe8d [db] validate repo certificate
for now only for initial repos, but eventually we should validate for CoreRepository as well to prevent invalid certs from entering the DB by other means.
2023-08-02 09:16:44 +02:00
Torsten Grote
8d4da28936 [app] some pre-repo mirror nitpicks 2023-07-11 13:29:45 -03:00
Michael Pöhn
bcd9cc0548 🧭 add mirrors to default_repos.xml 2023-07-11 16:19:26 +00:00
Torsten Grote
4aa244bd1a Downgrade kotlinx-serialization-json to 1.4.1 to fix #2637
https://github.com/Kotlin/kotlinx.serialization/issues/2231
2023-06-20 09:11:20 -03:00
Torsten Grote
d62e4b7735 Upgrade kotlinx-serialization-json to 1.5.1 in hope to fix #2637 2023-06-19 10:32:02 -03:00
Torsten Grote
7853354394 [db] Require SDK 28 for instrumentation tests 2023-06-15 10:28:40 +00:00
Torsten Grote
e83bf6f94c Run KVM tests on SDK 28 due to mock limitation 2023-06-15 10:28:40 +00:00
Torsten Grote
373d038cc9 Enable gradle build cache within each pipeline
in order to speed up the CI.

This does not enable the build cache on local dev machines.
2023-06-15 10:28:40 +00:00
Torsten Grote
b70b3a9a06 [app] Use RepoManager for enabling/disabling repos 2023-06-07 13:52:21 +00:00
Torsten Grote
e382900f39 [app] Use RepoManager for deleting repositories 2023-06-07 13:52:21 +00:00
Torsten Grote
e819741c1a [app] Introduce RepoManager for managing list of repos
Later this will also be used for adding/removing repos.
2023-06-07 13:52:21 +00:00
Torsten Grote
0b28cced32 [db] Expose repoId of category and add method to get localized icon
The repoId is needed, so we can download the category icon from the correct repo.
2023-06-07 13:52:21 +00:00
Torsten Grote
21f8a23814 Upgrade all (most of) the things 2023-05-30 09:39:15 -03:00
Torsten Grote
d83822510c Compile libraries with SDK 33 as well 2023-05-29 12:00:49 -03:00
Torsten Grote
d7b52abf43 [db] Clarify method documentation for clearing/resetting 2023-04-06 08:34:02 -03:00
Torsten Grote
7489f8466b [db] Rework AppDao#clearAll() method to fix critical bug
This is a breaking change.

The new method is in FDroidDatabase and called clearAllAppData(). It now also resets repository timestamps, so we will not try to apply a diff when we should use a full index.
2023-04-05 17:34:36 -03:00
Torsten Grote
21f40158a2 [db] escape search query
to prevent sqlite FTS search features from messing up query

Fixes acra-crash-reports#217
2023-03-14 13:28:48 +00:00
Torsten Grote
2500915a03 Bump library versions and update their README 2023-02-23 10:45:53 +00:00
Torsten Grote
7ff61fde50 [app] Don't treat apps with known-vulnerabilities like real updates 2023-01-19 08:36:04 +00:00
Torsten Grote
7a2d0e31f3 [db] Handle users with a thousand apps or more installed in AppDao 2023-01-13 08:41:37 +00:00
Torsten Grote
a474198c34 [db] Handle users with a thousand apps or more installed in VersionDao 2023-01-13 08:41:37 +00:00
Torsten Grote
50722f8270 [db] Ensure that we never return an empty list of mirrors for Repository#getMirrors() 2022-12-21 14:29:06 +00:00
Torsten Grote
90a14f82a1 [db] Add method for clearing all app data from DB (old resetTransient) 2022-12-19 11:01:35 -03:00
Hans-Christoph Steiner
be5b7d89f8 fix ktlint
libs/database/src/dbTest/java/org/fdroid/database/AppListItemsTest.kt:68:1 Exceeded max line length (100) (cannot be auto-corrected) (max-line-length)
libs/database/src/dbTest/java/org/fdroid/database/AppListItemsTest.kt:121:1 Exceeded max line length (100) (cannot be auto-corrected) (max-line-length)
2022-12-16 11:34:46 +01:00
Isira Seneviratne
4ae3da15f0 Use PackageInfoCompat.getLongVersionCode(). 2022-12-15 18:28:29 +01:00
Torsten Grote
818767b6c0 Update Room DB schema to match actual schema used 2022-12-15 17:10:08 +00: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
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
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
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
6a805c464e [db] only consider enabled repos for getApp() query 2022-12-01 17:43:13 +01:00