From 180ec897237ea03cfb4af7b1643256026bcf1eac Mon Sep 17 00:00:00 2001 From: Simon Garner Date: Wed, 1 Apr 2026 15:28:04 +1300 Subject: [PATCH 1/9] Ignore .idea settings directory --- .gitignore | 2 ++ 1 file changed, 2 insertions(+) diff --git a/.gitignore b/.gitignore index c2658d7d..43be5f14 100644 --- a/.gitignore +++ b/.gitignore @@ -1 +1,3 @@ node_modules/ + +.idea/ From fc98938157f016ec3de97f9e8f8fa3ddceb58686 Mon Sep 17 00:00:00 2001 From: Simon Garner Date: Wed, 1 Apr 2026 15:28:20 +1300 Subject: [PATCH 2/9] Use Node 24 --- .nvmrc | 2 +- action.yml | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/.nvmrc b/.nvmrc index 209e3ef4..a45fd52c 100644 --- a/.nvmrc +++ b/.nvmrc @@ -1 +1 @@ -20 +24 diff --git a/action.yml b/action.yml index a828f3f5..fec3231f 100644 --- a/action.yml +++ b/action.yml @@ -637,7 +637,7 @@ inputs: default: "true" runs: - using: node20 + using: node24 main: ./dist/index.js branding: From 16e6892e63594a5fcaa56091c1276a25bc1866e8 Mon Sep 17 00:00:00 2001 From: Simon Garner Date: Wed, 1 Apr 2026 15:28:37 +1300 Subject: [PATCH 3/9] Update shescape --- package.json | 2 +- yarn.lock | 38 ++++++++++++++++++++++++++++---------- 2 files changed, 29 insertions(+), 11 deletions(-) diff --git a/package.json b/package.json index 227c742c..912c43d8 100644 --- a/package.json +++ b/package.json @@ -19,7 +19,7 @@ "command-exists": "^1.2.9", "glob": "^8.1.0", "parse-diff": "^0.11.0", - "shescape": "^2.1.0" + "shescape": "^2.1.10" }, "peerDependencies": {}, "devDependencies": { diff --git a/yarn.lock b/yarn.lock index 63d31be2..d6046189 100644 --- a/yarn.lock +++ b/yarn.lock @@ -313,6 +313,13 @@ resolved "https://registry.yarnpkg.com/@bcoe/v8-coverage/-/v8-coverage-0.2.3.tgz#75a2e8b51cb758a7553d6804a5932d7aace75c39" integrity sha512-0hYQ8SB4Db5zvZB4axdMHGwEaQjkZzFjQiN9LVYvIFB2nSUHW9tYpxWriPrWDASIxiaXax83REcLxuSdnGPZtw== +"@ericcornelissen/lregexp@^1.0.3": + version "1.0.8" + resolved "https://registry.yarnpkg.com/@ericcornelissen/lregexp/-/lregexp-1.0.8.tgz#fcdc7635138bd8d74f057b4aadd9c1cec070c4ab" + integrity sha512-asaQOkMr8CzYVpmCnBvEe8zejcv8Q1+f3Q1qssOF85njH1VTJfSQUYwwClE41SRdvZmN26uL08GuQk04VN2myA== + dependencies: + is-supported-regexp-flag "^2.0.0" + "@es-joy/jsdoccomment@~0.41.0": version "0.41.0" resolved "https://registry.yarnpkg.com/@es-joy/jsdoccomment/-/jsdoccomment-0.41.0.tgz#4a2f7db42209c0425c71a1476ef1bdb6dcd836f6" @@ -1893,6 +1900,11 @@ is-string@^1.0.5, is-string@^1.0.7: dependencies: has-tostringtag "^1.0.0" +is-supported-regexp-flag@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/is-supported-regexp-flag/-/is-supported-regexp-flag-2.0.0.tgz#abd2dd286ba5f24596d68df6dba52c4e199aba08" + integrity sha512-8i4+OYUjdUaJ88KAs1WojIThDFjIpeYNrSlYy1g/At2p9YjQ7HEmB1yn60un0jRFjM3TQbKPMAluTPEPncZfqA== + is-symbol@^1.0.2, is-symbol@^1.0.3: version "1.0.4" resolved "https://registry.yarnpkg.com/is-symbol/-/is-symbol-1.0.4.tgz#a6dac93b635b063ca6872236de88910a57af139c" @@ -1912,6 +1924,11 @@ isexe@^2.0.0: resolved "https://registry.yarnpkg.com/isexe/-/isexe-2.0.0.tgz#e8fbf374dc556ff8947a10dcb0572d633f2cfa10" integrity sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw== +isexe@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/isexe/-/isexe-4.0.0.tgz#48f6576af8e87a18feb796b7ed5e2e5903b43dca" + integrity sha512-FFUtZMpoZ8RqHS3XeXEmHWLA4thH+ZxCv2lOiPIn1Xc7CxrqhWzNSDzD+/chS/zbYezmiwWLdQC09JdQKmthOw== + istanbul-lib-coverage@^3.0.0, istanbul-lib-coverage@^3.2.0: version "3.2.0" resolved "https://registry.yarnpkg.com/istanbul-lib-coverage/-/istanbul-lib-coverage-3.2.0.tgz#189e7909d0a39fa5a3dfad5b03f71947770191d3" @@ -2847,12 +2864,13 @@ shebang-regex@^3.0.0: resolved "https://registry.yarnpkg.com/shebang-regex/-/shebang-regex-3.0.0.tgz#ae16f1644d873ecad843b0307b143362d4c42172" integrity sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A== -shescape@^2.1.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/shescape/-/shescape-2.1.0.tgz#1b5c2f612418ed6184a720e27f06f0b11fb8300c" - integrity sha512-VFjtoo9Y25/fprhMo+bIb+OAM+mFUP0Veg57Bg973j2RSWEAoNPia5hBY+lYVIra5Nl/6CtlQYmDGWSvA3IWWw== +shescape@^2.1.10: + version "2.1.10" + resolved "https://registry.yarnpkg.com/shescape/-/shescape-2.1.10.tgz#7f786e73ebd0134c5d4581940a795d63701d5922" + integrity sha512-CJvUj3QcmIUqxfSci5x6SjATMbcVPYWnHDPoS6dZeLrB/o0qwPGYyshtylAEKH7eH61WfUYineGz5RJaWXuTbw== dependencies: - which "^3.0.0" + "@ericcornelissen/lregexp" "^1.0.3" + which "^3.0.0 || ^4.0.0 || ^5.0.0 || ^6.0.0" side-channel@^1.0.4: version "1.0.4" @@ -3146,12 +3164,12 @@ which@^2.0.1: dependencies: isexe "^2.0.0" -which@^3.0.0: - version "3.0.1" - resolved "https://registry.yarnpkg.com/which/-/which-3.0.1.tgz#89f1cd0c23f629a8105ffe69b8172791c87b4be1" - integrity sha512-XA1b62dzQzLfaEOSQFTCOd5KFf/1VSzZo7/7TUjnya6u0vGGKzU96UQBZTAThCb2j4/xjBAyii1OhRLJEivHvg== +"which@^3.0.0 || ^4.0.0 || ^5.0.0 || ^6.0.0": + version "6.0.1" + resolved "https://registry.yarnpkg.com/which/-/which-6.0.1.tgz#021642443a198fb93b784a5606721cb18cfcbfce" + integrity sha512-oGLe46MIrCRqX7ytPUf66EAYvdeMIZYn3WaocqqKZAxrBpkqHfL/qvTyJ/bTk5+AqHCjXmrv3CEWgy368zhRUg== dependencies: - isexe "^2.0.0" + isexe "^4.0.0" word-wrap@^1.2.3: version "1.2.3" From b255f199b5be9053a547d690c09cfecb5464a22a Mon Sep 17 00:00:00 2001 From: Simon Garner Date: Wed, 1 Apr 2026 15:41:16 +1300 Subject: [PATCH 4/9] Update build user token secret name --- .github/workflows/build.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index 3c5d8f14..abee597a 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -22,7 +22,7 @@ jobs: uses: actions/checkout@v4 with: # Custom token to allow commits trigger other workflows. - token: ${{ secrets.BUILD_ACTION_GITHUB_TOKEN }} + token: ${{ secrets.BUILD_USER_TOKEN }} - name: Set up Node.js uses: actions/setup-node@v4 From a9433b881f7c4d148cad08f882c2bd7769cdbd29 Mon Sep 17 00:00:00 2001 From: Simon Garner Date: Wed, 1 Apr 2026 15:47:08 +1300 Subject: [PATCH 5/9] Disable ESLint import/no-unresolved rule --- package.json | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/package.json b/package.json index 912c43d8..38c57f15 100644 --- a/package.json +++ b/package.json @@ -64,7 +64,8 @@ "jsdoc/tag-lines": "error", "jsdoc/require-description": "error", "jsdoc/require-hyphen-before-param-description": "error", - "jsdoc/require-jsdoc": "off" + "jsdoc/require-jsdoc": "off", + "import/no-unresolved": "off" } }, "eslintIgnore": [ From 3a22f2ab576df987d5fdac37e1dda838380c40ee Mon Sep 17 00:00:00 2001 From: Simon Garner Date: Wed, 1 Apr 2026 16:44:04 +1300 Subject: [PATCH 6/9] Remove macOS from CI workflow matrix --- .github/workflows/test.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml index ceaf0351..1f50074f 100644 --- a/.github/workflows/test.yml +++ b/.github/workflows/test.yml @@ -25,7 +25,7 @@ jobs: strategy: fail-fast: false matrix: - os: [macos-latest, ubuntu-latest, windows-latest] + os: [ubuntu-latest, windows-latest] steps: - name: Check out Git repository From 80b802a108c5fd2c5985324406c83ebe3a852894 Mon Sep 17 00:00:00 2001 From: Simon Garner Date: Wed, 1 Apr 2026 16:44:32 +1300 Subject: [PATCH 7/9] Remove macOS from CI workflow matrix --- .github/workflows/test-action.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/test-action.yml b/.github/workflows/test-action.yml index 88a1a619..5234aa92 100644 --- a/.github/workflows/test-action.yml +++ b/.github/workflows/test-action.yml @@ -23,7 +23,7 @@ jobs: strategy: fail-fast: false matrix: - os: [ubuntu-latest, windows-latest, macos-latest] + os: [ubuntu-latest, windows-latest] steps: - name: Check out repository (push) From 0ec22cf639fb251d47df1e94a56afb931c95bf1d Mon Sep 17 00:00:00 2001 From: Simon Garner Date: Wed, 1 Apr 2026 21:57:08 +1300 Subject: [PATCH 8/9] Use replaceAll instead of regexp in normalizePaths --- test/test-utils.js | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/test/test-utils.js b/test/test-utils.js index 646450ce..b82cdba8 100644 --- a/test/test-utils.js +++ b/test/test-utils.js @@ -35,8 +35,7 @@ function joinDoubleBackslash(...paths) { */ function normalizePaths(str, path) { const pathToSearch = realpathSync(path); - const pathToSearchEscaped = pathToSearch.replace(/[-/\\^$*+?.()|[\]{}]/g, "\\$&"); - return str.replace(new RegExp(pathToSearchEscaped, "g"), path); + return str.replaceAll(pathToSearch, path); } /** From 0092faa90cf451b54c7dcd57d191136037204f47 Mon Sep 17 00:00:00 2001 From: Simon Garner Date: Wed, 1 Apr 2026 22:13:47 +1300 Subject: [PATCH 9/9] Use basename in normalizePaths --- test/test-utils.js | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/test/test-utils.js b/test/test-utils.js index b82cdba8..ada8d1eb 100644 --- a/test/test-utils.js +++ b/test/test-utils.js @@ -1,5 +1,5 @@ const { mkdtempSync, realpathSync } = require("fs"); -const { join } = require("path"); +const { join, basename } = require("path"); const DATE_REGEX = /\d{4}-\d{2}-\d{2} \d{2}:\d{2}:\d{2}.\d+ ?[+-]\d{2}:?\d{2}/g; const TEST_DATE = "2019-01-01 00:00:00.000000 +0000"; @@ -34,8 +34,7 @@ function joinDoubleBackslash(...paths) { * @returns {string} - Normalized paths */ function normalizePaths(str, path) { - const pathToSearch = realpathSync(path); - return str.replaceAll(pathToSearch, path); + return str.replaceAll(path, basename(path)).replaceAll(realpathSync(path), basename(path)); } /**