From 26e22e62b14dbbe90038c2bede0d5639bbccb4d2 Mon Sep 17 00:00:00 2001 From: kitsunyan <24494863+kitsunyan@users.noreply.github.com> Date: Sat, 15 Aug 2020 20:24:25 +0000 Subject: [PATCH] Migrate to the official F-Droid API (#5416) Co-authored-by: repo-ranger[bot] <39074581+repo-ranger[bot]@users.noreply.github.com> --- services/f-droid/f-droid.service.js | 14 ++++++++++---- services/f-droid/f-droid.tester.js | 4 ++-- 2 files changed, 12 insertions(+), 6 deletions(-) diff --git a/services/f-droid/f-droid.service.js b/services/f-droid/f-droid.service.js index 19ddb8b516..a665069e25 100644 --- a/services/f-droid/f-droid.service.js +++ b/services/f-droid/f-droid.service.js @@ -65,7 +65,7 @@ module.exports = class FDroid extends BaseJsonService { } async fetch({ appId }) { - const url = `https://gitlab.com/kitsunyan/fdroidapi/raw/master/applications/${appId}` + const url = `https://f-droid.org/api/v1/packages/${appId}` return this._requestJson({ schema, url, @@ -76,9 +76,8 @@ module.exports = class FDroid extends BaseJsonService { }) } - async handle({ appId }, { include_prereleases: prereleases }) { - const json = await this.fetch({ appId }) - const svc = prereleases === undefined && json.suggestedVersionCode + transform({ json, suggested }) { + const svc = suggested && json.suggestedVersionCode const packages = (json.packages || []).filter( ({ versionCode }) => !svc || versionCode <= svc ) @@ -88,6 +87,13 @@ module.exports = class FDroid extends BaseJsonService { const version = packages.reduce((a, b) => a.versionCode > b.versionCode ? a : b ).versionName + return { version } + } + + async handle({ appId }, { include_prereleases }) { + const json = await this.fetch({ appId }) + const suggested = include_prereleases === undefined + const { version } = this.transform({ json, suggested }) return this.constructor.render({ version }) } } diff --git a/services/f-droid/f-droid.tester.js b/services/f-droid/f-droid.tester.js index 7c2310d238..5d77c54eb2 100644 --- a/services/f-droid/f-droid.tester.js +++ b/services/f-droid/f-droid.tester.js @@ -30,8 +30,8 @@ const testJson = ` } ` -const base = 'https://gitlab.com/kitsunyan/fdroidapi' -const path = `/raw/master/applications/${testPkg}` +const base = 'https://f-droid.org/api/v1' +const path = `/packages/${testPkg}` t.create('Package is found') .get(`/v/${testPkg}.json`)