Skip to content

Commit 6a0805f

Browse files
Fix the bug about parsing dragonwell version (actions#642) (actions#643)
1 parent fd08b9c commit 6a0805f

File tree

4 files changed

+239
-16
lines changed

4 files changed

+239
-16
lines changed

__tests__/data/dragonwell.json

Lines changed: 186 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -481,6 +481,54 @@
481481
}
482482
}
483483
}
484+
},
485+
"11.0.23.20.9" : {
486+
"alpine-linux" : {
487+
"x64" : {
488+
"Extended" : {
489+
"sha256" : "9d61fefb4f1a8368f8e7eec17893934b438b67f360cb8b7ef727ab459695d14e",
490+
"name" : "Alibaba_Dragonwell_Extended_11.0.23.20.9_x64_alpine-linux.tar.gz",
491+
"content_type" : "application/zip",
492+
"download_url" : "https://github.com/dragonwell-project/dragonwell11/releases/download/dragonwell-extended-11.0.23.20_jdk-11.0.23-ga/Alibaba_Dragonwell_Extended_11.0.23.20.9_x64_alpine-linux.tar.gz"
493+
}
494+
}
495+
},
496+
"linux" : {
497+
"aarch64" : {
498+
"Extended" : {
499+
"sha256" : "2f399231644fe1e3f1b4b5298e85f21f4863017767e9e5afb00ee46e2d7780d9",
500+
"name" : "Alibaba_Dragonwell_Extended_11.0.23.20.9_aarch64_linux.tar.gz",
501+
"content_type" : "application/zip",
502+
"download_url" : "https://github.com/dragonwell-project/dragonwell11/releases/download/dragonwell-extended-11.0.23.20_jdk-11.0.23-ga/Alibaba_Dragonwell_Extended_11.0.23.20.9_aarch64_linux.tar.gz"
503+
}
504+
},
505+
"x64" : {
506+
"Extended" : {
507+
"sha256" : "662dfdc584e21bcfb7ed87942b5bb4e71a7b7467d4c82211a3615d0834d1c833",
508+
"name" : "Alibaba_Dragonwell_Extended_11.0.23.20.9_x64_linux.tar.gz",
509+
"content_type" : "application/zip",
510+
"download_url" : "https://github.com/dragonwell-project/dragonwell11/releases/download/dragonwell-extended-11.0.23.20_jdk-11.0.23-ga/Alibaba_Dragonwell_Extended_11.0.23.20.9_x64_linux.tar.gz"
511+
}
512+
},
513+
"riscv" : {
514+
"Extended" : {
515+
"sha256" : "f3488461cbfd95e6c08ad2dc01c51950b9c629c46eea6305002311b263ce2ad9",
516+
"name" : "Alibaba_Dragonwell_Extended_11.0.23.20.9_riscv64_linux.tar.gz",
517+
"content_type" : "application/zip",
518+
"download_url" : "https://github.com/dragonwell-project/dragonwell11/releases/download/dragonwell-extended-11.0.23.20_jdk-11.0.23-ga/Alibaba_Dragonwell_Extended_11.0.23.20.9_riscv64_linux.tar.gz"
519+
}
520+
}
521+
},
522+
"windows" : {
523+
"x64" : {
524+
"Extended" : {
525+
"sha256" : "ba8dba2b7f2279f87220f396afcce49cb26482705deb5144c6e22a90ba443f9d",
526+
"name" : "Alibaba_Dragonwell_Extended_11.0.23.20.9_x64_windows.zip",
527+
"content_type" : "application/zip",
528+
"download_url" : "https://github.com/dragonwell-project/dragonwell11/releases/download/dragonwell-extended-11.0.23.20_jdk-11.0.23-ga/Alibaba_Dragonwell_Extended_11.0.23.20.9_x64_windows.zip"
529+
}
530+
}
531+
}
484532
}
485533
},
486534
"17":{
@@ -1134,5 +1182,143 @@
11341182
}
11351183
}
11361184
}
1185+
},
1186+
"21" : {
1187+
"21.0.3.0.3.9" : {
1188+
"alpine-linux" : {
1189+
"x64" : {
1190+
"Standard" : {
1191+
"sha256" : "c3c5d193a0a6aee8757fd3036dc13b7921a4306b089bf8759ba6b822d1e8416e",
1192+
"name" : "Alibaba_Dragonwell_Standard_21.0.3.0.3.9_x64_alpine-linux.tar.gz",
1193+
"content_type" : "application/zip",
1194+
"download_url" : "https://github.com/dragonwell-project/dragonwell21/releases/download/dragonwell-standard-21.0.3.0.3%2B9_jdk-21.0.3-ga/Alibaba_Dragonwell_Standard_21.0.3.0.3.9_x64_alpine-linux.tar.gz"
1195+
}
1196+
}
1197+
},
1198+
"linux" : {
1199+
"aarch64" : {
1200+
"Standard" : {
1201+
"sha256" : "3cc309627ad2a9515ca50cdeff9eff118f14326b37eaa536b758570082aeb242",
1202+
"name" : "Alibaba_Dragonwell_Standard_21.0.3.0.3.9_aarch64_linux.tar.gz",
1203+
"content_type" : "application/zip",
1204+
"download_url" : "https://github.com/dragonwell-project/dragonwell21/releases/download/dragonwell-standard-21.0.3.0.3%2B9_jdk-21.0.3-ga/Alibaba_Dragonwell_Standard_21.0.3.0.3.9_aarch64_linux.tar.gz"
1205+
}
1206+
},
1207+
"x64" : {
1208+
"Standard" : {
1209+
"sha256" : "1c0508db048c0b50e2d61b2cc5a5390d3b9bcafec6e185d2cb53dde1fc530203",
1210+
"name" : "Alibaba_Dragonwell_Standard_21.0.3.0.3.9_x64_linux.tar.gz",
1211+
"content_type" : "application/zip",
1212+
"download_url" : "https://github.com/dragonwell-project/dragonwell21/releases/download/dragonwell-standard-21.0.3.0.3%2B9_jdk-21.0.3-ga/Alibaba_Dragonwell_Standard_21.0.3.0.3.9_x64_linux.tar.gz"
1213+
}
1214+
},
1215+
"riscv" : {
1216+
"Standard" : {
1217+
"sha256" : "e374698f8ee9c66b8d4a59ba50d0511aa654b55514732bc787e29c9afaddf846",
1218+
"name" : "Alibaba_Dragonwell_Standard_21.0.3.0.3.9_riscv64_linux.tar.gz",
1219+
"content_type" : "application/zip",
1220+
"download_url" : "https://github.com/dragonwell-project/dragonwell21/releases/download/dragonwell-standard-21.0.3.0.3%2B9_jdk-21.0.3-ga/Alibaba_Dragonwell_Standard_21.0.3.0.3.9_riscv64_linux.tar.gz"
1221+
}
1222+
}
1223+
},
1224+
"windows" : {
1225+
"x64" : {
1226+
"Standard" : {
1227+
"sha256" : "0b75fc888cb2a9c7e050132fd020c30cbe65f3179feb36812a7c6be3c76ad277",
1228+
"name" : "Alibaba_Dragonwell_Standard_21.0.3.0.3.9_x64_windows.zip",
1229+
"content_type" : "application/zip",
1230+
"download_url" : "https://github.com/dragonwell-project/dragonwell21/releases/download/dragonwell-standard-21.0.3.0.3%2B9_jdk-21.0.3-ga/Alibaba_Dragonwell_Standard_21.0.3.0.3.9_x64_windows.zip"
1231+
}
1232+
}
1233+
}
1234+
},
1235+
"21.0.2.0.2.13" : {
1236+
"alpine-linux" : {
1237+
"x64" : {
1238+
"Standard" : {
1239+
"sha256" : "71a391987fdd569385c0afe1aaf16dbd48d127e14306793ef9ac0e0986b9632c",
1240+
"name" : "Alibaba_Dragonwell_Standard_21.0.2.0.2.13_x64_alpine-linux.tar.gz",
1241+
"content_type" : "application/zip",
1242+
"download_url" : "https://github.com/dragonwell-project/dragonwell21/releases/download/dragonwell-standard-21.0.2.0.2%2B13_jdk-21.0.2-ga/Alibaba_Dragonwell_Standard_21.0.2.0.2.13_x64_alpine-linux.tar.gz"
1243+
}
1244+
}
1245+
},
1246+
"linux" : {
1247+
"aarch64" : {
1248+
"Standard" : {
1249+
"sha256" : "307321a399c206f8d56e0ce5c65921f9448ec9882dfb81ffc5e841b8fb5f8ed8",
1250+
"name" : "Alibaba_Dragonwell_Standard_21.0.2.0.2.13_aarch64_linux.tar.gz",
1251+
"content_type" : "application/zip",
1252+
"download_url" : "https://github.com/dragonwell-project/dragonwell21/releases/download/dragonwell-standard-21.0.2.0.2%2B13_jdk-21.0.2-ga/Alibaba_Dragonwell_Standard_21.0.2.0.2.13_aarch64_linux.tar.gz"
1253+
}
1254+
},
1255+
"x64" : {
1256+
"Standard" : {
1257+
"sha256" : "24198f0d436bb913b152181e07205647b05da01c196f5c10a96e9a998b10381a",
1258+
"name" : "Alibaba_Dragonwell_Standard_21.0.2.0.2.13_x64_linux.tar.gz",
1259+
"content_type" : "application/zip",
1260+
"download_url" : "https://github.com/dragonwell-project/dragonwell21/releases/download/dragonwell-standard-21.0.2.0.2%2B13_jdk-21.0.2-ga/Alibaba_Dragonwell_Standard_21.0.2.0.2.13_x64_linux.tar.gz"
1261+
}
1262+
},
1263+
"riscv" : {
1264+
"Standard" : {
1265+
"sha256" : "970a49103b8971952e46c81be844bc3776caca04da8456337f12e3a7d2a18011",
1266+
"name" : "Alibaba_Dragonwell_Standard_21.0.2.0.2.13_riscv64_linux.tar.gz",
1267+
"content_type" : "application/zip",
1268+
"download_url" : "https://github.com/dragonwell-project/dragonwell21/releases/download/dragonwell-standard-21.0.2.0.2%2B13_jdk-21.0.2-ga/Alibaba_Dragonwell_Standard_21.0.2.0.2.13_riscv64_linux.tar.gz"
1269+
}
1270+
}
1271+
},
1272+
"windows" : {
1273+
"x64" : {
1274+
"Standard" : {
1275+
"sha256" : "b77de54be5ef1595fc568f6f18fbd4b61d64d99a0c9c5ef78a84018b4f82032b",
1276+
"name" : "Alibaba_Dragonwell_Standard_21.0.2.0.2.13_x64_windows.zip",
1277+
"content_type" : "application/zip",
1278+
"download_url" : "https://github.com/dragonwell-project/dragonwell21/releases/download/dragonwell-standard-21.0.2.0.2%2B13_jdk-21.0.2-ga/Alibaba_Dragonwell_Standard_21.0.2.0.2.13_x64_windows.zip"
1279+
}
1280+
}
1281+
}
1282+
},
1283+
"21.0.1.0.1.12" : {
1284+
"alpine-linux" : {
1285+
"x64" : {
1286+
"Standard" : {
1287+
"sha256" : "b9cea58bffe555484b831ff6d7cdb277c07e86a76d32b373ec35fa21ecb5fdc9",
1288+
"name" : "Alibaba_Dragonwell_Standard_21.0.1.0.1.12_x64_alpine-linux.tar.gz",
1289+
"content_type" : "application/zip",
1290+
"download_url" : "https://github.com/dragonwell-project/dragonwell21/releases/download/dragonwell-standard-21.0.1.0.1%2B12_jdk-21.0.1-ga/Alibaba_Dragonwell_Standard_21.0.1.0.1.12_x64_alpine-linux.tar.gz"
1291+
}
1292+
}
1293+
},
1294+
"linux" : {
1295+
"aarch64" : {
1296+
"Standard" : {
1297+
"sha256" : "d36cef494ccc1939c6b5da04133cfdbe0b03956fd04147aef46014536bc5a37b",
1298+
"name" : "Alibaba_Dragonwell_Standard_21.0.1.0.1.12_aarch64_linux.tar.gz",
1299+
"content_type" : "application/zip",
1300+
"download_url" : "https://github.com/dragonwell-project/dragonwell21/releases/download/dragonwell-standard-21.0.1.0.1%2B12_jdk-21.0.1-ga/Alibaba_Dragonwell_Standard_21.0.1.0.1.12_aarch64_linux.tar.gz"
1301+
}
1302+
},
1303+
"x64" : {
1304+
"Standard" : {
1305+
"sha256" : "dfb8d325a98b8f577d72fd639cc54feee325eec8ebba497868184c8405a1cf41",
1306+
"name" : "Alibaba_Dragonwell_Standard_21.0.1.0.1.12_x64_linux.tar.gz",
1307+
"content_type" : "application/zip",
1308+
"download_url" : "https://github.com/dragonwell-project/dragonwell21/releases/download/dragonwell-standard-21.0.1.0.1%2B12_jdk-21.0.1-ga/Alibaba_Dragonwell_Standard_21.0.1.0.1.12_x64_linux.tar.gz"
1309+
}
1310+
}
1311+
},
1312+
"windows" : {
1313+
"x64" : {
1314+
"Standard" : {
1315+
"sha256" : "b8ab99ed9060341f75edb8cc238830fbfd608e51536e43f34bd45c3e968ebab5",
1316+
"name" : "Alibaba_Dragonwell_Standard_21.0.1.0.1.12_x64_windows.zip",
1317+
"content_type" : "application/zip",
1318+
"download_url" : "https://github.com/dragonwell-project/dragonwell21/releases/download/dragonwell-standard-21.0.1.0.1%2B12_jdk-21.0.1-ga/Alibaba_Dragonwell_Standard_21.0.1.0.1.12_x64_windows.zip"
1319+
}
1320+
}
1321+
}
1322+
}
11371323
}
11381324
}

__tests__/distributors/dragonwell-installer.test.ts

Lines changed: 41 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -41,15 +41,16 @@ describe('getAvailableVersions', () => {
4141
describe('getAvailableVersions', () => {
4242
it.each([
4343
['8', 'x86', 'linux', 0],
44-
['8', 'aarch64', 'linux', 24],
45-
['8.6.6', 'x64', 'linux', 27],
44+
['8', 'aarch64', 'linux', 28],
45+
['8.6.6', 'x64', 'linux', 31],
4646
['8', 'x86', 'anolis', 0],
4747
['8', 'x86', 'windows', 0],
4848
['8', 'x86', 'mac', 0],
49-
['11', 'x64', 'linux', 27],
50-
['11', 'aarch64', 'linux', 24],
51-
['17', 'riscv', 'linux', 0],
52-
['16.0.1', 'x64', 'linux', 27]
49+
['11', 'x64', 'linux', 31],
50+
['11', 'aarch64', 'linux', 28],
51+
['17', 'riscv', 'linux', 3],
52+
['16.0.1', 'x64', 'linux', 31],
53+
['21', 'x64', 'linux', 31]
5354
])(
5455
'should get right number of available versions from JSON',
5556
async (
@@ -103,25 +104,31 @@ describe('getAvailableVersions', () => {
103104
'11',
104105
'linux',
105106
'x64',
106-
'https://github.com/alibaba/dragonwell11/releases/download/dragonwell-extended-11.0.17.13_jdk-11.0.17-ga/Alibaba_Dragonwell_Extended_11.0.17.13.8_x64_linux.tar.gz'
107+
'https://github.com/dragonwell-project/dragonwell11/releases/download/dragonwell-extended-11.0.23.20_jdk-11.0.23-ga/Alibaba_Dragonwell_Extended_11.0.23.20.9_x64_linux.tar.gz'
107108
],
108109
[
109110
'11',
110111
'linux',
111112
'aarch64',
112-
'https://github.com/alibaba/dragonwell11/releases/download/dragonwell-extended-11.0.17.13_jdk-11.0.17-ga/Alibaba_Dragonwell_Extended_11.0.17.13.8_aarch64_linux.tar.gz'
113+
'https://github.com/dragonwell-project/dragonwell11/releases/download/dragonwell-extended-11.0.23.20_jdk-11.0.23-ga/Alibaba_Dragonwell_Extended_11.0.23.20.9_aarch64_linux.tar.gz'
114+
],
115+
[
116+
'11',
117+
'linux',
118+
'riscv',
119+
'https://github.com/dragonwell-project/dragonwell11/releases/download/dragonwell-extended-11.0.23.20_jdk-11.0.23-ga/Alibaba_Dragonwell_Extended_11.0.23.20.9_riscv64_linux.tar.gz'
113120
],
114121
[
115122
'11',
116123
'windows',
117124
'x64',
118-
'https://github.com/alibaba/dragonwell11/releases/download/dragonwell-extended-11.0.17.13_jdk-11.0.17-ga/Alibaba_Dragonwell_Extended_11.0.17.13.8_x64_windows.zip'
125+
'https://github.com/dragonwell-project/dragonwell11/releases/download/dragonwell-extended-11.0.23.20_jdk-11.0.23-ga/Alibaba_Dragonwell_Extended_11.0.23.20.9_x64_windows.zip'
119126
],
120127
[
121128
'11',
122129
'alpine-linux',
123130
'x64',
124-
'https://github.com/alibaba/dragonwell11/releases/download/dragonwell-extended-11.0.17.13_jdk-11.0.17-ga/Alibaba_Dragonwell_Extended_11.0.17.13.8_x64_alpine-linux.tar.gz'
131+
'https://github.com/dragonwell-project/dragonwell11/releases/download/dragonwell-extended-11.0.23.20_jdk-11.0.23-ga/Alibaba_Dragonwell_Extended_11.0.23.20.9_x64_alpine-linux.tar.gz'
125132
],
126133
[
127134
'11.0.17',
@@ -158,6 +165,30 @@ describe('getAvailableVersions', () => {
158165
'linux',
159166
'x64',
160167
'https://github.com/alibaba/dragonwell17/releases/download/dragonwell-standard-17.0.4.0.4%2B8_jdk-17.0.4-ga/Alibaba_Dragonwell_Standard_17.0.4.0.4%2B8_x64_linux.tar.gz'
168+
],
169+
[
170+
'17.0.4+8',
171+
'linux',
172+
'x64',
173+
'https://github.com/alibaba/dragonwell17/releases/download/dragonwell-standard-17.0.4.0.4%2B8_jdk-17.0.4-ga/Alibaba_Dragonwell_Standard_17.0.4.0.4%2B8_x64_linux.tar.gz'
174+
],
175+
[
176+
'21',
177+
'linux',
178+
'aarch64',
179+
'https://github.com/dragonwell-project/dragonwell21/releases/download/dragonwell-standard-21.0.3.0.3%2B9_jdk-21.0.3-ga/Alibaba_Dragonwell_Standard_21.0.3.0.3.9_aarch64_linux.tar.gz'
180+
],
181+
[
182+
'21.0.3+9',
183+
'linux',
184+
'riscv',
185+
'https://github.com/dragonwell-project/dragonwell21/releases/download/dragonwell-standard-21.0.3.0.3%2B9_jdk-21.0.3-ga/Alibaba_Dragonwell_Standard_21.0.3.0.3.9_riscv64_linux.tar.gz'
186+
],
187+
[
188+
'21.0.1+12',
189+
'linux',
190+
'x64',
191+
'https://github.com/dragonwell-project/dragonwell21/releases/download/dragonwell-standard-21.0.1.0.1%2B12_jdk-21.0.1-ga/Alibaba_Dragonwell_Standard_21.0.1.0.1.12_x64_linux.tar.gz'
161192
]
162193
])(
163194
'should return proper link according to the specified java-version, platform and arch',

dist/setup/index.js

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -124231,9 +124231,10 @@ class DragonwellDistribution extends base_installer_1.JavaBase {
124231124231
}
124232124232
// Some version of Dragonwell JDK are numerated with help of non-semver notation (more then 3 digits).
124233124233
// Common practice is to transform excess digits to the so-called semver build part, which is prefixed with the plus sign, to be able to operate with them using semver tools.
124234-
if (jdkVersion.split('.').length > 3) {
124235-
jdkVersion = (0, util_1.convertVersionToSemver)(jdkVersion);
124236-
}
124234+
const jdkVersionNums = jdkVersion
124235+
.replace('+', '.')
124236+
.split('.');
124237+
jdkVersion = (0, util_1.convertVersionToSemver)(`${jdkVersionNums.slice(0, 3).join('.')}.${jdkVersionNums[jdkVersionNums.length - 1]}`);
124237124238
for (const edition in archMap) {
124238124239
eligibleVersions.push({
124239124240
os: platform,

src/distributions/dragonwell/installer.ts

Lines changed: 8 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -149,9 +149,14 @@ export class DragonwellDistribution extends JavaBase {
149149

150150
// Some version of Dragonwell JDK are numerated with help of non-semver notation (more then 3 digits).
151151
// Common practice is to transform excess digits to the so-called semver build part, which is prefixed with the plus sign, to be able to operate with them using semver tools.
152-
if (jdkVersion.split('.').length > 3) {
153-
jdkVersion = convertVersionToSemver(jdkVersion);
154-
}
152+
const jdkVersionNums: string[] = jdkVersion
153+
.replace('+', '.')
154+
.split('.');
155+
jdkVersion = convertVersionToSemver(
156+
`${jdkVersionNums.slice(0, 3).join('.')}.${
157+
jdkVersionNums[jdkVersionNums.length - 1]
158+
}`
159+
);
155160

156161
for (const edition in archMap) {
157162
eligibleVersions.push({

0 commit comments

Comments
 (0)
pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy