From 800a4b07ea91e9ffc8b33a0a993881657b0ae369 Mon Sep 17 00:00:00 2001 From: Caleb Cartwright Date: Sat, 12 Mar 2022 04:37:07 -0600 Subject: [PATCH] fix: restore version comparison updates from #4173 (#4254) Co-authored-by: Pierre-Yves Bigourdan <10694593+PyvesB@users.noreply.github.com> --- services/version.js | 4 ++-- services/version.spec.js | 3 +++ 2 files changed, 5 insertions(+), 2 deletions(-) diff --git a/services/version.js b/services/version.js index d9ca68eeef..7d3b3ff4ca 100644 --- a/services/version.js +++ b/services/version.js @@ -74,12 +74,12 @@ function latestMaybeSemVer(versions, pre) { try { // coerce to string then lowercase otherwise alpha > RC version = versions.sort((a, b) => - semver.rcompare( + semver.compareBuild( `${a}`.toLowerCase(), `${b}`.toLowerCase(), /* loose */ true ) - )[0] + )[versions.length - 1] } catch (e) { version = latestDottedVersion(versions) } diff --git a/services/version.spec.js b/services/version.spec.js index 92b040cfa3..df6a4aa8e4 100644 --- a/services/version.spec.js +++ b/services/version.spec.js @@ -118,6 +118,9 @@ describe('Version helpers', function () { given(['1.0.0', '1.0.2', '1.1', '1.0', 'notaversion2', '12bcde4']).expect( '1.1' ) + + // build qualifiers - https://github.com/badges/shields/issues/4172 + given(['0.3.9', '0.4.0+1', '0.4.0+9']).expect('0.4.0+9') }) test(slice, () => {