From bea7087487cc866e6122e22371a268e7477a2040 Mon Sep 17 00:00:00 2001 From: Kalle Fagerberg Date: Sat, 14 Feb 2026 13:16:21 +0100 Subject: [PATCH] Fix version check --- dist/index.js | 7 ++++++- package-lock.json | 18 ++++++++++++++++++ package.json | 1 + src/index.ts | 13 +++++++++---- 4 files changed, 34 insertions(+), 5 deletions(-) diff --git a/dist/index.js b/dist/index.js index a0e66d3..15dd3bc 100644 --- a/dist/index.js +++ b/dist/index.js @@ -20099,7 +20099,12 @@ async function extract(file) { } async function findLatestVersion() { try { - const version = (await new import_lib.HttpClient().getJson("https://github.com/deepnoodle-ai/risor/releases/latest")).result.tag_name; + const response = await new import_lib.HttpClient().getJson("https://github.com/deepnoodle-ai/risor/releases/latest"); + const version = response.result?.tag_name; + if (!version) { + warning(`No latest Risor release was found. Raw response: ${response.result}`); + return latestKnownVersion; + } info(`Found latest version of Risor: ${version}`); return version; } catch (err) { diff --git a/package-lock.json b/package-lock.json index 3c3665c..20d0dde 100644 --- a/package-lock.json +++ b/package-lock.json @@ -14,6 +14,7 @@ "@actions/tool-cache": "^4.0.0" }, "devDependencies": { + "@octokit/types": "^16.0.0", "@types/node": "^25.2.3", "oxfmt": "^0.32.0", "oxlint": "^1.47.0", @@ -139,6 +140,23 @@ "url": "https://github.com/sponsors/Brooooooklyn" } }, + "node_modules/@octokit/openapi-types": { + "version": "27.0.0", + "resolved": "https://registry.npmjs.org/@octokit/openapi-types/-/openapi-types-27.0.0.tgz", + "integrity": "sha512-whrdktVs1h6gtR+09+QsNk2+FO+49j6ga1c55YZudfEG+oKJVvJLQi3zkOm5JjiUXAagWK2tI2kTGKJ2Ys7MGA==", + "dev": true, + "license": "MIT" + }, + "node_modules/@octokit/types": { + "version": "16.0.0", + "resolved": "https://registry.npmjs.org/@octokit/types/-/types-16.0.0.tgz", + "integrity": "sha512-sKq+9r1Mm4efXW1FCk7hFSeJo4QKreL/tTbR0rz/qx/r1Oa2VV83LTA/H/MuCOX7uCIJmQVRKBcbmWoySjAnSg==", + "dev": true, + "license": "MIT", + "dependencies": { + "@octokit/openapi-types": "^27.0.0" + } + }, "node_modules/@oxc-project/types": { "version": "0.113.0", "resolved": "https://registry.npmjs.org/@oxc-project/types/-/types-0.113.0.tgz", diff --git a/package.json b/package.json index 18466a5..8d773ea 100644 --- a/package.json +++ b/package.json @@ -32,6 +32,7 @@ "@actions/tool-cache": "^4.0.0" }, "devDependencies": { + "@octokit/types": "^16.0.0", "@types/node": "^25.2.3", "oxfmt": "^0.32.0", "oxlint": "^1.47.0", diff --git a/src/index.ts b/src/index.ts index 9d254cf..fc04cd4 100644 --- a/src/index.ts +++ b/src/index.ts @@ -1,6 +1,7 @@ import * as core from '@actions/core'; import * as tc from '@actions/tool-cache'; import { HttpClient } from '@actions/http-client'; +import { Endpoints } from '@octokit/types'; // Used as fallback if getting latest version fails. const latestKnownVersion = 'v1.8.1'; @@ -47,10 +48,14 @@ async function extract(file: string) { async function findLatestVersion(): Promise { try { const httpClient = new HttpClient(); - const response = await httpClient.getJson( - 'https://github.com/deepnoodle-ai/risor/releases/latest', - ); - const version = response.result.tag_name; + const response = await httpClient.getJson< + Endpoints['GET /repos/{owner}/{repo}/releases/latest']['response']['data'] + >('https://github.com/deepnoodle-ai/risor/releases/latest'); + const version = response.result?.tag_name; + if (!version) { + core.warning(`No latest Risor release was found. Raw response: ${response.result}`); + return latestKnownVersion; + } core.info(`Found latest version of Risor: ${version}`); return version; } catch (err) {