@module-federation/enhanced 2.5.1 → 2.7.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/CHANGELOG.md CHANGED
@@ -1,5 +1,43 @@
1
1
  # @module-federation/enhanced
2
2
 
3
+ ## 2.7.0
4
+
5
+ ### Patch Changes
6
+
7
+ - Updated dependencies [a7351f3]
8
+ - Updated dependencies [dcc640b]
9
+ - Updated dependencies [9958086]
10
+ - Updated dependencies [a5f123a]
11
+ - @module-federation/dts-plugin@2.7.0
12
+ - @module-federation/sdk@2.7.0
13
+ - @module-federation/managers@2.7.0
14
+ - @module-federation/manifest@2.7.0
15
+ - @module-federation/cli@2.7.0
16
+ - @module-federation/rspack@2.7.0
17
+ - @module-federation/bridge-react-webpack-plugin@2.7.0
18
+ - @module-federation/webpack-bundler-runtime@2.7.0
19
+ - @module-federation/runtime-tools@2.7.0
20
+ - @module-federation/inject-external-runtime-core-plugin@2.7.0
21
+ - @module-federation/error-codes@2.7.0
22
+
23
+ ## 2.6.0
24
+
25
+ ### Patch Changes
26
+
27
+ - 9dd3a5b: Fix consume-shared runtime output ordering for stable build hashes.
28
+ - Updated dependencies [2a7f724]
29
+ - @module-federation/dts-plugin@2.6.0
30
+ - @module-federation/cli@2.6.0
31
+ - @module-federation/manifest@2.6.0
32
+ - @module-federation/rspack@2.6.0
33
+ - @module-federation/runtime-tools@2.6.0
34
+ - @module-federation/webpack-bundler-runtime@2.6.0
35
+ - @module-federation/inject-external-runtime-core-plugin@2.6.0
36
+ - @module-federation/sdk@2.6.0
37
+ - @module-federation/managers@2.6.0
38
+ - @module-federation/bridge-react-webpack-plugin@2.6.0
39
+ - @module-federation/error-codes@2.6.0
40
+
3
41
  ## 2.5.1
4
42
 
5
43
  ### Patch Changes
@@ -24,11 +24,11 @@ Rstest docs listed in the references section.
24
24
 
25
25
  ### 1) Update scripts and Nx targets
26
26
  - Switch `packages/enhanced/project.json` `test` target to Rstest:
27
- `rstest run -c packages/enhanced/rstest.config.ts` (match CLI usage).
27
+ `rstest -c packages/enhanced/rstest.config.ts` (match CLI usage).
28
28
  - Replace or remove `test:jest` and `test:experiments` targets, or rewrite
29
29
  them as Rstest equivalents (for example, separate includes/projects).
30
30
  - Keep `enhanced:rstest` in the root `package.json` as the user-facing entry
31
- point and ensure it uses `rstest run` (or `rstest`) consistently.
31
+ point and ensure it uses `rstest` consistently.
32
32
 
33
33
  ### 2) Expand `rstest.config.ts` coverage
34
34
  - Include unit and compiler tests (not just ConfigTestCases):
@@ -5,6 +5,7 @@ let _module_federation_sdk_normalize_webpack_path = require("@module-federation/
5
5
 
6
6
  //#region src/lib/sharing/ConsumeSharedRuntimeModule.ts
7
7
  const { Template, RuntimeGlobals, RuntimeModule } = require((0, _module_federation_sdk_normalize_webpack_path.normalizeWebpackPath)("webpack"));
8
+ const { compareModulesByIdentifier } = require((0, _module_federation_sdk_normalize_webpack_path.normalizeWebpackPath)("webpack/lib/util/comparators"));
8
9
  var ConsumeSharedRuntimeModule = class extends RuntimeModule {
9
10
  /**
10
11
  * @param {ReadonlySet<string>} runtimeRequirements runtime requirements
@@ -59,13 +60,13 @@ var ConsumeSharedRuntimeModule = class extends RuntimeModule {
59
60
  };
60
61
  const allChunks = [...this.chunk?.getAllReferencedChunks() || []];
61
62
  for (const chunk of allChunks) {
62
- const modules = chunkGraph.getChunkModulesIterableBySourceType(chunk, "consume-shared");
63
+ const modules = chunkGraph.getOrderedChunkModulesIterableBySourceType(chunk, "consume-shared", compareModulesByIdentifier);
63
64
  if (!modules) continue;
64
65
  if (chunk.id === null || typeof chunk.id === "string" && !chunk.id) continue;
65
66
  addModules(modules, chunk, chunkToModuleMapping[chunk.id.toString()] = []);
66
67
  }
67
68
  for (const chunk of [...this.chunk?.getAllInitialChunks() || []]) {
68
- const modules = chunkGraph.getChunkModulesIterableBySourceType(chunk, "consume-shared");
69
+ const modules = chunkGraph.getOrderedChunkModulesIterableBySourceType(chunk, "consume-shared", compareModulesByIdentifier);
69
70
  if (!modules) continue;
70
71
  addModules(modules, chunk, initialConsumes);
71
72
  }
@@ -1 +1 @@
1
- {"version":3,"file":"ConsumeSharedRuntimeModule.js","names":["getFederationGlobalScope"],"sources":["../../../../src/lib/sharing/ConsumeSharedRuntimeModule.ts"],"sourcesContent":["/*\n MIT License http://www.opensource.org/licenses/mit-license.php\n Author Tobias Koppers @sokra, Zackary Jackson @ScriptedAlchemy\n*/\nimport { normalizeWebpackPath } from '@module-federation/sdk/normalize-webpack-path';\n\nimport type { Module, ChunkGraph, Compilation, Chunk } from 'webpack';\nimport ConsumeSharedModule from './ConsumeSharedModule';\nimport { getFederationGlobalScope } from '../container/runtime/utils';\n\nconst { Template, RuntimeGlobals, RuntimeModule } = require(\n normalizeWebpackPath('webpack'),\n) as typeof import('webpack');\n\nclass ConsumeSharedRuntimeModule extends RuntimeModule {\n private _runtimeRequirements: ReadonlySet<string>;\n\n /**\n * @param {ReadonlySet<string>} runtimeRequirements runtime requirements\n */\n constructor(runtimeRequirements: ReadonlySet<string>) {\n super('consumes', RuntimeModule.STAGE_ATTACH);\n this._runtimeRequirements = runtimeRequirements;\n }\n\n /**\n * @returns {string | null} runtime code\n */\n override generate(): string | null {\n const compilation: Compilation = this.compilation!;\n const chunkGraph: ChunkGraph = this.chunkGraph!;\n const { runtimeTemplate, codeGenerationResults } = compilation;\n if (!codeGenerationResults) {\n return null;\n }\n const chunkToModuleMapping: Record<string, any> = {};\n const moduleIdToSourceMapping: Map<string | number, string> = new Map();\n const initialConsumes: (string | number)[] = [];\n /**\n *\n * @param {Iterable<Module>} modules modules\n * @param {Chunk} chunk the chunk\n * @param {(string | number)[]} list list of ids\n */\n const addModules = (\n modules: Iterable<Module>,\n chunk: Chunk,\n list: (string | number)[],\n ) => {\n for (const m of modules) {\n const module: ConsumeSharedModule = m as unknown as ConsumeSharedModule;\n // @ts-ignore\n const id = chunkGraph.getModuleId(module);\n if (id === null || id === undefined) {\n continue;\n }\n list.push(id);\n const moduleGetter = codeGenerationResults.getSource(\n // @ts-ignore\n module,\n chunk.runtime,\n 'consume-shared',\n );\n if (!moduleGetter) {\n continue;\n }\n const shareOption = codeGenerationResults.getData(\n // @ts-ignore\n module,\n chunk.runtime,\n 'consume-shared',\n );\n if (!shareOption) {\n continue;\n }\n moduleIdToSourceMapping.set(\n id,\n Template.asString([\n '{',\n Template.indent([\n `fallback: ${moduleGetter.source().toString()},`,\n `shareScope: ${JSON.stringify(\n Array.isArray(shareOption.shareScope)\n ? shareOption.shareScope\n : [shareOption.shareScope || 'default'],\n )},`,\n `singleton: ${JSON.stringify(shareOption.shareConfig.singleton)},`,\n `requiredVersion: ${JSON.stringify(shareOption.shareConfig.requiredVersion)},`,\n `strictVersion: ${JSON.stringify(shareOption.shareConfig.strictVersion)},`,\n `eager: ${JSON.stringify(shareOption.shareConfig.eager)},`,\n `layer: ${JSON.stringify(shareOption.shareConfig.layer)},`,\n `shareKey: \"${shareOption.shareKey}\",`,\n `${shareOption.treeShakingMode ? `treeShakingMode: ${JSON.stringify(shareOption.treeShakingMode)},` : ''}`,\n ]),\n '}',\n ]),\n );\n }\n };\n\n const allChunks = [...(this.chunk?.getAllReferencedChunks() || [])];\n for (const chunk of allChunks) {\n const modules = chunkGraph.getChunkModulesIterableBySourceType(\n chunk,\n 'consume-shared',\n );\n if (!modules) continue;\n // chunk.id may equal 0\n if (chunk.id === null || (typeof chunk.id === 'string' && !chunk.id))\n continue;\n\n addModules(\n modules,\n chunk,\n (chunkToModuleMapping[chunk.id.toString()] = []),\n );\n }\n for (const chunk of [...(this.chunk?.getAllInitialChunks() || [])]) {\n const modules = chunkGraph.getChunkModulesIterableBySourceType(\n chunk,\n 'consume-shared',\n );\n if (!modules) continue;\n addModules(modules, chunk, initialConsumes);\n }\n\n if (moduleIdToSourceMapping.size === 0) return null;\n\n const federationGlobal = getFederationGlobalScope(RuntimeGlobals);\n\n return Template.asString([\n 'var installedModules = {};',\n `${RuntimeGlobals.require}.consumesLoadingData.moduleIdToConsumeDataMapping = {`,\n Template.indent(\n Array.from(moduleIdToSourceMapping, ([key, value]) => {\n return `${JSON.stringify(key)}: ${value}`;\n }).join(',\\n'),\n ),\n '};',\n\n `var moduleToHandlerMapping = {};`,\n\n initialConsumes.length > 0\n ? Template.asString([\n `${RuntimeGlobals.require}.consumesLoadingData.initialConsumes = ${JSON.stringify(initialConsumes)};`,\n `${federationGlobal}.installInitialConsumes = ${runtimeTemplate.returningFunction(\n Template.asString([\n `${federationGlobal}.bundlerRuntime.installInitialConsumes({`,\n Template.indent([\n `initialConsumes: ${RuntimeGlobals.require}.consumesLoadingData.initialConsumes,`,\n 'installedModules:installedModules,',\n `moduleToHandlerMapping,`,\n `webpackRequire: ${RuntimeGlobals.require},`,\n `asyncLoad: typeof options==='object' ? options.asyncLoad : undefined,`,\n ]),\n `})`,\n ]),\n 'options',\n )}`,\n ])\n : '// no consumes in initial chunks',\n this._runtimeRequirements.has(RuntimeGlobals.ensureChunkHandlers)\n ? Template.asString([\n `${RuntimeGlobals.require}.consumesLoadingData.chunkMapping = ${JSON.stringify(\n chunkToModuleMapping,\n null,\n '\\t',\n )};`,\n `${\n RuntimeGlobals.ensureChunkHandlers\n }.consumes = ${runtimeTemplate.basicFunction('chunkId, promises', [\n `${federationGlobal}.bundlerRuntime.consumes({`,\n `chunkMapping: ${RuntimeGlobals.require}.consumesLoadingData.chunkMapping,`,\n 'installedModules: installedModules,',\n 'chunkId: chunkId,',\n `moduleToHandlerMapping,`,\n 'promises: promises,',\n `webpackRequire:${RuntimeGlobals.require}`,\n '});',\n ])}`,\n ])\n : '// no chunk loading of consumes',\n ]);\n }\n}\n\nexport default ConsumeSharedRuntimeModule;\n"],"mappings":"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"}
1
+ {"version":3,"file":"ConsumeSharedRuntimeModule.js","names":["getFederationGlobalScope"],"sources":["../../../../src/lib/sharing/ConsumeSharedRuntimeModule.ts"],"sourcesContent":["/*\n MIT License http://www.opensource.org/licenses/mit-license.php\n Author Tobias Koppers @sokra, Zackary Jackson @ScriptedAlchemy\n*/\nimport { normalizeWebpackPath } from '@module-federation/sdk/normalize-webpack-path';\n\nimport type { Module, ChunkGraph, Compilation, Chunk } from 'webpack';\nimport ConsumeSharedModule from './ConsumeSharedModule';\nimport { getFederationGlobalScope } from '../container/runtime/utils';\n\nconst { Template, RuntimeGlobals, RuntimeModule } = require(\n normalizeWebpackPath('webpack'),\n) as typeof import('webpack');\nconst { compareModulesByIdentifier } = require(\n normalizeWebpackPath('webpack/lib/util/comparators'),\n) as typeof import('webpack/lib/util/comparators');\n\nclass ConsumeSharedRuntimeModule extends RuntimeModule {\n private _runtimeRequirements: ReadonlySet<string>;\n\n /**\n * @param {ReadonlySet<string>} runtimeRequirements runtime requirements\n */\n constructor(runtimeRequirements: ReadonlySet<string>) {\n super('consumes', RuntimeModule.STAGE_ATTACH);\n this._runtimeRequirements = runtimeRequirements;\n }\n\n /**\n * @returns {string | null} runtime code\n */\n override generate(): string | null {\n const compilation: Compilation = this.compilation!;\n const chunkGraph: ChunkGraph = this.chunkGraph!;\n const { runtimeTemplate, codeGenerationResults } = compilation;\n if (!codeGenerationResults) {\n return null;\n }\n const chunkToModuleMapping: Record<string, any> = {};\n const moduleIdToSourceMapping: Map<string | number, string> = new Map();\n const initialConsumes: (string | number)[] = [];\n /**\n *\n * @param {Iterable<Module>} modules modules\n * @param {Chunk} chunk the chunk\n * @param {(string | number)[]} list list of ids\n */\n const addModules = (\n modules: Iterable<Module>,\n chunk: Chunk,\n list: (string | number)[],\n ) => {\n for (const m of modules) {\n const module: ConsumeSharedModule = m as unknown as ConsumeSharedModule;\n // @ts-ignore\n const id = chunkGraph.getModuleId(module);\n if (id === null || id === undefined) {\n continue;\n }\n list.push(id);\n const moduleGetter = codeGenerationResults.getSource(\n // @ts-ignore\n module,\n chunk.runtime,\n 'consume-shared',\n );\n if (!moduleGetter) {\n continue;\n }\n const shareOption = codeGenerationResults.getData(\n // @ts-ignore\n module,\n chunk.runtime,\n 'consume-shared',\n );\n if (!shareOption) {\n continue;\n }\n moduleIdToSourceMapping.set(\n id,\n Template.asString([\n '{',\n Template.indent([\n `fallback: ${moduleGetter.source().toString()},`,\n `shareScope: ${JSON.stringify(\n Array.isArray(shareOption.shareScope)\n ? shareOption.shareScope\n : [shareOption.shareScope || 'default'],\n )},`,\n `singleton: ${JSON.stringify(shareOption.shareConfig.singleton)},`,\n `requiredVersion: ${JSON.stringify(shareOption.shareConfig.requiredVersion)},`,\n `strictVersion: ${JSON.stringify(shareOption.shareConfig.strictVersion)},`,\n `eager: ${JSON.stringify(shareOption.shareConfig.eager)},`,\n `layer: ${JSON.stringify(shareOption.shareConfig.layer)},`,\n `shareKey: \"${shareOption.shareKey}\",`,\n `${shareOption.treeShakingMode ? `treeShakingMode: ${JSON.stringify(shareOption.treeShakingMode)},` : ''}`,\n ]),\n '}',\n ]),\n );\n }\n };\n\n const allChunks = [...(this.chunk?.getAllReferencedChunks() || [])];\n for (const chunk of allChunks) {\n const modules = chunkGraph.getOrderedChunkModulesIterableBySourceType(\n chunk,\n 'consume-shared',\n compareModulesByIdentifier,\n );\n if (!modules) continue;\n // chunk.id may equal 0\n if (chunk.id === null || (typeof chunk.id === 'string' && !chunk.id))\n continue;\n\n addModules(\n modules,\n chunk,\n (chunkToModuleMapping[chunk.id.toString()] = []),\n );\n }\n for (const chunk of [...(this.chunk?.getAllInitialChunks() || [])]) {\n const modules = chunkGraph.getOrderedChunkModulesIterableBySourceType(\n chunk,\n 'consume-shared',\n compareModulesByIdentifier,\n );\n if (!modules) continue;\n addModules(modules, chunk, initialConsumes);\n }\n\n if (moduleIdToSourceMapping.size === 0) return null;\n\n const federationGlobal = getFederationGlobalScope(RuntimeGlobals);\n\n return Template.asString([\n 'var installedModules = {};',\n `${RuntimeGlobals.require}.consumesLoadingData.moduleIdToConsumeDataMapping = {`,\n Template.indent(\n Array.from(moduleIdToSourceMapping, ([key, value]) => {\n return `${JSON.stringify(key)}: ${value}`;\n }).join(',\\n'),\n ),\n '};',\n\n `var moduleToHandlerMapping = {};`,\n\n initialConsumes.length > 0\n ? Template.asString([\n `${RuntimeGlobals.require}.consumesLoadingData.initialConsumes = ${JSON.stringify(initialConsumes)};`,\n `${federationGlobal}.installInitialConsumes = ${runtimeTemplate.returningFunction(\n Template.asString([\n `${federationGlobal}.bundlerRuntime.installInitialConsumes({`,\n Template.indent([\n `initialConsumes: ${RuntimeGlobals.require}.consumesLoadingData.initialConsumes,`,\n 'installedModules:installedModules,',\n `moduleToHandlerMapping,`,\n `webpackRequire: ${RuntimeGlobals.require},`,\n `asyncLoad: typeof options==='object' ? options.asyncLoad : undefined,`,\n ]),\n `})`,\n ]),\n 'options',\n )}`,\n ])\n : '// no consumes in initial chunks',\n this._runtimeRequirements.has(RuntimeGlobals.ensureChunkHandlers)\n ? Template.asString([\n `${RuntimeGlobals.require}.consumesLoadingData.chunkMapping = ${JSON.stringify(\n chunkToModuleMapping,\n null,\n '\\t',\n )};`,\n `${\n RuntimeGlobals.ensureChunkHandlers\n }.consumes = ${runtimeTemplate.basicFunction('chunkId, promises', [\n `${federationGlobal}.bundlerRuntime.consumes({`,\n `chunkMapping: ${RuntimeGlobals.require}.consumesLoadingData.chunkMapping,`,\n 'installedModules: installedModules,',\n 'chunkId: chunkId,',\n `moduleToHandlerMapping,`,\n 'promises: promises,',\n `webpackRequire:${RuntimeGlobals.require}`,\n '});',\n ])}`,\n ])\n : '// no chunk loading of consumes',\n ]);\n }\n}\n\nexport default ConsumeSharedRuntimeModule;\n"],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@module-federation/enhanced",
3
- "version": "2.5.1",
3
+ "version": "2.7.0",
4
4
  "main": "./dist/src/index.js",
5
5
  "types": "./dist/src/index.d.ts",
6
6
  "repository": {
@@ -21,7 +21,7 @@
21
21
  "access": "public"
22
22
  },
23
23
  "peerDependencies": {
24
- "typescript": "^4.9.0 || ^5.0.0",
24
+ "typescript": "^4.9.0 || ^5.0.0 || ^6.0.0",
25
25
  "vue-tsc": ">=1.0.24",
26
26
  "webpack": "^5.0.0"
27
27
  },
@@ -77,31 +77,32 @@
77
77
  "devDependencies": {
78
78
  "ajv": "^8.18.0",
79
79
  "enhanced-resolve": "^5.0.0",
80
- "terser": "^5.37.0",
81
80
  "fast-glob": "3.3.3",
82
- "memfs": "4.46.0"
81
+ "memfs": "4.46.0",
82
+ "terser": "^5.37.0",
83
+ "typescript": "6.0.3"
83
84
  },
84
85
  "dependencies": {
85
86
  "upath": "2.0.1",
86
87
  "schema-utils": "4.3.0",
87
88
  "tapable": "2.3.0",
88
- "@module-federation/webpack-bundler-runtime": "2.5.1",
89
- "@module-federation/dts-plugin": "2.5.1",
90
- "@module-federation/error-codes": "2.5.1",
91
- "@module-federation/inject-external-runtime-core-plugin": "2.5.1",
92
- "@module-federation/bridge-react-webpack-plugin": "2.5.1",
93
- "@module-federation/managers": "2.5.1",
94
- "@module-federation/rspack": "2.5.1",
95
- "@module-federation/manifest": "2.5.1",
96
- "@module-federation/sdk": "2.5.1",
97
- "@module-federation/runtime-tools": "2.5.1",
98
- "@module-federation/cli": "2.5.1"
89
+ "@module-federation/webpack-bundler-runtime": "2.7.0",
90
+ "@module-federation/bridge-react-webpack-plugin": "2.7.0",
91
+ "@module-federation/dts-plugin": "2.7.0",
92
+ "@module-federation/managers": "2.7.0",
93
+ "@module-federation/error-codes": "2.7.0",
94
+ "@module-federation/inject-external-runtime-core-plugin": "2.7.0",
95
+ "@module-federation/manifest": "2.7.0",
96
+ "@module-federation/runtime-tools": "2.7.0",
97
+ "@module-federation/rspack": "2.7.0",
98
+ "@module-federation/sdk": "2.7.0",
99
+ "@module-federation/cli": "2.7.0"
99
100
  },
100
101
  "scripts": {
101
102
  "generate:schema": "node src/scripts/compile-schema.js && node src/scripts/generate-sdk-types.js",
102
103
  "build": "node -e \"require('fs').rmSync('dist',{recursive:true,force:true})\" && pnpm -C . exec tsdown --config tsdown.config.mts && cp *.md dist && node -e \"const fs=require('fs');const path=require('path');const src='src';const dst='dist/src';(function w(d){for(const e of fs.readdirSync(d,{withFileTypes:true})){const p=path.join(d,e.name);if(e.isDirectory())w(p);else if(e.name.endsWith('.d.ts')){const rel=path.relative(src,p);const out=path.join(dst,rel);fs.mkdirSync(path.dirname(out),{recursive:true});fs.copyFileSync(p,out);}}})(src);\"",
103
104
  "lint": "ESLINT_USE_FLAT_CONFIG=false pnpm exec eslint --ignore-pattern node_modules \"**/*.ts\"",
104
- "test": "node test/scripts/ensure-reshake-fixtures.js && NODE_OPTIONS=\"--experimental-vm-modules --max-old-space-size=24576\" npx rstest -c rstest.config.ts && NODE_OPTIONS=\"--experimental-vm-modules --max-old-space-size=24576\" npx rstest -c rstest.treeshake.serial.config.ts",
105
+ "test": "node test/scripts/ensure-reshake-fixtures.js && NODE_OPTIONS=\"--experimental-vm-modules --max-old-space-size=24576\" npx rstest && NODE_OPTIONS=\"--experimental-vm-modules --max-old-space-size=24576\" npx rstest -c rstest.treeshake.serial.config.ts",
105
106
  "pre-release": "pnpm run test && pnpm run build"
106
107
  }
107
108
  }