From 14379e1be9950ce1dc79551c9986f6927c300ab4 Mon Sep 17 00:00:00 2001 From: Pete Gonzalez <4673363+octogonz@users.noreply.github.com> Date: Fri, 11 Aug 2023 11:31:34 -0700 Subject: [PATCH 01/16] Update heft-webpack4-plugin to print a warning if Node 18 is used without the "--openssl-legacy-provider" workaround --- .../heft-webpack4-plugin/src/Webpack4Plugin.ts | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) diff --git a/heft-plugins/heft-webpack4-plugin/src/Webpack4Plugin.ts b/heft-plugins/heft-webpack4-plugin/src/Webpack4Plugin.ts index d74fc15e186..8090cc21610 100644 --- a/heft-plugins/heft-webpack4-plugin/src/Webpack4Plugin.ts +++ b/heft-plugins/heft-webpack4-plugin/src/Webpack4Plugin.ts @@ -101,6 +101,22 @@ export default class Webpack4Plugin implements IHeftTaskPlugin= 16) { + if (!/(^|[^a-z\-])--openssl-legacy-provider($|[^a-z\-])/.test(process.env.NODE_OPTIONS ?? '')) { + taskSession.logger.emitWarning( + new Error( + `Node.js version ${nodejsMajorVersion} is incompatible with Webpack 4. To work around this problem, use the environment variable NODE_OPTIONS="--openssl-legacy-provider"` + ) + ); + } + } + } else { + taskSession.logger.emitWarning(new Error(`Unable to parse Node.js version "${process.versions.node}"`)); + } + this._isServeMode = taskSession.parameters.getFlagParameter(SERVE_PARAMETER_LONG_NAME).value; if (!taskSession.parameters.watch && this._isServeMode) { throw new Error( From 6c5268e08e10c78a0451650ebe6308694d6068b4 Mon Sep 17 00:00:00 2001 From: Pete Gonzalez <4673363+octogonz@users.noreply.github.com> Date: Fri, 11 Aug 2023 11:32:53 -0700 Subject: [PATCH 02/16] rush change --- .../octogonz-node-18_2023-08-11-18-32.json | 10 ++++++++++ 1 file changed, 10 insertions(+) create mode 100644 common/changes/@rushstack/heft-webpack4-plugin/octogonz-node-18_2023-08-11-18-32.json diff --git a/common/changes/@rushstack/heft-webpack4-plugin/octogonz-node-18_2023-08-11-18-32.json b/common/changes/@rushstack/heft-webpack4-plugin/octogonz-node-18_2023-08-11-18-32.json new file mode 100644 index 00000000000..dedb49067b3 --- /dev/null +++ b/common/changes/@rushstack/heft-webpack4-plugin/octogonz-node-18_2023-08-11-18-32.json @@ -0,0 +1,10 @@ +{ + "changes": [ + { + "packageName": "@rushstack/heft-webpack4-plugin", + "comment": "Display a warning if Node.js 17 or newer is used without the \"--openssl-legacy-provider\" workaround", + "type": "minor" + } + ], + "packageName": "@rushstack/heft-webpack4-plugin" +} \ No newline at end of file From 92a9459cb3ddba8c9cc95e317f0c2adca839af89 Mon Sep 17 00:00:00 2001 From: Pete Gonzalez <4673363+octogonz@users.noreply.github.com> Date: Fri, 11 Aug 2023 11:33:15 -0700 Subject: [PATCH 03/16] Enable Node 18 in CI build matrix --- .github/workflows/ci.yml | 15 +++++++++++++-- rush.json | 2 +- 2 files changed, 14 insertions(+), 3 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 0704ee2e819..e5272bc37c3 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -15,8 +15,12 @@ jobs: OS: ubuntu-latest - NodeVersion: 16 OS: ubuntu-latest + - NodeVersion: 18 + OS: ubuntu-latest - NodeVersion: 16 OS: windows-latest + - NodeVersion: 18 + OS: windows-latest name: Node.js v${{ matrix.NodeVersion }} (${{ matrix.OS }}) runs-on: ${{ matrix.OS }} steps: @@ -50,11 +54,18 @@ jobs: # See https://github.com/microsoft/rushstack/issues/2981 BROWSERSLIST_IGNORE_OLD_DATA: 1 + # Workaround for Node 18 incompatibility with Webpack 4 + NODE_OPTIONS: --openssl-legacy-provider + + - name: Ensure repo README is up-to-date + run: node repo-scripts/repo-toolbox/lib/start.js readme --verify + - name: Rush test (rush-lib) run: node apps/rush/lib/start-dev.js test --verbose --production --timeline env: # Prevent time-based browserslist update warning # See https://github.com/microsoft/rushstack/issues/2981 BROWSERSLIST_IGNORE_OLD_DATA: 1 - - name: Ensure repo README is up-to-date - run: node repo-scripts/repo-toolbox/lib/start.js readme --verify + + # Workaround for Node 18 incompatibility with Webpack 4 + NODE_OPTIONS: --openssl-legacy-provider diff --git a/rush.json b/rush.json index 6bceeeb8b72..2c7d67e7c4f 100644 --- a/rush.json +++ b/rush.json @@ -42,7 +42,7 @@ * LTS schedule: https://nodejs.org/en/about/releases/ * LTS versions: https://nodejs.org/en/download/releases/ */ - "nodeSupportedVersionRange": ">=14.15.0 <15.0.0 || >=16.13.0 <17.0.0", + "nodeSupportedVersionRange": ">=14.15.0 <15.0.0 || >=16.13.0 <17.0.0 || >=18.15.0", /** * If the version check above fails, Rush will display a message showing the current From 967dd47b233e8025310c9ebf14255299c34bafdb Mon Sep 17 00:00:00 2001 From: Pete Gonzalez <4673363+octogonz@users.noreply.github.com> Date: Fri, 11 Aug 2023 11:38:52 -0700 Subject: [PATCH 04/16] Only display the warning if Webpack 4 is actually launched --- .../src/Webpack4Plugin.ts | 38 +++++++++++-------- 1 file changed, 22 insertions(+), 16 deletions(-) diff --git a/heft-plugins/heft-webpack4-plugin/src/Webpack4Plugin.ts b/heft-plugins/heft-webpack4-plugin/src/Webpack4Plugin.ts index 8090cc21610..6cb14db7144 100644 --- a/heft-plugins/heft-webpack4-plugin/src/Webpack4Plugin.ts +++ b/heft-plugins/heft-webpack4-plugin/src/Webpack4Plugin.ts @@ -101,22 +101,6 @@ export default class Webpack4Plugin implements IHeftTaskPlugin= 16) { - if (!/(^|[^a-z\-])--openssl-legacy-provider($|[^a-z\-])/.test(process.env.NODE_OPTIONS ?? '')) { - taskSession.logger.emitWarning( - new Error( - `Node.js version ${nodejsMajorVersion} is incompatible with Webpack 4. To work around this problem, use the environment variable NODE_OPTIONS="--openssl-legacy-provider"` - ) - ); - } - } - } else { - taskSession.logger.emitWarning(new Error(`Unable to parse Node.js version "${process.versions.node}"`)); - } - this._isServeMode = taskSession.parameters.getFlagParameter(SERVE_PARAMETER_LONG_NAME).value; if (!taskSession.parameters.watch && this._isServeMode) { throw new Error( @@ -200,11 +184,31 @@ export default class Webpack4Plugin implements IHeftTaskPlugin= 16) { + if (!/(^|[^a-z\-])--openssl-legacy-provider($|[^a-z\-])/.test(process.env.NODE_OPTIONS ?? '')) { + taskSession.logger.emitWarning( + new Error( + `Node.js ${nodejsMajorVersion} is incompatible with Webpack 4. To work around this problem, use the environment variable NODE_OPTIONS="--openssl-legacy-provider"` + ) + ); + } + } + } else { + taskSession.logger.emitWarning(new Error(`Unable to parse Node.js version "${process.versions.node}"`)); + } + } + private async _runWebpackAsync( taskSession: IHeftTaskSession, heftConfiguration: HeftConfiguration, options: IWebpackPluginOptions ): Promise { + this._warnAboutNodeJsIncompatibility(taskSession); + this._validateEnvironmentVariable(taskSession); if (taskSession.parameters.watch || this._isServeMode) { // Should never happen, but just in case @@ -252,6 +256,8 @@ export default class Webpack4Plugin implements IHeftTaskPlugin void ): Promise { + this._warnAboutNodeJsIncompatibility(taskSession); + // Save a handle to the original promise, since the this-scoped promise will be replaced whenever // the compilation completes. let webpackCompilationDonePromise: Promise | undefined = this._webpackCompilationDonePromise; From 51749b85e3ae85d2bd93106e9768bfaa21d51a03 Mon Sep 17 00:00:00 2001 From: Pete Gonzalez <4673363+octogonz@users.noreply.github.com> Date: Fri, 11 Aug 2023 11:45:39 -0700 Subject: [PATCH 05/16] Update Node.js version checks to support the new LTS release --- libraries/rush-lib/src/logic/NodeJsCompatibility.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/libraries/rush-lib/src/logic/NodeJsCompatibility.ts b/libraries/rush-lib/src/logic/NodeJsCompatibility.ts index 1010e1f4554..08176aed5bf 100644 --- a/libraries/rush-lib/src/logic/NodeJsCompatibility.ts +++ b/libraries/rush-lib/src/logic/NodeJsCompatibility.ts @@ -15,7 +15,7 @@ import type { RushConfiguration } from '../api/RushConfiguration'; * LTS schedule: https://nodejs.org/en/about/releases/ * LTS versions: https://nodejs.org/en/download/releases/ */ -const UPCOMING_NODE_LTS_VERSION: number = 18; +const UPCOMING_NODE_LTS_VERSION: number = 20; const nodeVersion: string = process.versions.node; const nodeMajorVersion: number = semver.major(nodeVersion); From 081ffe121b34c76525da40aab1e9825d78d911f3 Mon Sep 17 00:00:00 2001 From: Pete Gonzalez <4673363+octogonz@users.noreply.github.com> Date: Fri, 11 Aug 2023 11:46:01 -0700 Subject: [PATCH 06/16] Update rush.json produced by rush init to use PNPM 7.33.5 --- libraries/rush-lib/assets/rush-init/rush.json | 2 +- rush.json | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/libraries/rush-lib/assets/rush-init/rush.json b/libraries/rush-lib/assets/rush-init/rush.json index 12012e5c9f5..c7edd4d0610 100644 --- a/libraries/rush-lib/assets/rush-init/rush.json +++ b/libraries/rush-lib/assets/rush-init/rush.json @@ -26,7 +26,7 @@ * Specify one of: "pnpmVersion", "npmVersion", or "yarnVersion". See the Rush documentation * for details about these alternatives. */ - "pnpmVersion": "6.7.1", + "pnpmVersion": "7.33.5", /*[LINE "HYPOTHETICAL"]*/ "npmVersion": "6.14.15", /*[LINE "HYPOTHETICAL"]*/ "yarnVersion": "1.9.4", diff --git a/rush.json b/rush.json index 2c7d67e7c4f..298365cc70e 100644 --- a/rush.json +++ b/rush.json @@ -26,7 +26,7 @@ * Specify one of: "pnpmVersion", "npmVersion", or "yarnVersion". See the Rush documentation * for details about these alternatives. */ - "pnpmVersion": "7.26.1", + "pnpmVersion": "7.33.5", // "npmVersion": "6.14.15", // "yarnVersion": "1.9.4", @@ -42,7 +42,7 @@ * LTS schedule: https://nodejs.org/en/about/releases/ * LTS versions: https://nodejs.org/en/download/releases/ */ - "nodeSupportedVersionRange": ">=14.15.0 <15.0.0 || >=16.13.0 <17.0.0 || >=18.15.0", + "nodeSupportedVersionRange": ">=14.15.0 <15.0.0 || >=16.13.0 <17.0.0 || >=18.15.0 <19.0.0", /** * If the version check above fails, Rush will display a message showing the current From 79d118441e3c49e5afff41d0770b0eaf6907fd38 Mon Sep 17 00:00:00 2001 From: Pete Gonzalez <4673363+octogonz@users.noreply.github.com> Date: Fri, 11 Aug 2023 11:49:02 -0700 Subject: [PATCH 07/16] Update .gitignore to avoid spurious diffs caused by autoinstaller.lock files --- .gitignore | 7 ++++--- libraries/rush-lib/assets/rush-init/[dot]gitignore | 2 ++ 2 files changed, 6 insertions(+), 3 deletions(-) diff --git a/.gitignore b/.gitignore index c13c653a873..20b4d3f42c6 100644 --- a/.gitignore +++ b/.gitignore @@ -63,19 +63,20 @@ jspm_packages/ .idea/ *.iml -# Visual Studio Code -.vscode - # Rush temporary files common/deploy/ common/temp/ common/autoinstallers/*/.npmrc **/.rush/temp/ +*.lock # Heft temporary files .cache .heft +# Visual Studio Code +.vscode + # Common toolchain intermediate files temp lib diff --git a/libraries/rush-lib/assets/rush-init/[dot]gitignore b/libraries/rush-lib/assets/rush-init/[dot]gitignore index 41e850bba07..531395c0124 100644 --- a/libraries/rush-lib/assets/rush-init/[dot]gitignore +++ b/libraries/rush-lib/assets/rush-init/[dot]gitignore @@ -68,6 +68,8 @@ common/deploy/ common/temp/ common/autoinstallers/*/.npmrc **/.rush/temp/ +*.lock # Heft temporary files +.cache .heft From 56668b7a4fdca39ce9ff4800dd7d8c12402dc1cc Mon Sep 17 00:00:00 2001 From: Pete Gonzalez <4673363+octogonz@users.noreply.github.com> Date: Fri, 11 Aug 2023 11:51:27 -0700 Subject: [PATCH 08/16] rush change --- .../rush/octogonz-node-18_2023-08-11-18-49.json | 10 ++++++++++ .../rush/octogonz-node-18_2023-08-11-18-50.json | 10 ++++++++++ .../rush/octogonz-node-18_2023-08-11-18-51.json | 10 ++++++++++ 3 files changed, 30 insertions(+) create mode 100644 common/changes/@microsoft/rush/octogonz-node-18_2023-08-11-18-49.json create mode 100644 common/changes/@microsoft/rush/octogonz-node-18_2023-08-11-18-50.json create mode 100644 common/changes/@microsoft/rush/octogonz-node-18_2023-08-11-18-51.json diff --git a/common/changes/@microsoft/rush/octogonz-node-18_2023-08-11-18-49.json b/common/changes/@microsoft/rush/octogonz-node-18_2023-08-11-18-49.json new file mode 100644 index 00000000000..3d63a489b83 --- /dev/null +++ b/common/changes/@microsoft/rush/octogonz-node-18_2023-08-11-18-49.json @@ -0,0 +1,10 @@ +{ + "changes": [ + { + "packageName": "@microsoft/rush", + "comment": "Update Node.js version checks to support the new LTS release", + "type": "none" + } + ], + "packageName": "@microsoft/rush" +} \ No newline at end of file diff --git a/common/changes/@microsoft/rush/octogonz-node-18_2023-08-11-18-50.json b/common/changes/@microsoft/rush/octogonz-node-18_2023-08-11-18-50.json new file mode 100644 index 00000000000..9dbb12a9945 --- /dev/null +++ b/common/changes/@microsoft/rush/octogonz-node-18_2023-08-11-18-50.json @@ -0,0 +1,10 @@ +{ + "changes": [ + { + "packageName": "@microsoft/rush", + "comment": "Update \"rush init\" template to use PNPM 7.33.5", + "type": "none" + } + ], + "packageName": "@microsoft/rush" +} \ No newline at end of file diff --git a/common/changes/@microsoft/rush/octogonz-node-18_2023-08-11-18-51.json b/common/changes/@microsoft/rush/octogonz-node-18_2023-08-11-18-51.json new file mode 100644 index 00000000000..f53b74ba862 --- /dev/null +++ b/common/changes/@microsoft/rush/octogonz-node-18_2023-08-11-18-51.json @@ -0,0 +1,10 @@ +{ + "changes": [ + { + "packageName": "@microsoft/rush", + "comment": "Update the \"rush init\" template's .gitignore to avoid spurious diffs for files such as \"autoinstaller.lock\"", + "type": "none" + } + ], + "packageName": "@microsoft/rush" +} \ No newline at end of file From 5a56cd6b10303b2128ac3c18d12d02b4173dea49 Mon Sep 17 00:00:00 2001 From: Pete Gonzalez <4673363+octogonz@users.noreply.github.com> Date: Fri, 11 Aug 2023 12:06:02 -0700 Subject: [PATCH 09/16] "--openssl-legacy-provider" fails with Node 16 --- .github/workflows/ci.yml | 11 +++++------ 1 file changed, 5 insertions(+), 6 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index e5272bc37c3..9afbdcfc982 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -37,6 +37,11 @@ jobs: with: node-version: ${{ matrix.NodeVersion }} + # Workaround for Node 18 incompatibility with Webpack 4 + - name: Enable Webpack4 workaround + run: echo "NODE_OPTIONS=--openssl-legacy-provider" >> $GITHUB_ENV + if: matrix.NodeVersion == 18 + - name: Verify Change Logs run: node common/scripts/install-run-rush.js change --verify @@ -54,9 +59,6 @@ jobs: # See https://github.com/microsoft/rushstack/issues/2981 BROWSERSLIST_IGNORE_OLD_DATA: 1 - # Workaround for Node 18 incompatibility with Webpack 4 - NODE_OPTIONS: --openssl-legacy-provider - - name: Ensure repo README is up-to-date run: node repo-scripts/repo-toolbox/lib/start.js readme --verify @@ -66,6 +68,3 @@ jobs: # Prevent time-based browserslist update warning # See https://github.com/microsoft/rushstack/issues/2981 BROWSERSLIST_IGNORE_OLD_DATA: 1 - - # Workaround for Node 18 incompatibility with Webpack 4 - NODE_OPTIONS: --openssl-legacy-provider From 08a7e56e6183f54952aa21de8876076d5aabe341 Mon Sep 17 00:00:00 2001 From: Pete Gonzalez <4673363+octogonz@users.noreply.github.com> Date: Fri, 11 Aug 2023 12:07:07 -0700 Subject: [PATCH 10/16] Reduce matrix to avoid queuing --- .github/workflows/ci.yml | 2 -- 1 file changed, 2 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 9afbdcfc982..c9f40ad3221 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -13,8 +13,6 @@ jobs: include: - NodeVersion: 14 OS: ubuntu-latest - - NodeVersion: 16 - OS: ubuntu-latest - NodeVersion: 18 OS: ubuntu-latest - NodeVersion: 16 From 85404f5f597a35dac67594e13d0aa5e622bae49a Mon Sep 17 00:00:00 2001 From: Pete Gonzalez <4673363+octogonz@users.noreply.github.com> Date: Fri, 11 Aug 2023 12:16:54 -0700 Subject: [PATCH 11/16] PR feedback --- .github/workflows/ci.yml | 2 +- heft-plugins/heft-webpack4-plugin/src/Webpack4Plugin.ts | 6 ++++++ 2 files changed, 7 insertions(+), 1 deletion(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index c9f40ad3221..a93aa64d511 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -36,7 +36,7 @@ jobs: node-version: ${{ matrix.NodeVersion }} # Workaround for Node 18 incompatibility with Webpack 4 - - name: Enable Webpack4 workaround + - name: Enable Webpack 4 workaround run: echo "NODE_OPTIONS=--openssl-legacy-provider" >> $GITHUB_ENV if: matrix.NodeVersion == 18 diff --git a/heft-plugins/heft-webpack4-plugin/src/Webpack4Plugin.ts b/heft-plugins/heft-webpack4-plugin/src/Webpack4Plugin.ts index 6cb14db7144..dc055587693 100644 --- a/heft-plugins/heft-webpack4-plugin/src/Webpack4Plugin.ts +++ b/heft-plugins/heft-webpack4-plugin/src/Webpack4Plugin.ts @@ -189,6 +189,12 @@ export default class Webpack4Plugin implements IHeftTaskPlugin= 16) { + // Match strings like this: + // "--max-old-space-size=4096 --openssl-legacy-provider" + // "--openssl-legacy-provider=true" + // Do not accidentally match strings like this: + // "--openssl-legacy-provider-unrelated" + // "---openssl-legacy-provider" if (!/(^|[^a-z\-])--openssl-legacy-provider($|[^a-z\-])/.test(process.env.NODE_OPTIONS ?? '')) { taskSession.logger.emitWarning( new Error( From a73464b2b46b832036bdf9b9657c6f39dbb00564 Mon Sep 17 00:00:00 2001 From: Pete Gonzalez <4673363+octogonz@users.noreply.github.com> Date: Fri, 11 Aug 2023 13:38:06 -0700 Subject: [PATCH 12/16] Try again --- .github/workflows/ci.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index a93aa64d511..771c2917f72 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -37,7 +37,7 @@ jobs: # Workaround for Node 18 incompatibility with Webpack 4 - name: Enable Webpack 4 workaround - run: echo "NODE_OPTIONS=--openssl-legacy-provider" >> $GITHUB_ENV + run: echo "NODE_OPTIONS=--openssl-legacy-provider" >> "$GITHUB_ENV" if: matrix.NodeVersion == 18 - name: Verify Change Logs From 3dea5f08731fd7cc49ca929e7c99db17641c745e Mon Sep 17 00:00:00 2001 From: Pete Gonzalez <4673363+octogonz@users.noreply.github.com> Date: Fri, 11 Aug 2023 13:41:39 -0700 Subject: [PATCH 13/16] Shell command is Bash syntax --- .github/workflows/ci.yml | 1 + 1 file changed, 1 insertion(+) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 771c2917f72..9873b5f83a7 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -37,6 +37,7 @@ jobs: # Workaround for Node 18 incompatibility with Webpack 4 - name: Enable Webpack 4 workaround + shell: bash run: echo "NODE_OPTIONS=--openssl-legacy-provider" >> "$GITHUB_ENV" if: matrix.NodeVersion == 18 From 78698af9380d62fa6eb3d07a4cb4ee3a10bc0f0b Mon Sep 17 00:00:00 2001 From: Pete Gonzalez <4673363+octogonz@users.noreply.github.com> Date: Fri, 11 Aug 2023 14:12:01 -0700 Subject: [PATCH 14/16] Try again --- .github/workflows/ci.yml | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 9873b5f83a7..ccb444a3c26 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -36,7 +36,7 @@ jobs: node-version: ${{ matrix.NodeVersion }} # Workaround for Node 18 incompatibility with Webpack 4 - - name: Enable Webpack 4 workaround + - name: Set environment for Webpack 4 workaround shell: bash run: echo "NODE_OPTIONS=--openssl-legacy-provider" >> "$GITHUB_ENV" if: matrix.NodeVersion == 18 @@ -67,3 +67,9 @@ jobs: # Prevent time-based browserslist update warning # See https://github.com/microsoft/rushstack/issues/2981 BROWSERSLIST_IGNORE_OLD_DATA: 1 + + # One of the post run actions apparently uses older Node.js that rejects --openssl-legacy-provider + - name: Unset environment for Webpack 4 workaround + shell: bash + run: echo "NODE_OPTIONS=" >> "$GITHUB_ENV" + if: matrix.NodeVersion == 18 From 2da4be8b3b4472cf1b9f555fbd11b668acc84ac7 Mon Sep 17 00:00:00 2001 From: Pete Gonzalez <4673363+octogonz@users.noreply.github.com> Date: Fri, 11 Aug 2023 14:12:39 -0700 Subject: [PATCH 15/16] Clarify step titles --- .github/workflows/ci.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index ccb444a3c26..b4715a50f4d 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -36,7 +36,7 @@ jobs: node-version: ${{ matrix.NodeVersion }} # Workaround for Node 18 incompatibility with Webpack 4 - - name: Set environment for Webpack 4 workaround + - name: Enable Webpack 4 workaround shell: bash run: echo "NODE_OPTIONS=--openssl-legacy-provider" >> "$GITHUB_ENV" if: matrix.NodeVersion == 18 @@ -69,7 +69,7 @@ jobs: BROWSERSLIST_IGNORE_OLD_DATA: 1 # One of the post run actions apparently uses older Node.js that rejects --openssl-legacy-provider - - name: Unset environment for Webpack 4 workaround + - name: Revert Webpack 4 workaround shell: bash run: echo "NODE_OPTIONS=" >> "$GITHUB_ENV" if: matrix.NodeVersion == 18 From 6e42605df553d9a57b05fe5ed96be8c977d649ff Mon Sep 17 00:00:00 2001 From: Pete Gonzalez <4673363+octogonz@users.noreply.github.com> Date: Fri, 11 Aug 2023 14:51:54 -0700 Subject: [PATCH 16/16] Fix incorrect comparison xD --- heft-plugins/heft-webpack4-plugin/src/Webpack4Plugin.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/heft-plugins/heft-webpack4-plugin/src/Webpack4Plugin.ts b/heft-plugins/heft-webpack4-plugin/src/Webpack4Plugin.ts index dc055587693..f951c303c10 100644 --- a/heft-plugins/heft-webpack4-plugin/src/Webpack4Plugin.ts +++ b/heft-plugins/heft-webpack4-plugin/src/Webpack4Plugin.ts @@ -188,7 +188,7 @@ export default class Webpack4Plugin implements IHeftTaskPlugin= 16) { + if (nodejsMajorVersion > 16) { // Match strings like this: // "--max-old-space-size=4096 --openssl-legacy-provider" // "--openssl-legacy-provider=true"