Skip to content

Commit 768e59e

Browse files
authored
fix(module-federation): normalize hypen names for runtime library control plugin #28497 (#28512)
<!-- Please make sure you have read the submission guidelines before posting an PR --> <!-- https://github.com/nrwl/nx/blob/master/CONTRIBUTING.md#-submitting-a-pr --> <!-- Please make sure that your commit message follows our format --> <!-- Example: `fix(nx): must begin with lowercase` --> <!-- If this is a particularly complex change or feature addition, you can request a dedicated Nx release for this pull request branch. Mention someone from the Nx team or the `@nrwl/nx-pipelines-reviewers` and they will confirm if the PR warrants its own release for testing purposes, and generate it for you if appropriate. --> ## Current Behavior <!-- This is the behavior we have today --> As part of the work to normalize `-` in MF project names for Federation, setting the NX_MF_DEV_REMOTES env var was missed. This causes issues with the RuntimeLibraryControlPlugin ## Expected Behavior <!-- This is the behavior we should expect with the changes in this PR --> Remote names should be normalized correctly ## Related Issue(s) <!-- Please link the issue being fixed so it gets closed when this is merged. --> Fixes #28497
1 parent 112c9f6 commit 768e59e

File tree

6 files changed

+36
-22
lines changed

6 files changed

+36
-22
lines changed

packages/angular/src/executors/module-federation-dev-server/module-federation-dev-server.impl.ts

+6-4
Original file line numberDiff line numberDiff line change
@@ -128,10 +128,12 @@ export async function* moduleFederationDevServerExecutor(
128128

129129
// Set NX_MF_DEV_REMOTES for the Nx Runtime Library Control Plugin
130130
process.env.NX_MF_DEV_REMOTES = JSON.stringify([
131-
...(remotes.devRemotes.map((r) =>
132-
typeof r === 'string' ? r : r.remoteName
133-
) ?? []),
134-
project.name,
131+
...(
132+
remotes.devRemotes.map((r) =>
133+
typeof r === 'string' ? r : r.remoteName
134+
) ?? []
135+
).map((r) => r.replace(/-/g, '_')),
136+
project.name.replace(/-/g, '_'),
135137
]);
136138

137139
const staticRemotesConfig = parseStaticRemotesConfig(

packages/angular/src/executors/module-federation-ssr-dev-server/module-federation-ssr-dev-server.impl.ts

+6-2
Original file line numberDiff line numberDiff line change
@@ -124,8 +124,12 @@ export async function* moduleFederationSsrDevServerExecutor(
124124

125125
// Set NX_MF_DEV_REMOTES for the Nx Runtime Library Control Plugin
126126
process.env.NX_MF_DEV_REMOTES = JSON.stringify([
127-
...(options.devRemotes ?? []),
128-
project.name,
127+
...(
128+
options.devRemotes.map((r) =>
129+
typeof r === 'string' ? r : r.remoteName
130+
) ?? []
131+
).map((r) => r.replace(/-/g, '_')),
132+
project.name.replace(/-/g, '_'),
129133
]);
130134

131135
const devRemotes = await startRemotes(

packages/react/src/executors/module-federation-dev-server/module-federation-dev-server.impl.ts

+6-4
Original file line numberDiff line numberDiff line change
@@ -229,10 +229,12 @@ export default async function* moduleFederationDevServer(
229229

230230
// Set NX_MF_DEV_REMOTES for the Nx Runtime Library Control Plugin
231231
process.env.NX_MF_DEV_REMOTES = JSON.stringify([
232-
...(remotes.devRemotes.map((r) =>
233-
typeof r === 'string' ? r : r.remoteName
234-
) ?? []),
235-
p.name,
232+
...(
233+
remotes.devRemotes.map((r) =>
234+
typeof r === 'string' ? r : r.remoteName
235+
) ?? []
236+
).map((r) => r.replace(/-/g, '_')),
237+
p.name.replace(/-/g, '_'),
236238
]);
237239

238240
const staticRemotesConfig = parseStaticRemotesConfig(

packages/react/src/executors/module-federation-ssr-dev-server/module-federation-ssr-dev-server.impl.ts

+6-4
Original file line numberDiff line numberDiff line change
@@ -314,10 +314,12 @@ export default async function* moduleFederationSsrDevServer(
314314
options.staticRemotesPort ??= remotes.staticRemotePort;
315315

316316
process.env.NX_MF_DEV_REMOTES = JSON.stringify([
317-
...(remotes.devRemotes.map((r) =>
318-
typeof r === 'string' ? r : r.remoteName
319-
) ?? []),
320-
projectConfig.name,
317+
...(
318+
remotes.devRemotes.map((r) =>
319+
typeof r === 'string' ? r : r.remoteName
320+
) ?? []
321+
).map((r) => r.replace(/-/g, '_')),
322+
projectConfig.name.replace(/-/g, '_'),
321323
]);
322324

323325
const staticRemotesConfig = parseStaticSsrRemotesConfig(

packages/rspack/src/executors/module-federation-dev-server/module-federation-dev-server.impl.ts

+6-4
Original file line numberDiff line numberDiff line change
@@ -229,10 +229,12 @@ export default async function* moduleFederationDevServer(
229229

230230
// Set NX_MF_DEV_REMOTES for the Nx Runtime Library Control Plugin
231231
process.env.NX_MF_DEV_REMOTES = JSON.stringify([
232-
...(remotes.devRemotes.map((r) =>
233-
typeof r === 'string' ? r : r.remoteName
234-
) ?? []),
235-
p.name,
232+
...(
233+
remotes.devRemotes.map((r) =>
234+
typeof r === 'string' ? r : r.remoteName
235+
) ?? []
236+
).map((r) => r.replace(/-/g, '_')),
237+
p.name.replace(/-/g, '_'),
236238
]);
237239

238240
const staticRemotesConfig = parseStaticRemotesConfig(

packages/rspack/src/executors/module-federation-ssr-dev-server/module-federation-ssr-dev-server.impl.ts

+6-4
Original file line numberDiff line numberDiff line change
@@ -313,10 +313,12 @@ export default async function* moduleFederationSsrDevServer(
313313
options.staticRemotesPort ??= remotes.staticRemotePort;
314314

315315
process.env.NX_MF_DEV_REMOTES = JSON.stringify([
316-
...(remotes.devRemotes.map((r) =>
317-
typeof r === 'string' ? r : r.remoteName
318-
) ?? []),
319-
projectConfig.name,
316+
...(
317+
remotes.devRemotes.map((r) =>
318+
typeof r === 'string' ? r : r.remoteName
319+
) ?? []
320+
).map((r) => r.replace(/-/g, '_')),
321+
projectConfig.name.replace(/-/g, '_'),
320322
]);
321323

322324
const staticRemotesConfig = parseStaticSsrRemotesConfig(

0 commit comments

Comments
 (0)