From 407fe39e6ef2bd96b01171bae94772e79188199f Mon Sep 17 00:00:00 2001 From: Sigurd Meldgaard <sigurdm@google.com> Date: Tue, 12 Dec 2023 20:17:17 +0100 Subject: [PATCH] [pub] Use official version endpoint for pub-service (#9802) * Use official version endpoint for pub-service * run prettier * Update schema * make services a required property --------- Co-authored-by: chris48s <git@chris-shaw.dev> --- services/pub/pub.service.js | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/services/pub/pub.service.js b/services/pub/pub.service.js index 67bbc90c31..15c5d3aa08 100644 --- a/services/pub/pub.service.js +++ b/services/pub/pub.service.js @@ -4,7 +4,9 @@ import { BaseJsonService, redirector, pathParam, queryParam } from '../index.js' import { baseDescription } from './pub-common.js' const schema = Joi.object({ - versions: Joi.array().items(Joi.string()).required(), + versions: Joi.array() + .items(Joi.object({ version: Joi.string().required() })) + .required(), }).required() const queryParamSchema = Joi.object({ @@ -45,14 +47,14 @@ class PubVersion extends BaseJsonService { async fetch({ packageName }) { return this._requestJson({ schema, - url: `https://pub.dartlang.org/packages/${packageName}.json`, + url: `https://pub.dev/api/packages/${packageName}`, }) } async handle({ packageName }, queryParams) { const data = await this.fetch({ packageName }) const includePre = queryParams.include_prereleases !== undefined - const versions = data.versions + const versions = data.versions.map(x => x.version) const version = latest(versions, { pre: includePre }) return renderVersionBadge({ version }) } -- GitLab