Throw an informative error for non-existent version (#86)

* Throw an informative error for non-existent version

* npm install && npm run build
This commit is contained in:
Chris de Graaf
2021-08-05 11:36:30 -03:00
committed by GitHub
parent f577b7c336
commit 2d69597029
4 changed files with 8521 additions and 27 deletions

6
lib/installer.js generated
View File

@@ -124,15 +124,19 @@ function getNightlyFileName(arch) {
return `julia-latest${versionExt}.${ext}`; return `julia-latest${versionExt}.${ext}`;
} }
function getFileInfo(versionInfo, version, arch) { function getFileInfo(versionInfo, version, arch) {
const err = `Could not find ${archMap[arch]}/${version} binaries`;
if (version.endsWith('nightly')) { if (version.endsWith('nightly')) {
return null; return null;
} }
if (!versionInfo[version]) {
throw err;
}
for (let file of versionInfo[version].files) { for (let file of versionInfo[version].files) {
if (file.os == osMap[osPlat] && file.arch == archMap[arch]) { if (file.os == osMap[osPlat] && file.arch == archMap[arch]) {
return file; return file;
} }
} }
throw `Could not find ${archMap[arch]}/${version} binaries`; throw err;
} }
exports.getFileInfo = getFileInfo; exports.getFileInfo = getFileInfo;
function getDownloadURL(fileInfo, version, arch) { function getDownloadURL(fileInfo, version, arch) {

8522
package-lock.json generated

File diff suppressed because it is too large Load Diff

View File

@@ -1,6 +1,6 @@
{ {
"name": "setup-julia", "name": "setup-julia",
"version": "1.6.0", "version": "1.6.1",
"private": true, "private": true,
"description": "setup Julia action", "description": "setup Julia action",
"main": "lib/setup-julia.js", "main": "lib/setup-julia.js",

View File

@@ -115,17 +115,23 @@ function getNightlyFileName(arch: string): string {
} }
export function getFileInfo(versionInfo, version: string, arch: string) { export function getFileInfo(versionInfo, version: string, arch: string) {
const err = `Could not find ${archMap[arch]}/${version} binaries`
if (version.endsWith('nightly')) { if (version.endsWith('nightly')) {
return null return null
} }
if (!versionInfo[version]) {
throw err
}
for (let file of versionInfo[version].files) { for (let file of versionInfo[version].files) {
if (file.os == osMap[osPlat] && file.arch == archMap[arch]) { if (file.os == osMap[osPlat] && file.arch == archMap[arch]) {
return file return file
} }
} }
throw `Could not find ${archMap[arch]}/${version} binaries` throw err
} }
export function getDownloadURL(fileInfo, version: string, arch: string): string { export function getDownloadURL(fileInfo, version: string, arch: string): string {