Files
fdroidclient/libs/sharedTest/src/main/assets/diff-empty-mid/23.json
T
Torsten Grote 632f55eb15 [index] Fix diffing of version features
The structure of the JSON (FeatureV2) and of our internal class AppManifest is different. The latter uses a list of strings instead of objects. The ReflectionDiffer didn't handle this different and was throwing an exception when diffing changing features.

However, the impact of this bug should be small as normally one version has an ID which is its SHA256 hash and thus its features shouldn't change over repo updates. Imaginable is erratic repo creation software though.
2024-10-08 17:14:24 +00:00

674 lines
23 KiB
JSON

{
"repo": {
"name": {
"en-US": "MidV1",
"de": "MitteV1"
},
"icon": {
"en-US": {
"name": "/icons/mid-v1.png",
"sha256": "74758e480ae76297c7947f107db9ea03d2933c9d5c110d02046977cf78d43def",
"size": 234232352235
},
"de": {
"name": "/icons/mitte-v1.png",
"sha256": "34758e480ae76297c7947f107db9ea03d2933c9d5c110d02046977cf78d43def",
"size": 132352235
}
},
"address": "https://mid-v1.org",
"description": {
"en-US": "This is a repo with medium data.",
"de": "Dies ist ein Repo mit mittlerer Datendichte."
},
"mirrors": [
{
"url": "https://mid-v1.com"
}
],
"timestamp": 1337,
"antiFeatures": {
"AntiFeature": {
"name": {
"en-US": "AntiFeature"
},
"description": {
"en-US": "A bad anti-feature, we can't show to users."
}
}
},
"categories": {
"Cat1": {
"icon": {
"en-US": {
"name": "/icons/cat2.png",
"sha256": "54758e480ae76297c7947f107db9ea03d2933c9d5c110d02046977cf78d43def",
"size": 9223372036854775807
}
},
"name": {
"en-US": "Cat1"
}
},
"System": {
"name": {}
}
}
},
"packages": {
"org.fdroid.min1": {
"metadata": {
"name": {
"en-US": "App1",
"de": "app 1 name"
},
"summary": {
"en-US": "App1 summary",
"de": "App1 Zusammenfassung"
},
"description": {
"en-US": "App1 description",
"de": "App1 beschreibung"
},
"added": 1234567890,
"lastUpdated": 1234567891,
"webSite": "http://min1.test.org",
"license": "GPLv3",
"categories": [
"Cat1"
],
"authorName": "App1 author",
"icon": {
"en-US": {
"name": "/icons/icon-min1.png",
"sha256": "824a109b2352138c3699760e1683385d0ed50ce526fc7982f8d65757743374bf",
"size": 1337
}
}
},
"versions": {
"824a109b2352138c3699760e1683385d0ed50ce526fc7982f8d65757743374bf": {
"added": 0,
"file": {
"name": "/org.fdroid.min1_42.apk",
"sha256": "824a109b2352138c3699760e1683385d0ed50ce526fc7982f8d65757743374bf",
"size": 1337
},
"src": {
"name": "/org.fdroid.min1_42.zip",
"sha256": "824a109b2352138c3699760e1683385d0ed50ce526fc7982f8d65757743374bf",
"size": 1338
},
"manifest": {
"versionName": "24",
"versionCode": 24,
"usesSdk": {
"minSdkVersion": 21,
"targetSdkVersion": 32
},
"maxSdkVersion": 4568,
"signer": {
"sha256": [
"824a109b2352138c3699760e1683385d0ed50ce526fc7982f8d65757743374bf"
]
},
"features": [
{
"name": "new feature"
}
]
},
"releaseChannels": [
"Beta"
],
"antiFeatures": {
"AntiFeature": {
"en-US": "reason"
}
}
}
}
},
"org.fdroid.fdroid": {
"metadata": {
"name": {
"af": "-درويد",
"be": "F-Droid",
"bn": "এফ-ড্রয়েড",
"ca": "F-Droid",
"cs": "F-Droid",
"cy": "F-Droid",
"el": "F-Droid",
"en-US": "F-Droid",
"eo": "F-Droid"
},
"summary": {
"af": "متجر التطبيقات الذي يحترم الحرية والخصوصية)",
"be": "Крама праграм, якая паважае свабоду і прыватнасць",
"bg": "Магазинът за приложения, който уважава независимостта и поверителността",
"bn": "যে অ্যাপ স্টোর স্বাধীনতা ও গোপনীয়তা সম্মান করে",
"bo": "རང་དབང་དང་གསང་དོན་ལ་གུས་བརྩི་ཞུས་མཁན་གྱི་མཉེན་ཆས་ཉར་ཚགས་ཁང་།",
"ca": "La botiga d'aplicacions que respecta la llibertat i la privacitat",
"cs": "Zdroj aplikací který respektuje vaši svobodu a soukromí",
"cy": "Yr ystorfa apiau sy'n parchu rhyddid a phreifatrwydd",
"de": "Der App-Store, der Freiheit und Privatsphäre respektiert",
"el": "Το κατάστημα εφαρμογών που σέβεται την ελευθερία και την ιδιωτικότητα",
"en-US": "The app store that respects freedom and privacy",
"eo": "Aplikaĵa vendejo respektanta liberecon kaj privatecon"
},
"description": {
"af": "F-Droid is 'n installeerbare katalogus van gratis sagteware",
"bo": "ཨེཕ་རོཌ་ནི་ཨེན་ཀྲོཌ་བབ་སྟེགས་ཀྱི་ཆེད་དུ་FOSS",
"ca": "F-Droid és un catàleg instal·lable d'aplicacions de software lliure",
"cs": "F-Droid je instalovatelný katalog softwarových libre",
"cy": "Mae F-Droid yn gatalog y gellir ei osod o apiau meddalwedd rhyddar gyfer Android.",
"de": "F-Droid ist ein installierbarer Katalog mit Libre SoftwareAndroid-Apps.",
"el": "Το F-Droid είναι ένας κατάλογος εφαρμογών ελεύθερου λογισμικού",
"en-US": "F-Droid is an installable catalogue of libre software",
"eo": "F-Droid estas instalebla katalogo de liberaj aplikaĵoj por Android."
},
"added": 1295222400000,
"lastUpdated": 1643250075000,
"webSite": "https://f-droid.org",
"changelog": "https://gitlab.com/fdroid/fdroidclient/raw/HEAD/CHANGELOG.md",
"license": "GPL-3.0-or-later",
"sourceCode": "https://gitlab.com/fdroid/fdroidclient",
"issueTracker": "https://gitlab.com/fdroid/fdroidclient/issues",
"translation": "https://hosted.weblate.org/projects/f-droid/f-droid",
"preferredSigner": "43238d512c1e5eb2d6569f4a3afbf5523418b82e0a3ed1552770abb9a9c9ccab",
"categories": [
"System"
],
"donate": [
"https://f-droid.org/donate"
],
"liberapayID": "27859",
"openCollective": "F-Droid-Euro",
"flattrID": "343053",
"icon": {
"en-US": {
"name": "/icons/org.fdroid.fdroid.1014050.png",
"sha256": "224a109b2352138c3699760e1683385d0ed50ce526fc7982f8d65757743374bf",
"size": 1237
}
},
"featureGraphic": {
"en-US": {
"name": "/org.fdroid.fdroid/en-US/featureGraphic_PTun9TO4cMFOeiqbvQSrkdcxNUcOFQCymMIaj9UJOAY=.jpg",
"sha256": "424a109b2352138c3699760e1683385d0ed50ce526fc7982f8d65757743374bf",
"size": 4237
}
},
"screenshots": {
"phone": {
"en-US": [
{
"name": "/org.fdroid.fdroid/en-US/phoneScreenshots/screenshot-app-details.png",
"sha256": "424a109b2352138c3699760e1683385d0ed50ce526fc7982f8d65757743374bf",
"size": 4237
},
{
"name": "/org.fdroid.fdroid/en-US/phoneScreenshots/screenshot-dark-details.png",
"sha256": "424a109b2352138c3699760e1683385d0ed50ce526fc7982f8d65757743374bf",
"size": 44287
},
{
"name": "/org.fdroid.fdroid/en-US/phoneScreenshots/screenshot-dark-home.png",
"sha256": "424a109b2352138c3699760e1673385d0ed50ce526fc7982f8d65757743374bf",
"size": 4587
},
{
"name": "/org.fdroid.fdroid/en-US/phoneScreenshots/screenshot-dark-knownvuln.png",
"sha256": "424a109b2352138c3699760e1683385d0ed50ce526fc7982f8d65757743374bf",
"size": 445837
},
{
"name": "/org.fdroid.fdroid/en-US/phoneScreenshots/screenshot-knownvuln.png",
"sha256": "424a109b2352138c4599760e1683385d0ed50ce526fc7982f8d65757743374bf",
"size": 4287
},
{
"name": "/org.fdroid.fdroid/en-US/phoneScreenshots/screenshot-search.png",
"sha256": "424a109b2352138c3694760e1683385d0ed50ce526fc7982f8d65757743374bf",
"size": 2857
},
{
"name": "/org.fdroid.fdroid/en-US/phoneScreenshots/screenshot-updates.png",
"sha256": "424a109b2352138c3699750e1683385d0ed50ce526fc7982f8d65757743374bf",
"size": 485287
}
]
}
}
},
"versions": {
"8c89ce2f42f4a89af8ca6e1ea220f9dfdee220724d8a9cc067d510ac6f3e0d06": {
"added": 1643250075000,
"file": {
"name": "/org.fdroid.fdroid_1014050.apk",
"sha256": "8c89ce2f42f4a89af8ca6e1ea220f9dfdee220724d8a9cc067d510ac6f3e0d06",
"size": 8165518
},
"src": {
"name": "/org.fdroid.fdroid_1014050_src.tar.gz",
"sha256": "8c89ce2f42f4a89af8ca6e1ea220f9dfdee220724d8a9cc067d510ac6f3e0d07",
"size": 8165519
},
"manifest": {
"versionName": "1.14",
"versionCode": 1014050,
"usesSdk": {
"minSdkVersion": 22,
"targetSdkVersion": 25
},
"signer": {
"sha256": [
"43238d512c1e5eb2d6569f4a3afbf5523418b82e0a3ed1552770abb9a9c9ccab"
]
},
"usesPermission": [
{
"name": "android.permission.INTERNET"
},
{
"name": "android.permission.ACCESS_NETWORK_STATE"
},
{
"name": "android.permission.ACCESS_WIFI_STATE"
},
{
"name": "android.permission.CHANGE_WIFI_MULTICAST_STATE"
},
{
"name": "android.permission.CHANGE_NETWORK_STATE"
},
{
"name": "android.permission.CHANGE_WIFI_STATE"
},
{
"name": "android.permission.BLUETOOTH"
},
{
"name": "android.permission.BLUETOOTH_ADMIN"
},
{
"name": "android.permission.RECEIVE_BOOT_COMPLETED"
},
{
"name": "android.permission.READ_EXTERNAL_STORAGE"
},
{
"name": "android.permission.WRITE_EXTERNAL_STORAGE"
},
{
"name": "android.permission.WRITE_SETTINGS"
},
{
"name": "android.permission.NFC"
},
{
"name": "android.permission.USB_PERMISSION",
"maxSdkVersion": 22
},
{
"name": "android.permission.WAKE_LOCK"
},
{
"name": "android.permission.FOREGROUND_SERVICE"
}
],
"usesPermissionSdk23": [
{
"name": "android.permission.ACCESS_COARSE_LOCATION"
}
]
},
"whatsNew": {
"en-US": "* Overhaul Share menu to use built-in options like Nearby",
"eo": "• rekonstruita menuo “Kunhavigi” por uzi enkonstruitajn eblojn, ekz."
}
},
"b4282febf5558d43c7c51a00478961f6df1b6d59e0a6674974cdacb792683e5d": {
"added": 1642785071000,
"file": {
"name": "/org.fdroid.fdroid_1014005.apk",
"sha256": "b4282febf5558d43c7c51a00478961f6df1b6d59e0a6674974cdacb792683e5d",
"size": 8382606
},
"src": {
"name": "/org.fdroid.fdroid_1014005_src.tar.gz",
"sha256": "8c89ce2f42f4a89af8ca6e1ea220f9dfdee220724d8a9cc067d510ac6f3e0d07",
"size": 8165519
},
"manifest": {
"versionName": "1.14-alpha5",
"versionCode": 1014005,
"usesSdk": {
"minSdkVersion": 22,
"targetSdkVersion": 25
},
"signer": {
"sha256": [
"43238d512c1e5eb2d6569f4a3afbf5523418b82e0a3ed1552770abb9a9c9ccab"
]
},
"usesPermission": [
{
"name": "android.permission.INTERNET"
},
{
"name": "android.permission.ACCESS_NETWORK_STATE"
},
{
"name": "android.permission.ACCESS_WIFI_STATE"
},
{
"name": "android.permission.CHANGE_WIFI_MULTICAST_STATE"
},
{
"name": "android.permission.CHANGE_NETWORK_STATE"
},
{
"name": "android.permission.CHANGE_WIFI_STATE"
},
{
"name": "android.permission.BLUETOOTH"
},
{
"name": "android.permission.BLUETOOTH_ADMIN"
},
{
"name": "android.permission.RECEIVE_BOOT_COMPLETED"
},
{
"name": "android.permission.READ_EXTERNAL_STORAGE"
},
{
"name": "android.permission.WRITE_EXTERNAL_STORAGE"
},
{
"name": "android.permission.WRITE_SETTINGS"
},
{
"name": "android.permission.NFC"
},
{
"name": "android.permission.USB_PERMISSION",
"maxSdkVersion": 22
},
{
"name": "android.permission.WAKE_LOCK"
},
{
"name": "android.permission.FOREGROUND_SERVICE"
}
],
"usesPermissionSdk23": [
{
"name": "android.permission.ACCESS_COARSE_LOCATION"
}
],
"nativecode": [
"fakeNativeCode"
],
"features": [
{
"name": "fake feature"
}
]
},
"antiFeatures": {
"FakeAntiFeature": {}
}
},
"c062a9642fde08aacabbfa4cab1ab5773c83f4e6b81551ffd92027d2b20f37d3": {
"added": 1635169849000,
"file": {
"name": "/org.fdroid.fdroid_1014003.apk",
"sha256": "c062a9642fde08aacabbfa4cab1ab5773c83f4e6b81551ffd92027d2b20f37d3",
"size": 8276110
},
"src": {
"name": "/org.fdroid.fdroid_1014003_src.tar.gz",
"sha256": "8c89ce2f42f4a89af8ca6e1ea220f9dfdee220724d8a9cb067d510ac6f3e0d07",
"size": 8165519
},
"manifest": {
"versionName": "1.14-alpha3",
"versionCode": 1014003,
"usesSdk": {
"minSdkVersion": 22,
"targetSdkVersion": 25
},
"signer": {
"sha256": [
"43238d512c1e5eb2d6569f4a3afbf5523418b82e0a3ed1552770abb9a9c9ccab"
]
},
"usesPermission": [
{
"name": "android.permission.INTERNET"
},
{
"name": "android.permission.ACCESS_NETWORK_STATE"
},
{
"name": "android.permission.ACCESS_WIFI_STATE"
},
{
"name": "android.permission.CHANGE_WIFI_MULTICAST_STATE"
},
{
"name": "android.permission.CHANGE_NETWORK_STATE"
},
{
"name": "android.permission.CHANGE_WIFI_STATE"
},
{
"name": "android.permission.BLUETOOTH"
},
{
"name": "android.permission.BLUETOOTH_ADMIN"
},
{
"name": "android.permission.RECEIVE_BOOT_COMPLETED"
},
{
"name": "android.permission.READ_EXTERNAL_STORAGE"
},
{
"name": "android.permission.WRITE_EXTERNAL_STORAGE"
},
{
"name": "android.permission.WRITE_SETTINGS"
},
{
"name": "android.permission.NFC"
},
{
"name": "android.permission.USB_PERMISSION",
"maxSdkVersion": 22
},
{
"name": "android.permission.WAKE_LOCK"
},
{
"name": "android.permission.FOREGROUND_SERVICE"
}
],
"usesPermissionSdk23": [
{
"name": "android.permission.ACCESS_COARSE_LOCATION"
}
]
}
},
"3243c24ee95be0fce0830d72e7d2605e3e24f6ccf4ee72a7c8e720fccd7621a1": {
"added": 1632281731000,
"file": {
"name": "/org.fdroid.fdroid_1014002.apk",
"sha256": "3243c24ee95be0fce0830d72e7d2605e3e24f6ccf4ee72a7c8e720fccd7621a1",
"size": 8284386
},
"src": {
"name": "/org.fdroid.fdroid_1014002_src.tar.gz",
"sha256": "7c89ce2f42f4a89af8ca6e1ea220f9dfdee220724d8a9cb067d510ac6f3e0d07",
"size": 7165519
},
"manifest": {
"versionName": "1.14-alpha2",
"versionCode": 1014002,
"usesSdk": {
"minSdkVersion": 22,
"targetSdkVersion": 25
},
"signer": {
"sha256": [
"43238d512c1e5eb2d6569f4a3afbf5523418b82e0a3ed1552770abb9a9c9ccab"
]
},
"usesPermission": [
{
"name": "android.permission.INTERNET"
},
{
"name": "android.permission.ACCESS_NETWORK_STATE"
},
{
"name": "android.permission.ACCESS_WIFI_STATE"
},
{
"name": "android.permission.CHANGE_WIFI_MULTICAST_STATE"
},
{
"name": "android.permission.CHANGE_NETWORK_STATE"
},
{
"name": "android.permission.CHANGE_WIFI_STATE"
},
{
"name": "android.permission.BLUETOOTH"
},
{
"name": "android.permission.BLUETOOTH_ADMIN"
},
{
"name": "android.permission.RECEIVE_BOOT_COMPLETED"
},
{
"name": "android.permission.READ_EXTERNAL_STORAGE"
},
{
"name": "android.permission.WRITE_EXTERNAL_STORAGE"
},
{
"name": "android.permission.WRITE_SETTINGS"
},
{
"name": "android.permission.NFC"
},
{
"name": "android.permission.USB_PERMISSION",
"maxSdkVersion": 22
},
{
"name": "android.permission.WAKE_LOCK"
},
{
"name": "android.permission.FOREGROUND_SERVICE"
}
],
"usesPermissionSdk23": [
{
"name": "android.permission.ACCESS_COARSE_LOCATION"
}
]
}
},
"7ebfd5eb76f9ec95ba955e549260fe930dc38fb99ed3532f92c93b879aca5610": {
"added": 1632281729000,
"file": {
"name": "/org.fdroid.fdroid_1014001.apk",
"sha256": "7ebfd5eb76f9ec95ba955e549260fe930dc38fb99ed3532f92c93b879aca5610",
"size": 8272166
},
"src": {
"name": "/org.fdroid.fdroid_1014001_src.tar.gz",
"sha256": "6c89ce2f42f4a89af8ca6e1ea220f9dfdee220724d8a9cb067d510ac6f3e0d07",
"size": 6165519
},
"manifest": {
"versionName": "1.14-alpha1",
"versionCode": 1014001,
"usesSdk": {
"minSdkVersion": 22,
"targetSdkVersion": 25
},
"signer": {
"sha256": [
"43238d512c1e5eb2d6569f4a3afbf5523418b82e0a3ed1552770abb9a9c9ccab"
]
},
"usesPermission": [
{
"name": "android.permission.INTERNET"
},
{
"name": "android.permission.ACCESS_NETWORK_STATE"
},
{
"name": "android.permission.ACCESS_WIFI_STATE"
},
{
"name": "android.permission.CHANGE_WIFI_MULTICAST_STATE"
},
{
"name": "android.permission.CHANGE_NETWORK_STATE"
},
{
"name": "android.permission.CHANGE_WIFI_STATE"
},
{
"name": "android.permission.BLUETOOTH"
},
{
"name": "android.permission.BLUETOOTH_ADMIN"
},
{
"name": "android.permission.RECEIVE_BOOT_COMPLETED"
},
{
"name": "android.permission.READ_EXTERNAL_STORAGE"
},
{
"name": "android.permission.WRITE_EXTERNAL_STORAGE"
},
{
"name": "android.permission.WRITE_SETTINGS"
},
{
"name": "android.permission.NFC"
},
{
"name": "android.permission.USB_PERMISSION",
"maxSdkVersion": 22
},
{
"name": "android.permission.WAKE_LOCK"
},
{
"name": "android.permission.FOREGROUND_SERVICE"
}
],
"usesPermissionSdk23": [
{
"name": "android.permission.ACCESS_COARSE_LOCATION"
}
]
}
}
}
}
}
}