@@ -13,19 +13,26 @@ export const modules = {
1313/* harmony import */ var path__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/ __webpack_require__ . n ( path__WEBPACK_IMPORTED_MODULE_1__ ) ;
1414/* harmony import */ var fs__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__ ( 9896 ) ;
1515/* harmony import */ var fs__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/ __webpack_require__ . n ( fs__WEBPACK_IMPORTED_MODULE_2__ ) ;
16- /* harmony import */ var semver__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__ ( 2088 ) ;
17- /* harmony import */ var semver__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/ __webpack_require__ . n ( semver__WEBPACK_IMPORTED_MODULE_3__ ) ;
18- /* harmony import */ var _base_installer_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__ ( 6242 ) ;
19- /* harmony import */ var _platform_types_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__ ( 7444 ) ;
20- /* harmony import */ var _util_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__ ( 4527 ) ;
16+ /* harmony import */ var _base_installer_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__ ( 6242 ) ;
17+ /* harmony import */ var _platform_types_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__ ( 7444 ) ;
18+ /* harmony import */ var _util_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__ ( 4527 ) ;
2119
2220
2321
2422
2523
2624
27-
28- class ZuluDistribution extends _base_installer_js__WEBPACK_IMPORTED_MODULE_4__ /* .JavaBase */ . O {
25+ function compareNumberArrays ( a , b ) {
26+ const length = Math . max ( a . length , b . length ) ;
27+ for ( let i = 0 ; i < length ; i ++ ) {
28+ const diff = ( a [ i ] ?? 0 ) - ( b [ i ] ?? 0 ) ;
29+ if ( diff !== 0 ) {
30+ return diff ;
31+ }
32+ }
33+ return 0 ;
34+ }
35+ class ZuluDistribution extends _base_installer_js__WEBPACK_IMPORTED_MODULE_3__ /* .JavaBase */ . O {
2936 constructor ( installerOptions ) {
3037 super ( 'Zulu' , installerOptions ) ;
3138 }
@@ -39,19 +46,24 @@ class ZuluDistribution extends _base_installer_js__WEBPACK_IMPORTED_MODULE_4__/*
3946 ? [ ...item . java_version , item . openjdk_build_number ]
4047 : item . java_version ;
4148 return {
42- version : ( 0 , _util_js__WEBPACK_IMPORTED_MODULE_6__ /* .convertVersionToSemver */ . ZY ) ( javaVersion ) ,
49+ version : ( 0 , _util_js__WEBPACK_IMPORTED_MODULE_5__ /* .convertVersionToSemver */ . ZY ) ( javaVersion ) ,
4350 url : item . download_url ,
44- zuluVersion : ( 0 , _util_js__WEBPACK_IMPORTED_MODULE_6__ /* .convertVersionToSemver */ . ZY ) ( item . distro_version ) ,
51+ javaVersion : item . java_version ,
52+ buildNumber : item . openjdk_build_number ?? 0 ,
53+ distroVersion : item . distro_version ,
4554 packageUuid : item . package_uuid
4655 } ;
4756 } ) ;
4857 const satisfiedVersions = availableVersions
49- . filter ( item => ( 0 , _util_js__WEBPACK_IMPORTED_MODULE_6__ /* .isVersionSatisfies */ . y ) ( version , item . version ) )
58+ . filter ( item => ( 0 , _util_js__WEBPACK_IMPORTED_MODULE_5__ /* .isVersionSatisfies */ . y ) ( version , item . version ) )
5059 . sort ( ( a , b ) => {
51- // Azul provides two versions: java_version and distro_version
52- // we should sort by both fields by descending
53- return ( - semver__WEBPACK_IMPORTED_MODULE_3___default ( ) . compareBuild ( a . version , b . version ) ||
54- - semver__WEBPACK_IMPORTED_MODULE_3___default ( ) . compareBuild ( a . zuluVersion , b . zuluVersion ) ) ;
60+ // Compare numerically rather than via semver build metadata: Azul
61+ // hotfix releases carry a 4th java_version segment (e.g. 25.0.4.1+1,
62+ // rendered as '25.0.4+1.1') that must rank above 25.0.4+7, whereas
63+ // semver.compareBuild would order the build identifiers '7' > '1'.
64+ return ( - compareNumberArrays ( a . javaVersion , b . javaVersion ) ||
65+ b . buildNumber - a . buildNumber ||
66+ - compareNumberArrays ( a . distroVersion , b . distroVersion ) ) ;
5567 } )
5668 . map ( ( item ) => ( {
5769 version : item . version ,
@@ -85,21 +97,21 @@ class ZuluDistribution extends _base_installer_js__WEBPACK_IMPORTED_MODULE_4__/*
8597 _actions_core__WEBPACK_IMPORTED_MODULE_0__ /* .info */ . pq ( `Downloading Java ${ javaRelease . version } (${ this . distribution } ) from ${ javaRelease . url } ...` ) ;
8698 let javaArchivePath = await this . downloadAndVerify ( javaRelease ) ;
8799 _actions_core__WEBPACK_IMPORTED_MODULE_0__ /* .info */ . pq ( `Extracting Java archive...` ) ;
88- const extension = ( 0 , _util_js__WEBPACK_IMPORTED_MODULE_6__ /* .getDownloadArchiveExtension */ . ag ) ( ) ;
100+ const extension = ( 0 , _util_js__WEBPACK_IMPORTED_MODULE_5__ /* .getDownloadArchiveExtension */ . ag ) ( ) ;
89101 if ( process . platform === 'win32' ) {
90- javaArchivePath = ( 0 , _util_js__WEBPACK_IMPORTED_MODULE_6__ /* .renameWinArchive */ . n2 ) ( javaArchivePath ) ;
102+ javaArchivePath = ( 0 , _util_js__WEBPACK_IMPORTED_MODULE_5__ /* .renameWinArchive */ . n2 ) ( javaArchivePath ) ;
91103 }
92- const extractedJavaPath = await ( 0 , _util_js__WEBPACK_IMPORTED_MODULE_6__ /* .extractJdkFile */ . PE ) ( javaArchivePath , extension ) ;
104+ const extractedJavaPath = await ( 0 , _util_js__WEBPACK_IMPORTED_MODULE_5__ /* .extractJdkFile */ . PE ) ( javaArchivePath , extension ) ;
93105 const archiveName = fs__WEBPACK_IMPORTED_MODULE_2___default ( ) . readdirSync ( extractedJavaPath ) [ 0 ] ;
94106 const archivePath = path__WEBPACK_IMPORTED_MODULE_1___default ( ) . join ( extractedJavaPath , archiveName ) ;
95- const javaPath = await ( 0 , _util_js__WEBPACK_IMPORTED_MODULE_6__ /* .cacheJdkDir */ . Vj ) ( archivePath , this . toolcacheFolderName , this . getToolcacheVersionName ( javaRelease . version ) , this . architecture ) ;
107+ const javaPath = await ( 0 , _util_js__WEBPACK_IMPORTED_MODULE_5__ /* .cacheJdkDir */ . Vj ) ( archivePath , this . toolcacheFolderName , this . getToolcacheVersionName ( javaRelease . version ) , this . architecture ) ;
96108 return { version : javaRelease . version , path : javaPath } ;
97109 }
98110 async getAvailableVersions ( ) {
99111 const arch = this . getArchitectureOptions ( ) ;
100112 const [ bundleType , features ] = this . packageType . split ( '+' ) ;
101113 const platform = this . getPlatformOption ( ) ;
102- const extension = ( 0 , _util_js__WEBPACK_IMPORTED_MODULE_6__ /* .getDownloadArchiveExtension */ . ag ) ( ) ;
114+ const extension = ( 0 , _util_js__WEBPACK_IMPORTED_MODULE_5__ /* .getDownloadArchiveExtension */ . ag ) ( ) ;
103115 const javafx = features ?. includes ( 'fx' ) ?? false ;
104116 const crac = features ?. includes ( 'crac' ) ?? false ;
105117 const releaseStatus = this . stable ? 'ga' : 'ea' ;
@@ -185,7 +197,7 @@ class ZuluDistribution extends _base_installer_js__WEBPACK_IMPORTED_MODULE_4__/*
185197 // The new Metadata API's "linux" value returns both glibc and musl
186198 // packages, so target the libc the runner actually has. A glibc JDK
187199 // cannot run on Alpine.
188- return ( 0 , _platform_types_js__WEBPACK_IMPORTED_MODULE_5__ /* .isAlpineLinux */ . G6 ) ( ) ? 'linux_musl' : 'linux_glibc' ;
200+ return ( 0 , _platform_types_js__WEBPACK_IMPORTED_MODULE_4__ /* .isAlpineLinux */ . G6 ) ( ) ? 'linux_musl' : 'linux_glibc' ;
189201 default :
190202 return process . platform ;
191203 }
0 commit comments