From 7abdf1c01e22749cbcbc2a7d6da6726907f46f6f Mon Sep 17 00:00:00 2001 From: mahabaleshwars Date: Mon, 4 Mar 2024 12:07:27 +0530 Subject: [PATCH 01/29] added support for tool version file --- dist/cleanup/index.js | 10 ++++++++-- dist/setup/index.js | 12 +++++++++--- src/setup-java.ts | 6 +++++- src/util.ts | 11 +++++++++-- 4 files changed, 31 insertions(+), 8 deletions(-) diff --git a/dist/cleanup/index.js b/dist/cleanup/index.js index 971673a56..0bdc03100 100644 --- a/dist/cleanup/index.js +++ b/dist/cleanup/index.js @@ -87887,9 +87887,15 @@ function isCacheFeatureAvailable() { return false; } exports.isCacheFeatureAvailable = isCacheFeatureAvailable; -function getVersionFromFileContent(content, distributionName) { +function getVersionFromFileContent(content, distributionName, versionFile) { var _a, _b, _c, _d, _e; - const javaVersionRegExp = /(?(?<=(^|\s|-))(\d+\S*))(\s|$)/; + let javaVersionRegExp; + if (versionFile == '.tool-versions') { + javaVersionRegExp = /^java\s+(?:\S+-)?v?(?[^\s]+)$/m; + } + else { + javaVersionRegExp = /(?(?<=(^|\s|-))(\d+\S*))(\s|$)/; + } const fileContent = ((_b = (_a = content.match(javaVersionRegExp)) === null || _a === void 0 ? void 0 : _a.groups) === null || _b === void 0 ? void 0 : _b.version) ? (_d = (_c = content.match(javaVersionRegExp)) === null || _c === void 0 ? void 0 : _c.groups) === null || _d === void 0 ? void 0 : _d.version : ''; diff --git a/dist/setup/index.js b/dist/setup/index.js index f8c70dab2..2936d56d2 100644 --- a/dist/setup/index.js +++ b/dist/setup/index.js @@ -124907,7 +124907,7 @@ function run() { if (!versions.length) { core.debug('java-version input is empty, looking for java-version-file input'); const content = fs_1.default.readFileSync(versionFile).toString().trim(); - const version = (0, util_1.getVersionFromFileContent)(content, distributionName); + const version = (0, util_1.getVersionFromFileContent)(content, distributionName, versionFile); core.debug(`Parsed version from file '${version}'`); if (!version) { throw new Error(`No supported version was found in file ${versionFile}`); @@ -125261,9 +125261,15 @@ function isCacheFeatureAvailable() { return false; } exports.isCacheFeatureAvailable = isCacheFeatureAvailable; -function getVersionFromFileContent(content, distributionName) { +function getVersionFromFileContent(content, distributionName, versionFile) { var _a, _b, _c, _d, _e; - const javaVersionRegExp = /(?(?<=(^|\s|-))(\d+\S*))(\s|$)/; + let javaVersionRegExp; + if (versionFile == '.tool-versions') { + javaVersionRegExp = /^java\s+(?:\S+-)?v?(?[^\s]+)$/m; + } + else { + javaVersionRegExp = /(?(?<=(^|\s|-))(\d+\S*))(\s|$)/; + } const fileContent = ((_b = (_a = content.match(javaVersionRegExp)) === null || _a === void 0 ? void 0 : _a.groups) === null || _b === void 0 ? void 0 : _b.version) ? (_d = (_c = content.match(javaVersionRegExp)) === null || _c === void 0 ? void 0 : _c.groups) === null || _d === void 0 ? void 0 : _d.version : ''; diff --git a/src/setup-java.ts b/src/setup-java.ts index 35a315df6..73baf33a7 100644 --- a/src/setup-java.ts +++ b/src/setup-java.ts @@ -55,7 +55,11 @@ async function run() { ); const content = fs.readFileSync(versionFile).toString().trim(); - const version = getVersionFromFileContent(content, distributionName); + const version = getVersionFromFileContent( + content, + distributionName, + versionFile + ); core.debug(`Parsed version from file '${version}'`); if (!version) { diff --git a/src/util.ts b/src/util.ts index 94be23477..a4c77faa2 100644 --- a/src/util.ts +++ b/src/util.ts @@ -115,9 +115,16 @@ export function isCacheFeatureAvailable(): boolean { export function getVersionFromFileContent( content: string, - distributionName: string + distributionName: string, + versionFile: string ): string | null { - const javaVersionRegExp = /(?(?<=(^|\s|-))(\d+\S*))(\s|$)/; + let javaVersionRegExp: RegExp; + if (versionFile == '.tool-versions') { + javaVersionRegExp = /^java\s+(?:\S+-)?v?(?[^\s]+)$/m; + } else { + javaVersionRegExp = /(?(?<=(^|\s|-))(\d+\S*))(\s|$)/; + } + const fileContent = content.match(javaVersionRegExp)?.groups?.version ? (content.match(javaVersionRegExp)?.groups?.version as string) : ''; From a7f2ec40007d79e424f0b70efc555859d03ba96f Mon Sep 17 00:00:00 2001 From: mahabaleshwars Date: Mon, 4 Mar 2024 13:20:49 +0530 Subject: [PATCH 02/29] testing with one regex --- dist/cleanup/index.js | 13 ++++++------- dist/setup/index.js | 13 ++++++------- src/util.ts | 13 +++++++------ 3 files changed, 19 insertions(+), 20 deletions(-) diff --git a/dist/cleanup/index.js b/dist/cleanup/index.js index 0bdc03100..54fe296b7 100644 --- a/dist/cleanup/index.js +++ b/dist/cleanup/index.js @@ -87889,13 +87889,12 @@ function isCacheFeatureAvailable() { exports.isCacheFeatureAvailable = isCacheFeatureAvailable; function getVersionFromFileContent(content, distributionName, versionFile) { var _a, _b, _c, _d, _e; - let javaVersionRegExp; - if (versionFile == '.tool-versions') { - javaVersionRegExp = /^java\s+(?:\S+-)?v?(?[^\s]+)$/m; - } - else { - javaVersionRegExp = /(?(?<=(^|\s|-))(\d+\S*))(\s|$)/; - } + const javaVersionRegExp = /^java\s+(?:\S+-)?v?(?[^\s]+)$/m; + // if (versionFile == '.tool-versions') { + // javaVersionRegExp = /^java\s+(?:\S+-)?v?(?[^\s]+)$/m; + // } else { + // javaVersionRegExp = /(?(?<=(^|\s|-))(\d+\S*))(\s|$)/; + // } const fileContent = ((_b = (_a = content.match(javaVersionRegExp)) === null || _a === void 0 ? void 0 : _a.groups) === null || _b === void 0 ? void 0 : _b.version) ? (_d = (_c = content.match(javaVersionRegExp)) === null || _c === void 0 ? void 0 : _c.groups) === null || _d === void 0 ? void 0 : _d.version : ''; diff --git a/dist/setup/index.js b/dist/setup/index.js index 2936d56d2..66091b9fb 100644 --- a/dist/setup/index.js +++ b/dist/setup/index.js @@ -125263,13 +125263,12 @@ function isCacheFeatureAvailable() { exports.isCacheFeatureAvailable = isCacheFeatureAvailable; function getVersionFromFileContent(content, distributionName, versionFile) { var _a, _b, _c, _d, _e; - let javaVersionRegExp; - if (versionFile == '.tool-versions') { - javaVersionRegExp = /^java\s+(?:\S+-)?v?(?[^\s]+)$/m; - } - else { - javaVersionRegExp = /(?(?<=(^|\s|-))(\d+\S*))(\s|$)/; - } + const javaVersionRegExp = /^java\s+(?:\S+-)?v?(?[^\s]+)$/m; + // if (versionFile == '.tool-versions') { + // javaVersionRegExp = /^java\s+(?:\S+-)?v?(?[^\s]+)$/m; + // } else { + // javaVersionRegExp = /(?(?<=(^|\s|-))(\d+\S*))(\s|$)/; + // } const fileContent = ((_b = (_a = content.match(javaVersionRegExp)) === null || _a === void 0 ? void 0 : _a.groups) === null || _b === void 0 ? void 0 : _b.version) ? (_d = (_c = content.match(javaVersionRegExp)) === null || _c === void 0 ? void 0 : _c.groups) === null || _d === void 0 ? void 0 : _d.version : ''; diff --git a/src/util.ts b/src/util.ts index a4c77faa2..7f792080d 100644 --- a/src/util.ts +++ b/src/util.ts @@ -118,12 +118,13 @@ export function getVersionFromFileContent( distributionName: string, versionFile: string ): string | null { - let javaVersionRegExp: RegExp; - if (versionFile == '.tool-versions') { - javaVersionRegExp = /^java\s+(?:\S+-)?v?(?[^\s]+)$/m; - } else { - javaVersionRegExp = /(?(?<=(^|\s|-))(\d+\S*))(\s|$)/; - } + const javaVersionRegExp = /^java\s+(?:\S+-)?v?(?[^\s]+)$/m; + + // if (versionFile == '.tool-versions') { + // javaVersionRegExp = /^java\s+(?:\S+-)?v?(?[^\s]+)$/m; + // } else { + // javaVersionRegExp = /(?(?<=(^|\s|-))(\d+\S*))(\s|$)/; + // } const fileContent = content.match(javaVersionRegExp)?.groups?.version ? (content.match(javaVersionRegExp)?.groups?.version as string) From 12fa539aa2fa404059c60954f4c5dfb3a4f1283d Mon Sep 17 00:00:00 2001 From: mahabaleshwars Date: Mon, 4 Mar 2024 13:27:16 +0530 Subject: [PATCH 03/29] working regex --- dist/cleanup/index.js | 13 +++++++------ dist/setup/index.js | 13 +++++++------ src/util.ts | 13 ++++++------- 3 files changed, 20 insertions(+), 19 deletions(-) diff --git a/dist/cleanup/index.js b/dist/cleanup/index.js index 54fe296b7..0bdc03100 100644 --- a/dist/cleanup/index.js +++ b/dist/cleanup/index.js @@ -87889,12 +87889,13 @@ function isCacheFeatureAvailable() { exports.isCacheFeatureAvailable = isCacheFeatureAvailable; function getVersionFromFileContent(content, distributionName, versionFile) { var _a, _b, _c, _d, _e; - const javaVersionRegExp = /^java\s+(?:\S+-)?v?(?[^\s]+)$/m; - // if (versionFile == '.tool-versions') { - // javaVersionRegExp = /^java\s+(?:\S+-)?v?(?[^\s]+)$/m; - // } else { - // javaVersionRegExp = /(?(?<=(^|\s|-))(\d+\S*))(\s|$)/; - // } + let javaVersionRegExp; + if (versionFile == '.tool-versions') { + javaVersionRegExp = /^java\s+(?:\S+-)?v?(?[^\s]+)$/m; + } + else { + javaVersionRegExp = /(?(?<=(^|\s|-))(\d+\S*))(\s|$)/; + } const fileContent = ((_b = (_a = content.match(javaVersionRegExp)) === null || _a === void 0 ? void 0 : _a.groups) === null || _b === void 0 ? void 0 : _b.version) ? (_d = (_c = content.match(javaVersionRegExp)) === null || _c === void 0 ? void 0 : _c.groups) === null || _d === void 0 ? void 0 : _d.version : ''; diff --git a/dist/setup/index.js b/dist/setup/index.js index 66091b9fb..2936d56d2 100644 --- a/dist/setup/index.js +++ b/dist/setup/index.js @@ -125263,12 +125263,13 @@ function isCacheFeatureAvailable() { exports.isCacheFeatureAvailable = isCacheFeatureAvailable; function getVersionFromFileContent(content, distributionName, versionFile) { var _a, _b, _c, _d, _e; - const javaVersionRegExp = /^java\s+(?:\S+-)?v?(?[^\s]+)$/m; - // if (versionFile == '.tool-versions') { - // javaVersionRegExp = /^java\s+(?:\S+-)?v?(?[^\s]+)$/m; - // } else { - // javaVersionRegExp = /(?(?<=(^|\s|-))(\d+\S*))(\s|$)/; - // } + let javaVersionRegExp; + if (versionFile == '.tool-versions') { + javaVersionRegExp = /^java\s+(?:\S+-)?v?(?[^\s]+)$/m; + } + else { + javaVersionRegExp = /(?(?<=(^|\s|-))(\d+\S*))(\s|$)/; + } const fileContent = ((_b = (_a = content.match(javaVersionRegExp)) === null || _a === void 0 ? void 0 : _a.groups) === null || _b === void 0 ? void 0 : _b.version) ? (_d = (_c = content.match(javaVersionRegExp)) === null || _c === void 0 ? void 0 : _c.groups) === null || _d === void 0 ? void 0 : _d.version : ''; diff --git a/src/util.ts b/src/util.ts index 7f792080d..a4c77faa2 100644 --- a/src/util.ts +++ b/src/util.ts @@ -118,13 +118,12 @@ export function getVersionFromFileContent( distributionName: string, versionFile: string ): string | null { - const javaVersionRegExp = /^java\s+(?:\S+-)?v?(?[^\s]+)$/m; - - // if (versionFile == '.tool-versions') { - // javaVersionRegExp = /^java\s+(?:\S+-)?v?(?[^\s]+)$/m; - // } else { - // javaVersionRegExp = /(?(?<=(^|\s|-))(\d+\S*))(\s|$)/; - // } + let javaVersionRegExp: RegExp; + if (versionFile == '.tool-versions') { + javaVersionRegExp = /^java\s+(?:\S+-)?v?(?[^\s]+)$/m; + } else { + javaVersionRegExp = /(?(?<=(^|\s|-))(\d+\S*))(\s|$)/; + } const fileContent = content.match(javaVersionRegExp)?.groups?.version ? (content.match(javaVersionRegExp)?.groups?.version as string) From 3ac7f4d7acd105c4415de639b562df294b8423b2 Mon Sep 17 00:00:00 2001 From: mahabaleshwars Date: Mon, 4 Mar 2024 13:36:34 +0530 Subject: [PATCH 04/29] Checked for the file extension --- dist/cleanup/index.js | 5 ++++- dist/setup/index.js | 5 ++++- src/util.ts | 5 ++++- 3 files changed, 12 insertions(+), 3 deletions(-) diff --git a/dist/cleanup/index.js b/dist/cleanup/index.js index 0bdc03100..f8989c28a 100644 --- a/dist/cleanup/index.js +++ b/dist/cleanup/index.js @@ -87893,9 +87893,12 @@ function getVersionFromFileContent(content, distributionName, versionFile) { if (versionFile == '.tool-versions') { javaVersionRegExp = /^java\s+(?:\S+-)?v?(?[^\s]+)$/m; } - else { + else if (versionFile == '.java-version') { javaVersionRegExp = /(?(?<=(^|\s|-))(\d+\S*))(\s|$)/; } + else { + throw new Error('Invalid version file'); + } const fileContent = ((_b = (_a = content.match(javaVersionRegExp)) === null || _a === void 0 ? void 0 : _a.groups) === null || _b === void 0 ? void 0 : _b.version) ? (_d = (_c = content.match(javaVersionRegExp)) === null || _c === void 0 ? void 0 : _c.groups) === null || _d === void 0 ? void 0 : _d.version : ''; diff --git a/dist/setup/index.js b/dist/setup/index.js index 2936d56d2..bcc80163b 100644 --- a/dist/setup/index.js +++ b/dist/setup/index.js @@ -125267,9 +125267,12 @@ function getVersionFromFileContent(content, distributionName, versionFile) { if (versionFile == '.tool-versions') { javaVersionRegExp = /^java\s+(?:\S+-)?v?(?[^\s]+)$/m; } - else { + else if (versionFile == '.java-version') { javaVersionRegExp = /(?(?<=(^|\s|-))(\d+\S*))(\s|$)/; } + else { + throw new Error('Invalid version file'); + } const fileContent = ((_b = (_a = content.match(javaVersionRegExp)) === null || _a === void 0 ? void 0 : _a.groups) === null || _b === void 0 ? void 0 : _b.version) ? (_d = (_c = content.match(javaVersionRegExp)) === null || _c === void 0 ? void 0 : _c.groups) === null || _d === void 0 ? void 0 : _d.version : ''; diff --git a/src/util.ts b/src/util.ts index a4c77faa2..4d61574e6 100644 --- a/src/util.ts +++ b/src/util.ts @@ -8,6 +8,7 @@ import * as core from '@actions/core'; import * as tc from '@actions/tool-cache'; import {INPUT_JOB_STATUS, DISTRIBUTIONS_ONLY_MAJOR_VERSION} from './constants'; import {OutgoingHttpHeaders} from 'http'; +import {error} from 'console'; export function getTempDir() { const tempDirectory = process.env['RUNNER_TEMP'] || os.tmpdir(); @@ -121,8 +122,10 @@ export function getVersionFromFileContent( let javaVersionRegExp: RegExp; if (versionFile == '.tool-versions') { javaVersionRegExp = /^java\s+(?:\S+-)?v?(?[^\s]+)$/m; - } else { + } else if (versionFile == '.java-version') { javaVersionRegExp = /(?(?<=(^|\s|-))(\d+\S*))(\s|$)/; + } else { + throw new Error('Invalid version file'); } const fileContent = content.match(javaVersionRegExp)?.groups?.version From 7ac17397e842e255f893e612d144cda3855e1b1e Mon Sep 17 00:00:00 2001 From: mahabaleshwars Date: Mon, 4 Mar 2024 14:05:16 +0530 Subject: [PATCH 05/29] added e2e checks for tool version --- .github/workflows/e2e-versions.yml | 24 ++++++++++++++++++++---- 1 file changed, 20 insertions(+), 4 deletions(-) diff --git a/.github/workflows/e2e-versions.yml b/.github/workflows/e2e-versions.yml index 1f9d6e777..8b9e11193 100644 --- a/.github/workflows/e2e-versions.yml +++ b/.github/workflows/e2e-versions.yml @@ -288,19 +288,23 @@ jobs: matrix: os: [macos-latest, windows-latest, ubuntu-latest] distribution: ['temurin', 'microsoft', 'corretto'] + java-version-file: ['.java-version', '.tool-versions'] steps: - name: Checkout uses: actions/checkout@v4 - name: Create .java-version file shell: bash run: echo "8" > .java-version + - name: Create .tool-versions file + shell: bash + run: echo "java 8" > .tool-versions - name: setup-java uses: ./ id: setup-java with: distribution: ${{ matrix.distribution }} java-version: 11 - java-version-file: '.java-version' + java-version-file: ${{matrix.java-version-file }} - name: Verify Java run: bash __tests__/verify-java.sh "11" "${{ steps.setup-java.outputs.path }}" shell: bash @@ -313,18 +317,22 @@ jobs: matrix: os: [macos-latest, windows-latest, ubuntu-latest] distribution: ['temurin', 'zulu', 'liberica', 'microsoft', 'corretto'] + java-version-file: ['.java-version', '.tool-versions'] steps: - name: Checkout uses: actions/checkout@v4 - name: Create .java-version file shell: bash run: echo "11" > .java-version + - name: Create .tool-versions file + shell: bash + run: echo "java 11" > .tool-versions - name: setup-java uses: ./ id: setup-java with: distribution: ${{ matrix.distribution }} - java-version-file: '.java-version' + java-version-file: ${{matrix.java-version-file }} - name: Verify Java run: bash __tests__/verify-java.sh "11" "${{ steps.setup-java.outputs.path }}" shell: bash @@ -337,18 +345,22 @@ jobs: matrix: os: [macos-latest, windows-latest, ubuntu-latest] distribution: ['adopt', 'adopt-openj9', 'zulu'] + java-version-file: ['.java-version', '.tool-versions'] steps: - name: Checkout uses: actions/checkout@v4 - name: Create .java-version file shell: bash run: echo "11.0.2" > .java-version + - name: Create .tool-versions file + shell: bash + run: echo "java 11.0.2" > .tool-versions - name: setup-java uses: ./ id: setup-java with: distribution: ${{ matrix.distribution }} - java-version-file: '.java-version' + java-version-file: ${{matrix.java-version-file }} - name: Verify Java run: bash __tests__/verify-java.sh "11.0.2" "${{ steps.setup-java.outputs.path }}" shell: bash @@ -361,18 +373,22 @@ jobs: matrix: os: [macos-latest, windows-latest, ubuntu-latest] distribution: ['adopt', 'zulu', 'liberica'] + java-version-file: ['.java-version', '.tool-versions'] steps: - name: Checkout uses: actions/checkout@v4 - name: Create .java-version file shell: bash run: echo "openjdk64-11.0.2" > .java-version + - name: Create .tool-versions file + shell: bash + run: echo "java openjdk64-11.0.2" > .tool-versions - name: setup-java uses: ./ id: setup-java with: distribution: ${{ matrix.distribution }} - java-version-file: '.java-version' + java-version-file: ${{matrix.java-version-file }} - name: Verify Java run: bash __tests__/verify-java.sh "11.0.2" "${{ steps.setup-java.outputs.path }}" shell: bash From c2eed4c7f8f081fe5213b104fb87afba94593c20 Mon Sep 17 00:00:00 2001 From: mahabaleshwars Date: Tue, 5 Mar 2024 12:48:13 +0530 Subject: [PATCH 06/29] removed error warning --- src/util.ts | 1 - 1 file changed, 1 deletion(-) diff --git a/src/util.ts b/src/util.ts index 4d61574e6..4f4616e46 100644 --- a/src/util.ts +++ b/src/util.ts @@ -8,7 +8,6 @@ import * as core from '@actions/core'; import * as tc from '@actions/tool-cache'; import {INPUT_JOB_STATUS, DISTRIBUTIONS_ONLY_MAJOR_VERSION} from './constants'; import {OutgoingHttpHeaders} from 'http'; -import {error} from 'console'; export function getTempDir() { const tempDirectory = process.env['RUNNER_TEMP'] || os.tmpdir(); From d6dce305475b805907cc84d282ac6b5af08faf26 Mon Sep 17 00:00:00 2001 From: mahabaleshwars Date: Thu, 7 Mar 2024 22:03:52 +0530 Subject: [PATCH 07/29] updated regex to support early version --- dist/cleanup/index.js | 2 +- dist/setup/index.js | 2 +- src/util.ts | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/dist/cleanup/index.js b/dist/cleanup/index.js index f8989c28a..c674f28eb 100644 --- a/dist/cleanup/index.js +++ b/dist/cleanup/index.js @@ -87891,7 +87891,7 @@ function getVersionFromFileContent(content, distributionName, versionFile) { var _a, _b, _c, _d, _e; let javaVersionRegExp; if (versionFile == '.tool-versions') { - javaVersionRegExp = /^java\s+(?:\S+-)?v?(?[^\s]+)$/m; + javaVersionRegExp = /^java\s+(?:\S+-)?v?(?[^\s]+(?:[-+]\S+)?)$/m; } else if (versionFile == '.java-version') { javaVersionRegExp = /(?(?<=(^|\s|-))(\d+\S*))(\s|$)/; diff --git a/dist/setup/index.js b/dist/setup/index.js index bcc80163b..9a8555090 100644 --- a/dist/setup/index.js +++ b/dist/setup/index.js @@ -125265,7 +125265,7 @@ function getVersionFromFileContent(content, distributionName, versionFile) { var _a, _b, _c, _d, _e; let javaVersionRegExp; if (versionFile == '.tool-versions') { - javaVersionRegExp = /^java\s+(?:\S+-)?v?(?[^\s]+)$/m; + javaVersionRegExp = /^java\s+(?:\S+-)?v?(?[^\s]+(?:[-+]\S+)?)$/m; } else if (versionFile == '.java-version') { javaVersionRegExp = /(?(?<=(^|\s|-))(\d+\S*))(\s|$)/; diff --git a/src/util.ts b/src/util.ts index 4f4616e46..f0fe20da0 100644 --- a/src/util.ts +++ b/src/util.ts @@ -120,7 +120,7 @@ export function getVersionFromFileContent( ): string | null { let javaVersionRegExp: RegExp; if (versionFile == '.tool-versions') { - javaVersionRegExp = /^java\s+(?:\S+-)?v?(?[^\s]+)$/m; + javaVersionRegExp = /^java\s+(?:\S+-)?v?(?[^\s]+(?:[-+]\S+)?)$/m; } else if (versionFile == '.java-version') { javaVersionRegExp = /(?(?<=(^|\s|-))(\d+\S*))(\s|$)/; } else { From 15bd552ffabca3dbc74b1efb86f5def850917c74 Mon Sep 17 00:00:00 2001 From: mahabaleshwars Date: Thu, 7 Mar 2024 22:22:27 +0530 Subject: [PATCH 08/29] updated regex for early version support --- dist/cleanup/index.js | 2 +- dist/setup/index.js | 2 +- src/util.ts | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/dist/cleanup/index.js b/dist/cleanup/index.js index c674f28eb..725440749 100644 --- a/dist/cleanup/index.js +++ b/dist/cleanup/index.js @@ -87891,7 +87891,7 @@ function getVersionFromFileContent(content, distributionName, versionFile) { var _a, _b, _c, _d, _e; let javaVersionRegExp; if (versionFile == '.tool-versions') { - javaVersionRegExp = /^java\s+(?:\S+-)?v?(?[^\s]+(?:[-+]\S+)?)$/m; + javaVersionRegExp = /^java\s(.*\S)?\s*$/m; } else if (versionFile == '.java-version') { javaVersionRegExp = /(?(?<=(^|\s|-))(\d+\S*))(\s|$)/; diff --git a/dist/setup/index.js b/dist/setup/index.js index 9a8555090..2f140fcfe 100644 --- a/dist/setup/index.js +++ b/dist/setup/index.js @@ -125265,7 +125265,7 @@ function getVersionFromFileContent(content, distributionName, versionFile) { var _a, _b, _c, _d, _e; let javaVersionRegExp; if (versionFile == '.tool-versions') { - javaVersionRegExp = /^java\s+(?:\S+-)?v?(?[^\s]+(?:[-+]\S+)?)$/m; + javaVersionRegExp = /^java\s(.*\S)?\s*$/m; } else if (versionFile == '.java-version') { javaVersionRegExp = /(?(?<=(^|\s|-))(\d+\S*))(\s|$)/; diff --git a/src/util.ts b/src/util.ts index f0fe20da0..8f81ed71a 100644 --- a/src/util.ts +++ b/src/util.ts @@ -120,7 +120,7 @@ export function getVersionFromFileContent( ): string | null { let javaVersionRegExp: RegExp; if (versionFile == '.tool-versions') { - javaVersionRegExp = /^java\s+(?:\S+-)?v?(?[^\s]+(?:[-+]\S+)?)$/m; + javaVersionRegExp = /^java\s(.*\S)?\s*$/m; } else if (versionFile == '.java-version') { javaVersionRegExp = /(?(?<=(^|\s|-))(\d+\S*))(\s|$)/; } else { From 091c70611e4474dbfb46b31bc7c9599326ca48cf Mon Sep 17 00:00:00 2001 From: mahabaleshwars Date: Thu, 7 Mar 2024 22:56:58 +0530 Subject: [PATCH 09/29] updated regex for early version --- dist/cleanup/index.js | 2 +- dist/setup/index.js | 2 +- src/util.ts | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/dist/cleanup/index.js b/dist/cleanup/index.js index 725440749..63f847958 100644 --- a/dist/cleanup/index.js +++ b/dist/cleanup/index.js @@ -87891,7 +87891,7 @@ function getVersionFromFileContent(content, distributionName, versionFile) { var _a, _b, _c, _d, _e; let javaVersionRegExp; if (versionFile == '.tool-versions') { - javaVersionRegExp = /^java\s(.*\S)?\s*$/m; + javaVersionRegExp = /^java\s(?(?<=(^|\s|-))(\d+\S*))(\s|$)/m; } else if (versionFile == '.java-version') { javaVersionRegExp = /(?(?<=(^|\s|-))(\d+\S*))(\s|$)/; diff --git a/dist/setup/index.js b/dist/setup/index.js index 2f140fcfe..52ae7966d 100644 --- a/dist/setup/index.js +++ b/dist/setup/index.js @@ -125265,7 +125265,7 @@ function getVersionFromFileContent(content, distributionName, versionFile) { var _a, _b, _c, _d, _e; let javaVersionRegExp; if (versionFile == '.tool-versions') { - javaVersionRegExp = /^java\s(.*\S)?\s*$/m; + javaVersionRegExp = /^java\s(?(?<=(^|\s|-))(\d+\S*))(\s|$)/m; } else if (versionFile == '.java-version') { javaVersionRegExp = /(?(?<=(^|\s|-))(\d+\S*))(\s|$)/; diff --git a/src/util.ts b/src/util.ts index 8f81ed71a..355f75829 100644 --- a/src/util.ts +++ b/src/util.ts @@ -120,7 +120,7 @@ export function getVersionFromFileContent( ): string | null { let javaVersionRegExp: RegExp; if (versionFile == '.tool-versions') { - javaVersionRegExp = /^java\s(.*\S)?\s*$/m; + javaVersionRegExp = /^java\s(?(?<=(^|\s|-))(\d+\S*))(\s|$)/m; } else if (versionFile == '.java-version') { javaVersionRegExp = /(?(?<=(^|\s|-))(\d+\S*))(\s|$)/; } else { From 23f648d4044d48237fe254ac06a4d7ca4d4abe1b Mon Sep 17 00:00:00 2001 From: mahabaleshwars Date: Fri, 8 Mar 2024 10:33:12 +0530 Subject: [PATCH 10/29] updated regex to accept early versions --- dist/cleanup/index.js | 2 +- dist/setup/index.js | 2 +- src/util.ts | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/dist/cleanup/index.js b/dist/cleanup/index.js index 63f847958..94e69f590 100644 --- a/dist/cleanup/index.js +++ b/dist/cleanup/index.js @@ -87891,7 +87891,7 @@ function getVersionFromFileContent(content, distributionName, versionFile) { var _a, _b, _c, _d, _e; let javaVersionRegExp; if (versionFile == '.tool-versions') { - javaVersionRegExp = /^java\s(?(?<=(^|\s|-))(\d+\S*))(\s|$)/m; + javaVersionRegExp = /^java\s+(?:\S+-)?v?(?[^\s-]+(?:-\S+)?)$/m; } else if (versionFile == '.java-version') { javaVersionRegExp = /(?(?<=(^|\s|-))(\d+\S*))(\s|$)/; diff --git a/dist/setup/index.js b/dist/setup/index.js index 52ae7966d..d24c5feba 100644 --- a/dist/setup/index.js +++ b/dist/setup/index.js @@ -125265,7 +125265,7 @@ function getVersionFromFileContent(content, distributionName, versionFile) { var _a, _b, _c, _d, _e; let javaVersionRegExp; if (versionFile == '.tool-versions') { - javaVersionRegExp = /^java\s(?(?<=(^|\s|-))(\d+\S*))(\s|$)/m; + javaVersionRegExp = /^java\s+(?:\S+-)?v?(?[^\s-]+(?:-\S+)?)$/m; } else if (versionFile == '.java-version') { javaVersionRegExp = /(?(?<=(^|\s|-))(\d+\S*))(\s|$)/; diff --git a/src/util.ts b/src/util.ts index 355f75829..cdab44d49 100644 --- a/src/util.ts +++ b/src/util.ts @@ -120,7 +120,7 @@ export function getVersionFromFileContent( ): string | null { let javaVersionRegExp: RegExp; if (versionFile == '.tool-versions') { - javaVersionRegExp = /^java\s(?(?<=(^|\s|-))(\d+\S*))(\s|$)/m; + javaVersionRegExp = /^java\s+(?:\S+-)?v?(?[^\s-]+(?:-\S+)?)$/m; } else if (versionFile == '.java-version') { javaVersionRegExp = /(?(?<=(^|\s|-))(\d+\S*))(\s|$)/; } else { From 108d3372dc2a3f11b1a575be3c414c194191d8f5 Mon Sep 17 00:00:00 2001 From: mahabaleshwars Date: Fri, 8 Mar 2024 10:45:57 +0530 Subject: [PATCH 11/29] added coreinfo to analyze --- dist/cleanup/index.js | 2 ++ dist/setup/index.js | 2 ++ src/util.ts | 2 ++ 3 files changed, 6 insertions(+) diff --git a/dist/cleanup/index.js b/dist/cleanup/index.js index 94e69f590..c21417ca4 100644 --- a/dist/cleanup/index.js +++ b/dist/cleanup/index.js @@ -87892,9 +87892,11 @@ function getVersionFromFileContent(content, distributionName, versionFile) { let javaVersionRegExp; if (versionFile == '.tool-versions') { javaVersionRegExp = /^java\s+(?:\S+-)?v?(?[^\s-]+(?:-\S+)?)$/m; + core.info(`Tool version javaVersionRegExp: ${javaVersionRegExp}`); } else if (versionFile == '.java-version') { javaVersionRegExp = /(?(?<=(^|\s|-))(\d+\S*))(\s|$)/; + core.info(`java version javaVersionRegExp: ${javaVersionRegExp}`); } else { throw new Error('Invalid version file'); diff --git a/dist/setup/index.js b/dist/setup/index.js index d24c5feba..976878480 100644 --- a/dist/setup/index.js +++ b/dist/setup/index.js @@ -125266,9 +125266,11 @@ function getVersionFromFileContent(content, distributionName, versionFile) { let javaVersionRegExp; if (versionFile == '.tool-versions') { javaVersionRegExp = /^java\s+(?:\S+-)?v?(?[^\s-]+(?:-\S+)?)$/m; + core.info(`Tool version javaVersionRegExp: ${javaVersionRegExp}`); } else if (versionFile == '.java-version') { javaVersionRegExp = /(?(?<=(^|\s|-))(\d+\S*))(\s|$)/; + core.info(`java version javaVersionRegExp: ${javaVersionRegExp}`); } else { throw new Error('Invalid version file'); diff --git a/src/util.ts b/src/util.ts index cdab44d49..fb2b2a61f 100644 --- a/src/util.ts +++ b/src/util.ts @@ -121,8 +121,10 @@ export function getVersionFromFileContent( let javaVersionRegExp: RegExp; if (versionFile == '.tool-versions') { javaVersionRegExp = /^java\s+(?:\S+-)?v?(?[^\s-]+(?:-\S+)?)$/m; + core.info(`Tool version javaVersionRegExp: ${javaVersionRegExp}`); } else if (versionFile == '.java-version') { javaVersionRegExp = /(?(?<=(^|\s|-))(\d+\S*))(\s|$)/; + core.info(`java version javaVersionRegExp: ${javaVersionRegExp}`); } else { throw new Error('Invalid version file'); } From 600bab6918ba186f9b9f9156fa47c0af30929d1f Mon Sep 17 00:00:00 2001 From: mahabaleshwars Date: Fri, 8 Mar 2024 11:07:49 +0530 Subject: [PATCH 12/29] updated the regex --- dist/cleanup/index.js | 4 +--- dist/setup/index.js | 4 +--- src/util.ts | 4 +--- 3 files changed, 3 insertions(+), 9 deletions(-) diff --git a/dist/cleanup/index.js b/dist/cleanup/index.js index c21417ca4..7c55c16d0 100644 --- a/dist/cleanup/index.js +++ b/dist/cleanup/index.js @@ -87891,12 +87891,10 @@ function getVersionFromFileContent(content, distributionName, versionFile) { var _a, _b, _c, _d, _e; let javaVersionRegExp; if (versionFile == '.tool-versions') { - javaVersionRegExp = /^java\s+(?:\S+-)?v?(?[^\s-]+(?:-\S+)?)$/m; - core.info(`Tool version javaVersionRegExp: ${javaVersionRegExp}`); + javaVersionRegExp = /^java\s\d+(-\w+)?(\.\d+)*$/m; } else if (versionFile == '.java-version') { javaVersionRegExp = /(?(?<=(^|\s|-))(\d+\S*))(\s|$)/; - core.info(`java version javaVersionRegExp: ${javaVersionRegExp}`); } else { throw new Error('Invalid version file'); diff --git a/dist/setup/index.js b/dist/setup/index.js index 976878480..a0b1fd3e6 100644 --- a/dist/setup/index.js +++ b/dist/setup/index.js @@ -125265,12 +125265,10 @@ function getVersionFromFileContent(content, distributionName, versionFile) { var _a, _b, _c, _d, _e; let javaVersionRegExp; if (versionFile == '.tool-versions') { - javaVersionRegExp = /^java\s+(?:\S+-)?v?(?[^\s-]+(?:-\S+)?)$/m; - core.info(`Tool version javaVersionRegExp: ${javaVersionRegExp}`); + javaVersionRegExp = /^java\s\d+(-\w+)?(\.\d+)*$/m; } else if (versionFile == '.java-version') { javaVersionRegExp = /(?(?<=(^|\s|-))(\d+\S*))(\s|$)/; - core.info(`java version javaVersionRegExp: ${javaVersionRegExp}`); } else { throw new Error('Invalid version file'); diff --git a/src/util.ts b/src/util.ts index fb2b2a61f..2a17aca95 100644 --- a/src/util.ts +++ b/src/util.ts @@ -120,11 +120,9 @@ export function getVersionFromFileContent( ): string | null { let javaVersionRegExp: RegExp; if (versionFile == '.tool-versions') { - javaVersionRegExp = /^java\s+(?:\S+-)?v?(?[^\s-]+(?:-\S+)?)$/m; - core.info(`Tool version javaVersionRegExp: ${javaVersionRegExp}`); + javaVersionRegExp = /^java\s\d+(-\w+)?(\.\d+)*$/m; } else if (versionFile == '.java-version') { javaVersionRegExp = /(?(?<=(^|\s|-))(\d+\S*))(\s|$)/; - core.info(`java version javaVersionRegExp: ${javaVersionRegExp}`); } else { throw new Error('Invalid version file'); } From 7e1d245a338cf129b79af0b97aed9ed6aa26cefd Mon Sep 17 00:00:00 2001 From: mahabaleshwars Date: Fri, 8 Mar 2024 11:55:42 +0530 Subject: [PATCH 13/29] updated regex --- dist/cleanup/index.js | 3 ++- dist/setup/index.js | 3 ++- src/util.ts | 3 ++- 3 files changed, 6 insertions(+), 3 deletions(-) diff --git a/dist/cleanup/index.js b/dist/cleanup/index.js index 7c55c16d0..923b9cc72 100644 --- a/dist/cleanup/index.js +++ b/dist/cleanup/index.js @@ -87891,7 +87891,8 @@ function getVersionFromFileContent(content, distributionName, versionFile) { var _a, _b, _c, _d, _e; let javaVersionRegExp; if (versionFile == '.tool-versions') { - javaVersionRegExp = /^java\s\d+(-\w+)?(\.\d+)*$/m; + javaVersionRegExp = /^java\s+(?(?<=(^|\s|-))(\d+\S*))(\s|$)/; + core.info(`Using .tool-versions file regx: ${javaVersionRegExp}`); } else if (versionFile == '.java-version') { javaVersionRegExp = /(?(?<=(^|\s|-))(\d+\S*))(\s|$)/; diff --git a/dist/setup/index.js b/dist/setup/index.js index a0b1fd3e6..095e11fb0 100644 --- a/dist/setup/index.js +++ b/dist/setup/index.js @@ -125265,7 +125265,8 @@ function getVersionFromFileContent(content, distributionName, versionFile) { var _a, _b, _c, _d, _e; let javaVersionRegExp; if (versionFile == '.tool-versions') { - javaVersionRegExp = /^java\s\d+(-\w+)?(\.\d+)*$/m; + javaVersionRegExp = /^java\s+(?(?<=(^|\s|-))(\d+\S*))(\s|$)/; + core.info(`Using .tool-versions file regx: ${javaVersionRegExp}`); } else if (versionFile == '.java-version') { javaVersionRegExp = /(?(?<=(^|\s|-))(\d+\S*))(\s|$)/; diff --git a/src/util.ts b/src/util.ts index 2a17aca95..29a9c6e1e 100644 --- a/src/util.ts +++ b/src/util.ts @@ -120,7 +120,8 @@ export function getVersionFromFileContent( ): string | null { let javaVersionRegExp: RegExp; if (versionFile == '.tool-versions') { - javaVersionRegExp = /^java\s\d+(-\w+)?(\.\d+)*$/m; + javaVersionRegExp = /^java\s+(?(?<=(^|\s|-))(\d+\S*))(\s|$)/; + core.info(`Using .tool-versions file regx: ${javaVersionRegExp}`); } else if (versionFile == '.java-version') { javaVersionRegExp = /(?(?<=(^|\s|-))(\d+\S*))(\s|$)/; } else { From 7c2ba3003dfc4e87f0fd690f958c730bcc599018 Mon Sep 17 00:00:00 2001 From: mahabaleshwars Date: Fri, 8 Mar 2024 12:07:07 +0530 Subject: [PATCH 14/29] new regex for early version --- dist/cleanup/index.js | 2 +- dist/setup/index.js | 2 +- src/util.ts | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/dist/cleanup/index.js b/dist/cleanup/index.js index 923b9cc72..2a69d4ef5 100644 --- a/dist/cleanup/index.js +++ b/dist/cleanup/index.js @@ -87891,7 +87891,7 @@ function getVersionFromFileContent(content, distributionName, versionFile) { var _a, _b, _c, _d, _e; let javaVersionRegExp; if (versionFile == '.tool-versions') { - javaVersionRegExp = /^java\s+(?(?<=(^|\s|-))(\d+\S*))(\s|$)/; + javaVersionRegExp = /^java\s+(\S+)/m; core.info(`Using .tool-versions file regx: ${javaVersionRegExp}`); } else if (versionFile == '.java-version') { diff --git a/dist/setup/index.js b/dist/setup/index.js index 095e11fb0..b94e2f90a 100644 --- a/dist/setup/index.js +++ b/dist/setup/index.js @@ -125265,7 +125265,7 @@ function getVersionFromFileContent(content, distributionName, versionFile) { var _a, _b, _c, _d, _e; let javaVersionRegExp; if (versionFile == '.tool-versions') { - javaVersionRegExp = /^java\s+(?(?<=(^|\s|-))(\d+\S*))(\s|$)/; + javaVersionRegExp = /^java\s+(\S+)/m; core.info(`Using .tool-versions file regx: ${javaVersionRegExp}`); } else if (versionFile == '.java-version') { diff --git a/src/util.ts b/src/util.ts index 29a9c6e1e..52248d9a5 100644 --- a/src/util.ts +++ b/src/util.ts @@ -120,7 +120,7 @@ export function getVersionFromFileContent( ): string | null { let javaVersionRegExp: RegExp; if (versionFile == '.tool-versions') { - javaVersionRegExp = /^java\s+(?(?<=(^|\s|-))(\d+\S*))(\s|$)/; + javaVersionRegExp = /^java\s+(\S+)/m; core.info(`Using .tool-versions file regx: ${javaVersionRegExp}`); } else if (versionFile == '.java-version') { javaVersionRegExp = /(?(?<=(^|\s|-))(\d+\S*))(\s|$)/; From 49631827e16d8151d99faa116603e6411df520ad Mon Sep 17 00:00:00 2001 From: mahabaleshwars Date: Fri, 8 Mar 2024 12:12:42 +0530 Subject: [PATCH 15/29] updated regex to match the new version file format --- dist/cleanup/index.js | 4 +++- dist/setup/index.js | 4 +++- src/util.ts | 4 +++- 3 files changed, 9 insertions(+), 3 deletions(-) diff --git a/dist/cleanup/index.js b/dist/cleanup/index.js index 2a69d4ef5..980338fcd 100644 --- a/dist/cleanup/index.js +++ b/dist/cleanup/index.js @@ -87891,11 +87891,13 @@ function getVersionFromFileContent(content, distributionName, versionFile) { var _a, _b, _c, _d, _e; let javaVersionRegExp; if (versionFile == '.tool-versions') { - javaVersionRegExp = /^java\s+(\S+)/m; + javaVersionRegExp = + /^java\s+(?:\S+-)?v?(?(\d+)(\.\d+)?(\.\d+)?(\+\d+)?(-ea(\.\d+)?)?)$/m; core.info(`Using .tool-versions file regx: ${javaVersionRegExp}`); } else if (versionFile == '.java-version') { javaVersionRegExp = /(?(?<=(^|\s|-))(\d+\S*))(\s|$)/; + core.info(`Using .java-version file regx: ${javaVersionRegExp}`); } else { throw new Error('Invalid version file'); diff --git a/dist/setup/index.js b/dist/setup/index.js index b94e2f90a..e9da8b21f 100644 --- a/dist/setup/index.js +++ b/dist/setup/index.js @@ -125265,11 +125265,13 @@ function getVersionFromFileContent(content, distributionName, versionFile) { var _a, _b, _c, _d, _e; let javaVersionRegExp; if (versionFile == '.tool-versions') { - javaVersionRegExp = /^java\s+(\S+)/m; + javaVersionRegExp = + /^java\s+(?:\S+-)?v?(?(\d+)(\.\d+)?(\.\d+)?(\+\d+)?(-ea(\.\d+)?)?)$/m; core.info(`Using .tool-versions file regx: ${javaVersionRegExp}`); } else if (versionFile == '.java-version') { javaVersionRegExp = /(?(?<=(^|\s|-))(\d+\S*))(\s|$)/; + core.info(`Using .java-version file regx: ${javaVersionRegExp}`); } else { throw new Error('Invalid version file'); diff --git a/src/util.ts b/src/util.ts index 52248d9a5..3f8680d97 100644 --- a/src/util.ts +++ b/src/util.ts @@ -120,10 +120,12 @@ export function getVersionFromFileContent( ): string | null { let javaVersionRegExp: RegExp; if (versionFile == '.tool-versions') { - javaVersionRegExp = /^java\s+(\S+)/m; + javaVersionRegExp = + /^java\s+(?:\S+-)?v?(?(\d+)(\.\d+)?(\.\d+)?(\+\d+)?(-ea(\.\d+)?)?)$/m; core.info(`Using .tool-versions file regx: ${javaVersionRegExp}`); } else if (versionFile == '.java-version') { javaVersionRegExp = /(?(?<=(^|\s|-))(\d+\S*))(\s|$)/; + core.info(`Using .java-version file regx: ${javaVersionRegExp}`); } else { throw new Error('Invalid version file'); } From 5633ed7ce0e061239174404acd1b2d7ba40ee1df Mon Sep 17 00:00:00 2001 From: mahabaleshwars Date: Fri, 8 Mar 2024 12:26:41 +0530 Subject: [PATCH 16/29] new regex --- dist/cleanup/index.js | 4 +--- dist/setup/index.js | 4 +--- src/util.ts | 4 +--- 3 files changed, 3 insertions(+), 9 deletions(-) diff --git a/dist/cleanup/index.js b/dist/cleanup/index.js index 980338fcd..03b4b5f7a 100644 --- a/dist/cleanup/index.js +++ b/dist/cleanup/index.js @@ -87892,12 +87892,10 @@ function getVersionFromFileContent(content, distributionName, versionFile) { let javaVersionRegExp; if (versionFile == '.tool-versions') { javaVersionRegExp = - /^java\s+(?:\S+-)?v?(?(\d+)(\.\d+)?(\.\d+)?(\+\d+)?(-ea(\.\d+)?)?)$/m; - core.info(`Using .tool-versions file regx: ${javaVersionRegExp}`); + /^java\s+(?:\S+-)?v?((\d+)(\.\d+)?(\.\d+)?(\.\d+)?(\+\d+)?(-ea(\.\d+)?)?)$/m; } else if (versionFile == '.java-version') { javaVersionRegExp = /(?(?<=(^|\s|-))(\d+\S*))(\s|$)/; - core.info(`Using .java-version file regx: ${javaVersionRegExp}`); } else { throw new Error('Invalid version file'); diff --git a/dist/setup/index.js b/dist/setup/index.js index e9da8b21f..bf40a1cac 100644 --- a/dist/setup/index.js +++ b/dist/setup/index.js @@ -125266,12 +125266,10 @@ function getVersionFromFileContent(content, distributionName, versionFile) { let javaVersionRegExp; if (versionFile == '.tool-versions') { javaVersionRegExp = - /^java\s+(?:\S+-)?v?(?(\d+)(\.\d+)?(\.\d+)?(\+\d+)?(-ea(\.\d+)?)?)$/m; - core.info(`Using .tool-versions file regx: ${javaVersionRegExp}`); + /^java\s+(?:\S+-)?v?((\d+)(\.\d+)?(\.\d+)?(\.\d+)?(\+\d+)?(-ea(\.\d+)?)?)$/m; } else if (versionFile == '.java-version') { javaVersionRegExp = /(?(?<=(^|\s|-))(\d+\S*))(\s|$)/; - core.info(`Using .java-version file regx: ${javaVersionRegExp}`); } else { throw new Error('Invalid version file'); diff --git a/src/util.ts b/src/util.ts index 3f8680d97..f8f9a907b 100644 --- a/src/util.ts +++ b/src/util.ts @@ -121,11 +121,9 @@ export function getVersionFromFileContent( let javaVersionRegExp: RegExp; if (versionFile == '.tool-versions') { javaVersionRegExp = - /^java\s+(?:\S+-)?v?(?(\d+)(\.\d+)?(\.\d+)?(\+\d+)?(-ea(\.\d+)?)?)$/m; - core.info(`Using .tool-versions file regx: ${javaVersionRegExp}`); + /^java\s+(?:\S+-)?v?((\d+)(\.\d+)?(\.\d+)?(\.\d+)?(\+\d+)?(-ea(\.\d+)?)?)$/m; } else if (versionFile == '.java-version') { javaVersionRegExp = /(?(?<=(^|\s|-))(\d+\S*))(\s|$)/; - core.info(`Using .java-version file regx: ${javaVersionRegExp}`); } else { throw new Error('Invalid version file'); } From 0bd564a691b3fe66c584b321ac9e1be828b8e73e Mon Sep 17 00:00:00 2001 From: mahabaleshwars Date: Fri, 8 Mar 2024 12:42:45 +0530 Subject: [PATCH 17/29] changed the regex --- dist/cleanup/index.js | 3 +-- dist/setup/index.js | 3 +-- src/util.ts | 3 +-- 3 files changed, 3 insertions(+), 6 deletions(-) diff --git a/dist/cleanup/index.js b/dist/cleanup/index.js index 03b4b5f7a..f09c0b50e 100644 --- a/dist/cleanup/index.js +++ b/dist/cleanup/index.js @@ -87891,8 +87891,7 @@ function getVersionFromFileContent(content, distributionName, versionFile) { var _a, _b, _c, _d, _e; let javaVersionRegExp; if (versionFile == '.tool-versions') { - javaVersionRegExp = - /^java\s+(?:\S+-)?v?((\d+)(\.\d+)?(\.\d+)?(\.\d+)?(\+\d+)?(-ea(\.\d+)?)?)$/m; + javaVersionRegExp = /^java\s+(?:\S+-)?v?((\d+)(\.\d+)?(\.\d+)?(\.\d+)?(\+\d+)?(-ea)?(\.\d+)?)$/m; } else if (versionFile == '.java-version') { javaVersionRegExp = /(?(?<=(^|\s|-))(\d+\S*))(\s|$)/; diff --git a/dist/setup/index.js b/dist/setup/index.js index bf40a1cac..5138fc261 100644 --- a/dist/setup/index.js +++ b/dist/setup/index.js @@ -125265,8 +125265,7 @@ function getVersionFromFileContent(content, distributionName, versionFile) { var _a, _b, _c, _d, _e; let javaVersionRegExp; if (versionFile == '.tool-versions') { - javaVersionRegExp = - /^java\s+(?:\S+-)?v?((\d+)(\.\d+)?(\.\d+)?(\.\d+)?(\+\d+)?(-ea(\.\d+)?)?)$/m; + javaVersionRegExp = /^java\s+(?:\S+-)?v?((\d+)(\.\d+)?(\.\d+)?(\.\d+)?(\+\d+)?(-ea)?(\.\d+)?)$/m; } else if (versionFile == '.java-version') { javaVersionRegExp = /(?(?<=(^|\s|-))(\d+\S*))(\s|$)/; diff --git a/src/util.ts b/src/util.ts index f8f9a907b..fa2fa02fd 100644 --- a/src/util.ts +++ b/src/util.ts @@ -120,8 +120,7 @@ export function getVersionFromFileContent( ): string | null { let javaVersionRegExp: RegExp; if (versionFile == '.tool-versions') { - javaVersionRegExp = - /^java\s+(?:\S+-)?v?((\d+)(\.\d+)?(\.\d+)?(\.\d+)?(\+\d+)?(-ea(\.\d+)?)?)$/m; + javaVersionRegExp = /^java\s+(?:\S+-)?v?((\d+)(\.\d+)?(\.\d+)?(\.\d+)?(\+\d+)?(-ea)?(\.\d+)?)$/m; } else if (versionFile == '.java-version') { javaVersionRegExp = /(?(?<=(^|\s|-))(\d+\S*))(\s|$)/; } else { From dc078972feeb5d820d7f9224806b941e0157511e Mon Sep 17 00:00:00 2001 From: mahabaleshwars Date: Fri, 8 Mar 2024 12:54:24 +0530 Subject: [PATCH 18/29] redex updated --- dist/cleanup/index.js | 2 +- dist/setup/index.js | 2 +- src/util.ts | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/dist/cleanup/index.js b/dist/cleanup/index.js index f09c0b50e..c7204e6ac 100644 --- a/dist/cleanup/index.js +++ b/dist/cleanup/index.js @@ -87891,7 +87891,7 @@ function getVersionFromFileContent(content, distributionName, versionFile) { var _a, _b, _c, _d, _e; let javaVersionRegExp; if (versionFile == '.tool-versions') { - javaVersionRegExp = /^java\s+(?:\S+-)?v?((\d+)(\.\d+)?(\.\d+)?(\.\d+)?(\+\d+)?(-ea)?(\.\d+)?)$/m; + javaVersionRegExp = /^java\s+(?:\S+-)?v?((\d+)(\.\d+)?(\.\d+)?(\.\d+)?(\+\d+)?(-ea)?(\d*)?)$/m; } else if (versionFile == '.java-version') { javaVersionRegExp = /(?(?<=(^|\s|-))(\d+\S*))(\s|$)/; diff --git a/dist/setup/index.js b/dist/setup/index.js index 5138fc261..10d529485 100644 --- a/dist/setup/index.js +++ b/dist/setup/index.js @@ -125265,7 +125265,7 @@ function getVersionFromFileContent(content, distributionName, versionFile) { var _a, _b, _c, _d, _e; let javaVersionRegExp; if (versionFile == '.tool-versions') { - javaVersionRegExp = /^java\s+(?:\S+-)?v?((\d+)(\.\d+)?(\.\d+)?(\.\d+)?(\+\d+)?(-ea)?(\.\d+)?)$/m; + javaVersionRegExp = /^java\s+(?:\S+-)?v?((\d+)(\.\d+)?(\.\d+)?(\.\d+)?(\+\d+)?(-ea)?(\d*)?)$/m; } else if (versionFile == '.java-version') { javaVersionRegExp = /(?(?<=(^|\s|-))(\d+\S*))(\s|$)/; diff --git a/src/util.ts b/src/util.ts index fa2fa02fd..6f2ff6eb7 100644 --- a/src/util.ts +++ b/src/util.ts @@ -120,7 +120,7 @@ export function getVersionFromFileContent( ): string | null { let javaVersionRegExp: RegExp; if (versionFile == '.tool-versions') { - javaVersionRegExp = /^java\s+(?:\S+-)?v?((\d+)(\.\d+)?(\.\d+)?(\.\d+)?(\+\d+)?(-ea)?(\.\d+)?)$/m; + javaVersionRegExp = /^java\s+(?:\S+-)?v?((\d+)(\.\d+)?(\.\d+)?(\.\d+)?(\+\d+)?(-ea)?(\d*)?)$/m; } else if (versionFile == '.java-version') { javaVersionRegExp = /(?(?<=(^|\s|-))(\d+\S*))(\s|$)/; } else { From ac5ac98c3775cba766f96a742853cf3ef28bf736 Mon Sep 17 00:00:00 2001 From: mahabaleshwars Date: Fri, 8 Mar 2024 12:56:45 +0530 Subject: [PATCH 19/29] used java version regex --- dist/cleanup/index.js | 2 +- dist/setup/index.js | 2 +- src/util.ts | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/dist/cleanup/index.js b/dist/cleanup/index.js index c7204e6ac..6d68e3c6d 100644 --- a/dist/cleanup/index.js +++ b/dist/cleanup/index.js @@ -87891,7 +87891,7 @@ function getVersionFromFileContent(content, distributionName, versionFile) { var _a, _b, _c, _d, _e; let javaVersionRegExp; if (versionFile == '.tool-versions') { - javaVersionRegExp = /^java\s+(?:\S+-)?v?((\d+)(\.\d+)?(\.\d+)?(\.\d+)?(\+\d+)?(-ea)?(\d*)?)$/m; + javaVersionRegExp = /^java\s(?(?<=(^|\s|-))(\d+\S*))(\s|$)/; } else if (versionFile == '.java-version') { javaVersionRegExp = /(?(?<=(^|\s|-))(\d+\S*))(\s|$)/; diff --git a/dist/setup/index.js b/dist/setup/index.js index 10d529485..69e991dca 100644 --- a/dist/setup/index.js +++ b/dist/setup/index.js @@ -125265,7 +125265,7 @@ function getVersionFromFileContent(content, distributionName, versionFile) { var _a, _b, _c, _d, _e; let javaVersionRegExp; if (versionFile == '.tool-versions') { - javaVersionRegExp = /^java\s+(?:\S+-)?v?((\d+)(\.\d+)?(\.\d+)?(\.\d+)?(\+\d+)?(-ea)?(\d*)?)$/m; + javaVersionRegExp = /^java\s(?(?<=(^|\s|-))(\d+\S*))(\s|$)/; } else if (versionFile == '.java-version') { javaVersionRegExp = /(?(?<=(^|\s|-))(\d+\S*))(\s|$)/; diff --git a/src/util.ts b/src/util.ts index 6f2ff6eb7..15dcbdd9e 100644 --- a/src/util.ts +++ b/src/util.ts @@ -120,7 +120,7 @@ export function getVersionFromFileContent( ): string | null { let javaVersionRegExp: RegExp; if (versionFile == '.tool-versions') { - javaVersionRegExp = /^java\s+(?:\S+-)?v?((\d+)(\.\d+)?(\.\d+)?(\.\d+)?(\+\d+)?(-ea)?(\d*)?)$/m; + javaVersionRegExp = /^java\s(?(?<=(^|\s|-))(\d+\S*))(\s|$)/; } else if (versionFile == '.java-version') { javaVersionRegExp = /(?(?<=(^|\s|-))(\d+\S*))(\s|$)/; } else { From 00ea4e377e563d7f5b8b0f2f0e2fc7c66edcd40a Mon Sep 17 00:00:00 2001 From: mahabaleshwars Date: Fri, 8 Mar 2024 14:21:54 +0530 Subject: [PATCH 20/29] regex updated --- dist/cleanup/index.js | 2 +- dist/setup/index.js | 2 +- src/util.ts | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/dist/cleanup/index.js b/dist/cleanup/index.js index 6d68e3c6d..654cf8d78 100644 --- a/dist/cleanup/index.js +++ b/dist/cleanup/index.js @@ -87891,7 +87891,7 @@ function getVersionFromFileContent(content, distributionName, versionFile) { var _a, _b, _c, _d, _e; let javaVersionRegExp; if (versionFile == '.tool-versions') { - javaVersionRegExp = /^java\s(?(?<=(^|\s|-))(\d+\S*))(\s|$)/; + javaVersionRegExp = /^java\s(?(\d+(-ea)?))(\s|$)/; } else if (versionFile == '.java-version') { javaVersionRegExp = /(?(?<=(^|\s|-))(\d+\S*))(\s|$)/; diff --git a/dist/setup/index.js b/dist/setup/index.js index 69e991dca..59629a689 100644 --- a/dist/setup/index.js +++ b/dist/setup/index.js @@ -125265,7 +125265,7 @@ function getVersionFromFileContent(content, distributionName, versionFile) { var _a, _b, _c, _d, _e; let javaVersionRegExp; if (versionFile == '.tool-versions') { - javaVersionRegExp = /^java\s(?(?<=(^|\s|-))(\d+\S*))(\s|$)/; + javaVersionRegExp = /^java\s(?(\d+(-ea)?))(\s|$)/; } else if (versionFile == '.java-version') { javaVersionRegExp = /(?(?<=(^|\s|-))(\d+\S*))(\s|$)/; diff --git a/src/util.ts b/src/util.ts index 15dcbdd9e..9da5370aa 100644 --- a/src/util.ts +++ b/src/util.ts @@ -120,7 +120,7 @@ export function getVersionFromFileContent( ): string | null { let javaVersionRegExp: RegExp; if (versionFile == '.tool-versions') { - javaVersionRegExp = /^java\s(?(?<=(^|\s|-))(\d+\S*))(\s|$)/; + javaVersionRegExp = /^java\s(?(\d+(-ea)?))(\s|$)/; } else if (versionFile == '.java-version') { javaVersionRegExp = /(?(?<=(^|\s|-))(\d+\S*))(\s|$)/; } else { From 3a444404592ebfe47b2e1ec60c8cb9b5d146e260 Mon Sep 17 00:00:00 2001 From: mahabaleshwars Date: Fri, 8 Mar 2024 15:52:28 +0530 Subject: [PATCH 21/29] regex modified --- dist/cleanup/index.js | 3 ++- dist/setup/index.js | 3 ++- src/util.ts | 3 ++- 3 files changed, 6 insertions(+), 3 deletions(-) diff --git a/dist/cleanup/index.js b/dist/cleanup/index.js index 654cf8d78..d0380eb1c 100644 --- a/dist/cleanup/index.js +++ b/dist/cleanup/index.js @@ -87891,7 +87891,8 @@ function getVersionFromFileContent(content, distributionName, versionFile) { var _a, _b, _c, _d, _e; let javaVersionRegExp; if (versionFile == '.tool-versions') { - javaVersionRegExp = /^java\s(?(\d+(-ea)?))(\s|$)/; + javaVersionRegExp = + /^(java\s+)?v?(?(\d+)(\.\d+)?(\.\d+)?(\+\d+)?(-ea(\.\d+)?)?)$/m; } else if (versionFile == '.java-version') { javaVersionRegExp = /(?(?<=(^|\s|-))(\d+\S*))(\s|$)/; diff --git a/dist/setup/index.js b/dist/setup/index.js index 59629a689..432e57ad9 100644 --- a/dist/setup/index.js +++ b/dist/setup/index.js @@ -125265,7 +125265,8 @@ function getVersionFromFileContent(content, distributionName, versionFile) { var _a, _b, _c, _d, _e; let javaVersionRegExp; if (versionFile == '.tool-versions') { - javaVersionRegExp = /^java\s(?(\d+(-ea)?))(\s|$)/; + javaVersionRegExp = + /^(java\s+)?v?(?(\d+)(\.\d+)?(\.\d+)?(\+\d+)?(-ea(\.\d+)?)?)$/m; } else if (versionFile == '.java-version') { javaVersionRegExp = /(?(?<=(^|\s|-))(\d+\S*))(\s|$)/; diff --git a/src/util.ts b/src/util.ts index 9da5370aa..b0d79877c 100644 --- a/src/util.ts +++ b/src/util.ts @@ -120,7 +120,8 @@ export function getVersionFromFileContent( ): string | null { let javaVersionRegExp: RegExp; if (versionFile == '.tool-versions') { - javaVersionRegExp = /^java\s(?(\d+(-ea)?))(\s|$)/; + javaVersionRegExp = + /^(java\s+)?v?(?(\d+)(\.\d+)?(\.\d+)?(\+\d+)?(-ea(\.\d+)?)?)$/m; } else if (versionFile == '.java-version') { javaVersionRegExp = /(?(?<=(^|\s|-))(\d+\S*))(\s|$)/; } else { From ae1e7f4bee71eeaede3fd6afed53708dd47987c8 Mon Sep 17 00:00:00 2001 From: mahabaleshwars Date: Fri, 8 Mar 2024 16:31:59 +0530 Subject: [PATCH 22/29] regex updated --- dist/cleanup/index.js | 2 +- dist/setup/index.js | 2 +- src/util.ts | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/dist/cleanup/index.js b/dist/cleanup/index.js index d0380eb1c..1f608d15f 100644 --- a/dist/cleanup/index.js +++ b/dist/cleanup/index.js @@ -87892,7 +87892,7 @@ function getVersionFromFileContent(content, distributionName, versionFile) { let javaVersionRegExp; if (versionFile == '.tool-versions') { javaVersionRegExp = - /^(java\s+)?v?(?(\d+)(\.\d+)?(\.\d+)?(\+\d+)?(-ea(\.\d+)?)?)$/m; + /^(java\s+)(?:\S+-)v?(?(\d+)(\.\d+)?(\.\d+)?(\+\d+)?(-ea(\.\d+)?)?)$/m; } else if (versionFile == '.java-version') { javaVersionRegExp = /(?(?<=(^|\s|-))(\d+\S*))(\s|$)/; diff --git a/dist/setup/index.js b/dist/setup/index.js index 432e57ad9..60fa6ec4a 100644 --- a/dist/setup/index.js +++ b/dist/setup/index.js @@ -125266,7 +125266,7 @@ function getVersionFromFileContent(content, distributionName, versionFile) { let javaVersionRegExp; if (versionFile == '.tool-versions') { javaVersionRegExp = - /^(java\s+)?v?(?(\d+)(\.\d+)?(\.\d+)?(\+\d+)?(-ea(\.\d+)?)?)$/m; + /^(java\s+)(?:\S+-)v?(?(\d+)(\.\d+)?(\.\d+)?(\+\d+)?(-ea(\.\d+)?)?)$/m; } else if (versionFile == '.java-version') { javaVersionRegExp = /(?(?<=(^|\s|-))(\d+\S*))(\s|$)/; diff --git a/src/util.ts b/src/util.ts index b0d79877c..8505df1be 100644 --- a/src/util.ts +++ b/src/util.ts @@ -121,7 +121,7 @@ export function getVersionFromFileContent( let javaVersionRegExp: RegExp; if (versionFile == '.tool-versions') { javaVersionRegExp = - /^(java\s+)?v?(?(\d+)(\.\d+)?(\.\d+)?(\+\d+)?(-ea(\.\d+)?)?)$/m; + /^(java\s+)(?:\S+-)v?(?(\d+)(\.\d+)?(\.\d+)?(\+\d+)?(-ea(\.\d+)?)?)$/m; } else if (versionFile == '.java-version') { javaVersionRegExp = /(?(?<=(^|\s|-))(\d+\S*))(\s|$)/; } else { From 4ef246eff9194efd4ff6d4bc45848ba9e5461803 Mon Sep 17 00:00:00 2001 From: mahabaleshwars Date: Fri, 8 Mar 2024 16:38:03 +0530 Subject: [PATCH 23/29] regex updated --- dist/cleanup/index.js | 2 +- dist/setup/index.js | 2 +- src/util.ts | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/dist/cleanup/index.js b/dist/cleanup/index.js index 1f608d15f..551e36a8a 100644 --- a/dist/cleanup/index.js +++ b/dist/cleanup/index.js @@ -87892,7 +87892,7 @@ function getVersionFromFileContent(content, distributionName, versionFile) { let javaVersionRegExp; if (versionFile == '.tool-versions') { javaVersionRegExp = - /^(java\s+)(?:\S+-)v?(?(\d+)(\.\d+)?(\.\d+)?(\+\d+)?(-ea(\.\d+)?)?)$/m; + /^(java\s+)(?:\S+-?)v?(?(\d+)(\.\d+)?(\.\d+)?(\+\d+)?(-ea(\.\d+)?)?)$/m; } else if (versionFile == '.java-version') { javaVersionRegExp = /(?(?<=(^|\s|-))(\d+\S*))(\s|$)/; diff --git a/dist/setup/index.js b/dist/setup/index.js index 60fa6ec4a..70a5135f9 100644 --- a/dist/setup/index.js +++ b/dist/setup/index.js @@ -125266,7 +125266,7 @@ function getVersionFromFileContent(content, distributionName, versionFile) { let javaVersionRegExp; if (versionFile == '.tool-versions') { javaVersionRegExp = - /^(java\s+)(?:\S+-)v?(?(\d+)(\.\d+)?(\.\d+)?(\+\d+)?(-ea(\.\d+)?)?)$/m; + /^(java\s+)(?:\S+-?)v?(?(\d+)(\.\d+)?(\.\d+)?(\+\d+)?(-ea(\.\d+)?)?)$/m; } else if (versionFile == '.java-version') { javaVersionRegExp = /(?(?<=(^|\s|-))(\d+\S*))(\s|$)/; diff --git a/src/util.ts b/src/util.ts index 8505df1be..2789ee5cb 100644 --- a/src/util.ts +++ b/src/util.ts @@ -121,7 +121,7 @@ export function getVersionFromFileContent( let javaVersionRegExp: RegExp; if (versionFile == '.tool-versions') { javaVersionRegExp = - /^(java\s+)(?:\S+-)v?(?(\d+)(\.\d+)?(\.\d+)?(\+\d+)?(-ea(\.\d+)?)?)$/m; + /^(java\s+)(?:\S+-?)v?(?(\d+)(\.\d+)?(\.\d+)?(\+\d+)?(-ea(\.\d+)?)?)$/m; } else if (versionFile == '.java-version') { javaVersionRegExp = /(?(?<=(^|\s|-))(\d+\S*))(\s|$)/; } else { From 8c268be5a022744444e6f99167738ace0f927482 Mon Sep 17 00:00:00 2001 From: mahabaleshwars Date: Fri, 8 Mar 2024 16:44:07 +0530 Subject: [PATCH 24/29] regex updated --- dist/cleanup/index.js | 2 +- dist/setup/index.js | 2 +- src/util.ts | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/dist/cleanup/index.js b/dist/cleanup/index.js index 551e36a8a..aea784364 100644 --- a/dist/cleanup/index.js +++ b/dist/cleanup/index.js @@ -87892,7 +87892,7 @@ function getVersionFromFileContent(content, distributionName, versionFile) { let javaVersionRegExp; if (versionFile == '.tool-versions') { javaVersionRegExp = - /^(java\s+)(?:\S+-?)v?(?(\d+)(\.\d+)?(\.\d+)?(\+\d+)?(-ea(\.\d+)?)?)$/m; + /^(java\s+)(?:\S*-)?v?(?(\d+)(\.\d+)?(\.\d+)?(\+\d+)?(-ea(\.\d+)?)?)$/m; } else if (versionFile == '.java-version') { javaVersionRegExp = /(?(?<=(^|\s|-))(\d+\S*))(\s|$)/; diff --git a/dist/setup/index.js b/dist/setup/index.js index 70a5135f9..612c98745 100644 --- a/dist/setup/index.js +++ b/dist/setup/index.js @@ -125266,7 +125266,7 @@ function getVersionFromFileContent(content, distributionName, versionFile) { let javaVersionRegExp; if (versionFile == '.tool-versions') { javaVersionRegExp = - /^(java\s+)(?:\S+-?)v?(?(\d+)(\.\d+)?(\.\d+)?(\+\d+)?(-ea(\.\d+)?)?)$/m; + /^(java\s+)(?:\S*-)?v?(?(\d+)(\.\d+)?(\.\d+)?(\+\d+)?(-ea(\.\d+)?)?)$/m; } else if (versionFile == '.java-version') { javaVersionRegExp = /(?(?<=(^|\s|-))(\d+\S*))(\s|$)/; diff --git a/src/util.ts b/src/util.ts index 2789ee5cb..e02cea6d9 100644 --- a/src/util.ts +++ b/src/util.ts @@ -121,7 +121,7 @@ export function getVersionFromFileContent( let javaVersionRegExp: RegExp; if (versionFile == '.tool-versions') { javaVersionRegExp = - /^(java\s+)(?:\S+-?)v?(?(\d+)(\.\d+)?(\.\d+)?(\+\d+)?(-ea(\.\d+)?)?)$/m; + /^(java\s+)(?:\S*-)?v?(?(\d+)(\.\d+)?(\.\d+)?(\+\d+)?(-ea(\.\d+)?)?)$/m; } else if (versionFile == '.java-version') { javaVersionRegExp = /(?(?<=(^|\s|-))(\d+\S*))(\s|$)/; } else { From c5831e86e5ce54dd8451d08e0dff3776a86afe47 Mon Sep 17 00:00:00 2001 From: mahabaleshwars Date: Fri, 8 Mar 2024 17:51:33 +0530 Subject: [PATCH 25/29] updated regex to support early versions --- dist/cleanup/index.js | 2 +- dist/setup/index.js | 2 +- src/util.ts | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/dist/cleanup/index.js b/dist/cleanup/index.js index aea784364..cec12e272 100644 --- a/dist/cleanup/index.js +++ b/dist/cleanup/index.js @@ -87892,7 +87892,7 @@ function getVersionFromFileContent(content, distributionName, versionFile) { let javaVersionRegExp; if (versionFile == '.tool-versions') { javaVersionRegExp = - /^(java\s+)(?:\S*-)?v?(?(\d+)(\.\d+)?(\.\d+)?(\+\d+)?(-ea(\.\d+)?)?)$/m; + /^(java\s+)(?:\S*-)?v?(?(\d+)(\.\d+)?(\.\d+)?(\+\d+)?(-ea)?)$/m; } else if (versionFile == '.java-version') { javaVersionRegExp = /(?(?<=(^|\s|-))(\d+\S*))(\s|$)/; diff --git a/dist/setup/index.js b/dist/setup/index.js index 612c98745..0ce8defb2 100644 --- a/dist/setup/index.js +++ b/dist/setup/index.js @@ -125266,7 +125266,7 @@ function getVersionFromFileContent(content, distributionName, versionFile) { let javaVersionRegExp; if (versionFile == '.tool-versions') { javaVersionRegExp = - /^(java\s+)(?:\S*-)?v?(?(\d+)(\.\d+)?(\.\d+)?(\+\d+)?(-ea(\.\d+)?)?)$/m; + /^(java\s+)(?:\S*-)?v?(?(\d+)(\.\d+)?(\.\d+)?(\+\d+)?(-ea)?)$/m; } else if (versionFile == '.java-version') { javaVersionRegExp = /(?(?<=(^|\s|-))(\d+\S*))(\s|$)/; diff --git a/src/util.ts b/src/util.ts index e02cea6d9..6a7f7bf63 100644 --- a/src/util.ts +++ b/src/util.ts @@ -121,7 +121,7 @@ export function getVersionFromFileContent( let javaVersionRegExp: RegExp; if (versionFile == '.tool-versions') { javaVersionRegExp = - /^(java\s+)(?:\S*-)?v?(?(\d+)(\.\d+)?(\.\d+)?(\+\d+)?(-ea(\.\d+)?)?)$/m; + /^(java\s+)(?:\S*-)?v?(?(\d+)(\.\d+)?(\.\d+)?(\+\d+)?(-ea)?)$/m; } else if (versionFile == '.java-version') { javaVersionRegExp = /(?(?<=(^|\s|-))(\d+\S*))(\s|$)/; } else { From 0d65cdab906b5fef776ec0bb09338d73ae6d91c2 Mon Sep 17 00:00:00 2001 From: mahabaleshwars Date: Fri, 8 Mar 2024 17:55:32 +0530 Subject: [PATCH 26/29] Regex updated to support all java versions --- dist/cleanup/index.js | 2 +- dist/setup/index.js | 2 +- src/util.ts | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/dist/cleanup/index.js b/dist/cleanup/index.js index cec12e272..aea784364 100644 --- a/dist/cleanup/index.js +++ b/dist/cleanup/index.js @@ -87892,7 +87892,7 @@ function getVersionFromFileContent(content, distributionName, versionFile) { let javaVersionRegExp; if (versionFile == '.tool-versions') { javaVersionRegExp = - /^(java\s+)(?:\S*-)?v?(?(\d+)(\.\d+)?(\.\d+)?(\+\d+)?(-ea)?)$/m; + /^(java\s+)(?:\S*-)?v?(?(\d+)(\.\d+)?(\.\d+)?(\+\d+)?(-ea(\.\d+)?)?)$/m; } else if (versionFile == '.java-version') { javaVersionRegExp = /(?(?<=(^|\s|-))(\d+\S*))(\s|$)/; diff --git a/dist/setup/index.js b/dist/setup/index.js index 0ce8defb2..612c98745 100644 --- a/dist/setup/index.js +++ b/dist/setup/index.js @@ -125266,7 +125266,7 @@ function getVersionFromFileContent(content, distributionName, versionFile) { let javaVersionRegExp; if (versionFile == '.tool-versions') { javaVersionRegExp = - /^(java\s+)(?:\S*-)?v?(?(\d+)(\.\d+)?(\.\d+)?(\+\d+)?(-ea)?)$/m; + /^(java\s+)(?:\S*-)?v?(?(\d+)(\.\d+)?(\.\d+)?(\+\d+)?(-ea(\.\d+)?)?)$/m; } else if (versionFile == '.java-version') { javaVersionRegExp = /(?(?<=(^|\s|-))(\d+\S*))(\s|$)/; diff --git a/src/util.ts b/src/util.ts index 6a7f7bf63..e02cea6d9 100644 --- a/src/util.ts +++ b/src/util.ts @@ -121,7 +121,7 @@ export function getVersionFromFileContent( let javaVersionRegExp: RegExp; if (versionFile == '.tool-versions') { javaVersionRegExp = - /^(java\s+)(?:\S*-)?v?(?(\d+)(\.\d+)?(\.\d+)?(\+\d+)?(-ea)?)$/m; + /^(java\s+)(?:\S*-)?v?(?(\d+)(\.\d+)?(\.\d+)?(\+\d+)?(-ea(\.\d+)?)?)$/m; } else if (versionFile == '.java-version') { javaVersionRegExp = /(?(?<=(^|\s|-))(\d+\S*))(\s|$)/; } else { From 4253d87ec0784b941f908fc09b87ef5c68142bce Mon Sep 17 00:00:00 2001 From: mahabaleshwars Date: Mon, 11 Mar 2024 18:59:42 +0530 Subject: [PATCH 27/29] Documentation updated to add tool version description --- docs/advanced-usage.md | 3 +++ 1 file changed, 3 insertions(+) diff --git a/docs/advanced-usage.md b/docs/advanced-usage.md index ede356f93..8262eedc7 100644 --- a/docs/advanced-usage.md +++ b/docs/advanced-usage.md @@ -528,6 +528,9 @@ steps: ## Java-version file If the `java-version-file` input is specified, the action will try to extract the version from the file and install it. Action is able to recognize all variants of the version description according to [jenv](https://github.com/jenv/jenv). +If both the java-version and the java-version-file inputs are provided then the java-version input is used. +.java-version and .tool-versions are the supported file.In .java-version file, only version should be specified e.g “17.0.7 ”while in .tool-versions file, java version should be followed java keyword e.g “java 17.0.7”. + Valid entry options: ``` major versions: 8, 11, 16, 17, 21 From 33cfd28cb4f4d3ddad2085f32852b1d8a6b56fc9 Mon Sep 17 00:00:00 2001 From: mahabaleshwars Date: Tue, 12 Mar 2024 12:13:51 +0530 Subject: [PATCH 28/29] Documentation updated for the tool version file --- docs/advanced-usage.md | 13 ++++++++----- 1 file changed, 8 insertions(+), 5 deletions(-) diff --git a/docs/advanced-usage.md b/docs/advanced-usage.md index 8262eedc7..e50190fe3 100644 --- a/docs/advanced-usage.md +++ b/docs/advanced-usage.md @@ -526,16 +526,19 @@ steps: ``` ## Java-version file -If the `java-version-file` input is specified, the action will try to extract the version from the file and install it. -Action is able to recognize all variants of the version description according to [jenv](https://github.com/jenv/jenv). -If both the java-version and the java-version-file inputs are provided then the java-version input is used. -.java-version and .tool-versions are the supported file.In .java-version file, only version should be specified e.g “17.0.7 ”while in .tool-versions file, java version should be followed java keyword e.g “java 17.0.7”. +If the `java-version-file` input is specified, the action will extract the version from the file and install it. +It recognizes all variants of the version description according to [jenv](https://github.com/jenv/jenv). + +Supported files are .java-version and .tool-versions. +In .java-version file, only the version should be specified, e.g., 17.0.7. +In .tool-versions file, java version should be preceded by the java keyword, e.g., java 17.0.7. +If both java-version and java-version-file inputs are provided, the java-version input will be used. Valid entry options: ``` major versions: 8, 11, 16, 17, 21 more specific versions: 1.8.0.2, 17.0, 11.0, 11.0.4, 8.0.232, 8.0.282+8 -early access (EA) versions: 15-ea, 15.0.0-ea, 15.0.0-ea.2, 15.0.0+2-ea +early access (EA) versions: 15-ea, 15.0.0-ea versions with specified distribution: openjdk64-11.0.2 ``` If the file contains multiple versions, only the first one will be recognized. From b71bea459ab2634eb09f89e411c7796af4a37593 Mon Sep 17 00:00:00 2001 From: mahabaleshwars Date: Tue, 12 Mar 2024 18:19:03 +0530 Subject: [PATCH 29/29] update the advanced doc and readme file to specify tool version changes --- README.md | 3 ++- docs/advanced-usage.md | 5 +++-- 2 files changed, 5 insertions(+), 3 deletions(-) diff --git a/README.md b/README.md index 92425ccaa..a3ac3974e 100644 --- a/README.md +++ b/README.md @@ -27,7 +27,7 @@ This action allows you to work with Java and Scala projects. - `java-version`: The Java version that is going to be set up. Takes a whole or [semver](#supported-version-syntax) Java version. If not specified, the action will expect `java-version-file` input to be specified. - - `java-version-file`: The path to the `.java-version` file. See more details in [about `.java-version` file](docs/advanced-usage.md#Java-version-file). + - `java-version-file`: The path to a file containing java version. Supported file types are `.java-version` and `.tool-versions`. See more details in [about .java-version-file](docs/advanced-usage.md#Java-version-file). - `distribution`: _(required)_ Java [distribution](#supported-distributions). @@ -266,6 +266,7 @@ In the example above multiple JDKs are installed for the same job. The result af - [Publishing using Gradle](docs/advanced-usage.md#Publishing-using-Gradle) - [Hosted Tool Cache](docs/advanced-usage.md#Hosted-Tool-Cache) - [Modifying Maven Toolchains](docs/advanced-usage.md#Modifying-Maven-Toolchains) +- [Java Version File](docs/advanced-usage.md#Java-version-file) ## License diff --git a/docs/advanced-usage.md b/docs/advanced-usage.md index e50190fe3..c3cf42d01 100644 --- a/docs/advanced-usage.md +++ b/docs/advanced-usage.md @@ -525,13 +525,14 @@ steps: something_other ``` -## Java-version file +## Java version file If the `java-version-file` input is specified, the action will extract the version from the file and install it. -It recognizes all variants of the version description according to [jenv](https://github.com/jenv/jenv). Supported files are .java-version and .tool-versions. In .java-version file, only the version should be specified, e.g., 17.0.7. In .tool-versions file, java version should be preceded by the java keyword, e.g., java 17.0.7. +.java-version recognizes all variants of the version description according to [jenv](https://github.com/jenv/jenv) and .tool-version recognizes all variants of the version description according to [asdf](https://github.com/asdf-vm/asdf). + If both java-version and java-version-file inputs are provided, the java-version input will be used. Valid entry options: