From b8b05431378e0b24cbd48150eb9a1ac1e06a4cd3 Mon Sep 17 00:00:00 2001 From: Buzurgmehr Arjmandi Date: Thu, 7 May 2020 18:12:40 +0300 Subject: [PATCH] fix: prerelease logic clearer and more reliable --- lib/cache.js | 13 +++++++++---- 1 file changed, 9 insertions(+), 4 deletions(-) diff --git a/lib/cache.js b/lib/cache.js index 4d297cf9..7697c621 100644 --- a/lib/cache.js +++ b/lib/cache.js @@ -105,10 +105,15 @@ module.exports = class Cache { return } - const release = data.find(item => { - const isPre = Boolean(pre) === Boolean(item.prerelease) - return !item.draft && isPre - }) + const isReleaseValid = item => { + const wantPreReleases = Boolean(pre); + const isPrerelease = Boolean(item.prerelease); + const isDraft = Boolean(item.draft); + if(isDraft) return false; + if(isPrerelease && !wantPreReleases) return false; + return true; + } + const release = data.find(isReleaseValid) if (!release || !release.assets || !Array.isArray(release.assets)) { return