From 38855e9c6acb6b2909382a4b11e9f8a41e1fd841 Mon Sep 17 00:00:00 2001 From: ScriptedAlchemy Date: Mon, 23 Oct 2023 12:43:49 -0700 Subject: [PATCH 001/185] fix: add share logic just for next --- .../src/plugins/NextFederationPlugin/index.ts | 2 + .../InvertedContainerRuntimeModule.ts | 49 +++++++++++++------ 2 files changed, 37 insertions(+), 14 deletions(-) diff --git a/packages/nextjs-mf/src/plugins/NextFederationPlugin/index.ts b/packages/nextjs-mf/src/plugins/NextFederationPlugin/index.ts index bf93f025515..34582fd5265 100644 --- a/packages/nextjs-mf/src/plugins/NextFederationPlugin/index.ts +++ b/packages/nextjs-mf/src/plugins/NextFederationPlugin/index.ts @@ -137,6 +137,8 @@ export class NextFederationPlugin { remoteType: 'script', exposes: { './noop': noop, + './react': require.resolve('react'), + './react-dom': require.resolve('react-dom'), ...this._options.exposes, ...(this._extraOptions.exposePages ? exposeNextjsPages(compiler.options.context as string) diff --git a/packages/nextjs-mf/src/plugins/container/InvertedContainerRuntimeModule.ts b/packages/nextjs-mf/src/plugins/container/InvertedContainerRuntimeModule.ts index 36fde548251..11a875347c4 100644 --- a/packages/nextjs-mf/src/plugins/container/InvertedContainerRuntimeModule.ts +++ b/packages/nextjs-mf/src/plugins/container/InvertedContainerRuntimeModule.ts @@ -57,8 +57,9 @@ class InvertedContainerRuntimeModule extends RuntimeModule { const containerScope = `${RuntimeGlobals.global}`; return ` + var innerRemote; function attachRemote (resolve) { - var innerRemote = __webpack_require__(${JSON.stringify( + innerRemote = __webpack_require__(${JSON.stringify( containerModuleId, )}); if(${globalObject} && !${globalObject}[${JSON.stringify(name)}]) { @@ -68,26 +69,46 @@ class InvertedContainerRuntimeModule extends RuntimeModule { )}]) { ${containerScope}[${JSON.stringify(name)}] = innerRemote; } - __webpack_require__.S.default = new Proxy({}, { - get: function(target, property) { - if(typeof target[property] === 'object' && target[property] !== null) { - for(const key in target[property]) { - if(property.startsWith('next/') || property.startsWith('react') || property.startsWith('next-dom')) { - target[property][key].loaded = true - } - } + __webpack_require__.S.default = new Proxy({ + react: { + "18.0.0": { + loaded: true, + from: 'roothost', + get() {return innerRemote.get('./react')} } - + }, + "react-dom": { + "18.0.0": { + from: 'roothost', + loaded: true, + get() {return innerRemote.get('./react-dom')} + }, + }, + }, { + get: function(target, property) { + // if(typeof target[property] === 'object' && target[property] !== null) { + // for(const key in target[property]) { + // if(property.startsWith('next/') || property.startsWith('react') || property.startsWith('react-dom')) { + // //target[property][key].loaded = target[property][key].from === ${JSON.stringify(name)}; + // } + // } + // } + return target[property]; }, set: function(target, property, value) { - if(!target[property]) { - target[property] = value; - } + if(property.startsWith('next/') || property.startsWith('react') || property.startsWith('react-dom')) { +return true; +} + // console.log(reacts); + // if(!target[property]) { + target[property] = value; + + // } return true; } }); - + if(resolve) resolve(innerRemote); } if(!(${globalObject} && ${globalObject}[${JSON.stringify( From 4062025c334f3a053410959c77710475ac1b7e1e Mon Sep 17 00:00:00 2001 From: ScriptedAlchemy Date: Mon, 23 Oct 2023 13:46:37 -0700 Subject: [PATCH 002/185] ci: adding shortcut script to start next --- package.json | 1 + 1 file changed, 1 insertion(+) diff --git a/package.json b/package.json index 0f5bc996b70..62c47febf0d 100644 --- a/package.json +++ b/package.json @@ -24,6 +24,7 @@ "build": "nx run-many --target=build --parallel=3 --exclude='*,!tag:package'", "lint-fix": "nx format:write", "trigger-release": "node -e 'import(\"open\").then(open => open.default(\"https://github.com/module-federation/universe/actions/workflows/trigger-release.yml\"))'", + "serve:next":"nx run-many --target=serve --all --parallel=3 -exclude='*,!tag:nextjs'", "serve:website": "nx run website:serve", "build:website": "nx run website:build.netlify", "extract-i18n:website": "nx run website:extract-i18n", From b83dbe2bd2fecdce8398357fbf614630b112ab63 Mon Sep 17 00:00:00 2001 From: ScriptedAlchemy Date: Mon, 23 Oct 2023 14:08:33 -0700 Subject: [PATCH 003/185] fix(nextjs-mf): fix sharing strat to prever host always if react --- package.json | 3 ++- .../src/plugins/container/InvertedContainerRuntimeModule.ts | 2 ++ 2 files changed, 4 insertions(+), 1 deletion(-) diff --git a/package.json b/package.json index 62c47febf0d..4661ca4cff6 100644 --- a/package.json +++ b/package.json @@ -30,7 +30,8 @@ "extract-i18n:website": "nx run website:extract-i18n", "postinstall": "npm run sync:types:webpack", "sync:types:webpack": "cp -rf ./webpack/* ./node_modules/webpack", - "sync:pullMFTypes": "concurrently \"node ./packages/enhanced/pullts.js\"" + "sync:pullMFTypes": "concurrently \"node ./packages/enhanced/pullts.js\"", + "dev:start:next": "nx run-many --target=serve --configuration=development -p 3000-home 3001-shop 3002-checkout" }, "dependencies": { "adm-zip": "0.5.10", diff --git a/packages/nextjs-mf/src/plugins/container/InvertedContainerRuntimeModule.ts b/packages/nextjs-mf/src/plugins/container/InvertedContainerRuntimeModule.ts index 11a875347c4..3bd61b3fa52 100644 --- a/packages/nextjs-mf/src/plugins/container/InvertedContainerRuntimeModule.ts +++ b/packages/nextjs-mf/src/plugins/container/InvertedContainerRuntimeModule.ts @@ -73,6 +73,7 @@ class InvertedContainerRuntimeModule extends RuntimeModule { react: { "18.0.0": { loaded: true, + loaded: 1, from: 'roothost', get() {return innerRemote.get('./react')} } @@ -80,6 +81,7 @@ class InvertedContainerRuntimeModule extends RuntimeModule { "react-dom": { "18.0.0": { from: 'roothost', + loaded: 1, loaded: true, get() {return innerRemote.get('./react-dom')} }, From b4aec77f599f3079c8dc4c9022ef804f2cd6c2c2 Mon Sep 17 00:00:00 2001 From: ScriptedAlchemy Date: Mon, 23 Oct 2023 14:15:41 -0700 Subject: [PATCH 004/185] fix(nextjs-mf): starting and loading issues ensure share via expose is always selected --- package.json | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/package.json b/package.json index 4661ca4cff6..1576716a0b7 100644 --- a/package.json +++ b/package.json @@ -31,7 +31,8 @@ "postinstall": "npm run sync:types:webpack", "sync:types:webpack": "cp -rf ./webpack/* ./node_modules/webpack", "sync:pullMFTypes": "concurrently \"node ./packages/enhanced/pullts.js\"", - "dev:start:next": "nx run-many --target=serve --configuration=development -p 3000-home 3001-shop 3002-checkout" + "dev:next:dev": "nx run-many --target=serve --configuration=development -p 3000-home 3001-shop 3002-checkout", + "dev:next:prod": "nx run-many --target=build --configuration=production -p 3000-home 3001-shop 3002-checkout && nx run-many --target=serve --configuration=production -p 3000-home 3001-shop 3002-checkout" }, "dependencies": { "adm-zip": "0.5.10", From f4c38175f27f38b20d39c5ed2aec95de0e27a18f Mon Sep 17 00:00:00 2001 From: ScriptedAlchemy Date: Mon, 23 Oct 2023 15:15:36 -0700 Subject: [PATCH 005/185] fix(nextjs-mf): fixed broken prod builds do to missing shared module negotiations. --- package.json | 4 +- .../src/plugins/NextFederationPlugin/index.ts | 3 + .../InvertedContainerRuntimeModule.ts | 127 ++++++++---------- 3 files changed, 62 insertions(+), 72 deletions(-) diff --git a/package.json b/package.json index 1576716a0b7..36ac8de5a76 100644 --- a/package.json +++ b/package.json @@ -31,8 +31,8 @@ "postinstall": "npm run sync:types:webpack", "sync:types:webpack": "cp -rf ./webpack/* ./node_modules/webpack", "sync:pullMFTypes": "concurrently \"node ./packages/enhanced/pullts.js\"", - "dev:next:dev": "nx run-many --target=serve --configuration=development -p 3000-home 3001-shop 3002-checkout", - "dev:next:prod": "nx run-many --target=build --configuration=production -p 3000-home 3001-shop 3002-checkout && nx run-many --target=serve --configuration=production -p 3000-home 3001-shop 3002-checkout" + "app:next:dev": "nx run-many --target=build --configuration=development -p enhanced utils nextjs-mf && nx run-many --target=serve --configuration=development -p 3000-home 3001-shop 3002-checkout", + "app:next:prod": "nx run-many --target=build --configuration=production -p 3000-home 3001-shop 3002-checkout && nx run-many --target=serve --configuration=production -p 3000-home 3001-shop 3002-checkout" }, "dependencies": { "adm-zip": "0.5.10", diff --git a/packages/nextjs-mf/src/plugins/NextFederationPlugin/index.ts b/packages/nextjs-mf/src/plugins/NextFederationPlugin/index.ts index 34582fd5265..71db99b40d6 100644 --- a/packages/nextjs-mf/src/plugins/NextFederationPlugin/index.ts +++ b/packages/nextjs-mf/src/plugins/NextFederationPlugin/index.ts @@ -139,6 +139,9 @@ export class NextFederationPlugin { './noop': noop, './react': require.resolve('react'), './react-dom': require.resolve('react-dom'), + './next/router': require.resolve('next/router'), + './next/link': require.resolve('next/link'), + './next/head': require.resolve('next/head'), ...this._options.exposes, ...(this._extraOptions.exposePages ? exposeNextjsPages(compiler.options.context as string) diff --git a/packages/nextjs-mf/src/plugins/container/InvertedContainerRuntimeModule.ts b/packages/nextjs-mf/src/plugins/container/InvertedContainerRuntimeModule.ts index 3bd61b3fa52..4a878f552f4 100644 --- a/packages/nextjs-mf/src/plugins/container/InvertedContainerRuntimeModule.ts +++ b/packages/nextjs-mf/src/plugins/container/InvertedContainerRuntimeModule.ts @@ -1,7 +1,7 @@ import type Compiler from 'webpack/lib/Compiler'; import type Module from 'webpack/lib/Module'; import RuntimeModule from 'webpack/lib/RuntimeModule'; -import { RuntimeGlobals } from 'webpack'; +import { RuntimeGlobals, Template } from 'webpack'; interface InvertedContainerRuntimeModuleOptions { runtime: string; @@ -33,6 +33,26 @@ class InvertedContainerRuntimeModule extends RuntimeModule { this.compilation.chunkGraph.getChunkEntryModulesIterable(container); return Array.from(entryModules)[0]; } + private generateSharedObjectString(): string { + const sharedObjects = [ + { key: 'react', version: '18.100.0', path: './react' }, + { key: 'next/router', version: '13.100.0', path: './next/router' }, + { key: 'next/head', version: '13.100.0', path: './next/head' }, + { key: 'react-dom', version: '18.100.0', path: './react-dom' }, + ]; + + return sharedObjects.reduce((acc, obj) => { + return acc + ` + "${obj.key}": { + "${obj.version}": { + loaded: true, + loaded: 1, + from: "roothost", + get() { return innerRemote.get("${obj.path}") } + } + },`; + }, ''); + } override generate(): string { if (!this.compilation || !this.chunk || !this.chunkGraph) { @@ -55,78 +75,45 @@ class InvertedContainerRuntimeModule extends RuntimeModule { } const globalObject = `globalThis.__remote_scope__`; const containerScope = `${RuntimeGlobals.global}`; + const sharedObjectString = this.generateSharedObjectString(); - return ` - var innerRemote; - function attachRemote (resolve) { - innerRemote = __webpack_require__(${JSON.stringify( - containerModuleId, - )}); - if(${globalObject} && !${globalObject}[${JSON.stringify(name)}]) { - ${globalObject}[${JSON.stringify(name)}] = innerRemote; - } else if(${containerScope} && !${containerScope}[${JSON.stringify( - name, - )}]) { - ${containerScope}[${JSON.stringify(name)}] = innerRemote; - } - __webpack_require__.S.default = new Proxy({ - react: { - "18.0.0": { - loaded: true, - loaded: 1, - from: 'roothost', - get() {return innerRemote.get('./react')} - } - }, - "react-dom": { - "18.0.0": { - from: 'roothost', - loaded: 1, - loaded: true, - get() {return innerRemote.get('./react-dom')} - }, - }, - }, { - get: function(target, property) { - // if(typeof target[property] === 'object' && target[property] !== null) { - // for(const key in target[property]) { - // if(property.startsWith('next/') || property.startsWith('react') || property.startsWith('react-dom')) { - // //target[property][key].loaded = target[property][key].from === ${JSON.stringify(name)}; - // } - // } - // } - return target[property]; - }, - set: function(target, property, value) { - if(property.startsWith('next/') || property.startsWith('react') || property.startsWith('react-dom')) { -return true; -} - // console.log(reacts); - // if(!target[property]) { - target[property] = value; + return Template.asString([ + 'var innerRemote;', + Template.indent([ + 'function attachRemote (resolve) {', + ` innerRemote = __webpack_require__(${JSON.stringify(containerModuleId)});`, + ` if(${globalObject} && !${globalObject}[${JSON.stringify(name)}]) {`, + ` ${globalObject}[${JSON.stringify(name)}] = innerRemote;`, + ` } else if(${containerScope} && !${containerScope}[${JSON.stringify(name)}]) {`, + ` ${containerScope}[${JSON.stringify(name)}] = innerRemote;`, + ' }', + ` __webpack_require__.S.default = new Proxy({${sharedObjectString}}`, + ' , {', + ' get: function(target, property) {', + ' return target[property];', + ' },', + ' set: function(target, property, value) {', + ' target[property] = value;', + ' return true;', + ' }', + ' });', + ' if(resolve) resolve(innerRemote);', + '}', + ]), + `if(!(${globalObject} && ${globalObject}[${JSON.stringify(name)}]) && !(${containerScope} && ${containerScope}[${JSON.stringify(name)}])) {`, + Template.indent([ + ' if (__webpack_require__.O) {', + ` __webpack_require__.O(0, ["${this.chunk.id}"], function() {`, + ' attachRemote();', + ' }, 0);', + '} else {', + 'attachRemote();', + '}', + ]), + '}' + ]) - // } - return true; - } - }); - - if(resolve) resolve(innerRemote); - } - if(!(${globalObject} && ${globalObject}[${JSON.stringify( - name, - )}]) && !(${containerScope} && ${containerScope}[${JSON.stringify( - name, - )}])) { - if (__webpack_require__.O) { - __webpack_require__.O(0, ["${this.chunk.id}"], function() { - attachRemote(); - }, 0); - } else { - attachRemote(); - } - } - `; } } From c7c85c5b0b0d764ee5fa0ba1a403bfe4d2cf532d Mon Sep 17 00:00:00 2001 From: ScriptedAlchemy Date: Mon, 23 Oct 2023 15:19:27 -0700 Subject: [PATCH 006/185] fix(nextjs-mf): adding link and image to new shared setup --- packages/nextjs-mf/src/plugins/NextFederationPlugin/index.ts | 1 + .../src/plugins/container/InvertedContainerRuntimeModule.ts | 2 ++ 2 files changed, 3 insertions(+) diff --git a/packages/nextjs-mf/src/plugins/NextFederationPlugin/index.ts b/packages/nextjs-mf/src/plugins/NextFederationPlugin/index.ts index 71db99b40d6..97dcecf540b 100644 --- a/packages/nextjs-mf/src/plugins/NextFederationPlugin/index.ts +++ b/packages/nextjs-mf/src/plugins/NextFederationPlugin/index.ts @@ -141,6 +141,7 @@ export class NextFederationPlugin { './react-dom': require.resolve('react-dom'), './next/router': require.resolve('next/router'), './next/link': require.resolve('next/link'), + './next/image': require.resolve('next/image'), './next/head': require.resolve('next/head'), ...this._options.exposes, ...(this._extraOptions.exposePages diff --git a/packages/nextjs-mf/src/plugins/container/InvertedContainerRuntimeModule.ts b/packages/nextjs-mf/src/plugins/container/InvertedContainerRuntimeModule.ts index 4a878f552f4..aedd4465bf0 100644 --- a/packages/nextjs-mf/src/plugins/container/InvertedContainerRuntimeModule.ts +++ b/packages/nextjs-mf/src/plugins/container/InvertedContainerRuntimeModule.ts @@ -38,6 +38,8 @@ class InvertedContainerRuntimeModule extends RuntimeModule { { key: 'react', version: '18.100.0', path: './react' }, { key: 'next/router', version: '13.100.0', path: './next/router' }, { key: 'next/head', version: '13.100.0', path: './next/head' }, + { key: 'next/link', version: '13.100.0', path: './next/link' }, + { key: 'next/image', version: '13.100.0', path: './next/image' }, { key: 'react-dom', version: '18.100.0', path: './react-dom' }, ]; From 4dd87a1ae2ca088c0f13a445509affe5268949a7 Mon Sep 17 00:00:00 2001 From: ScriptedAlchemy Date: Mon, 23 Oct 2023 15:30:53 -0700 Subject: [PATCH 007/185] style(docs-ui): linting docs --- apps/docs-ui/src/app/js/02-on-this-page.ts | 2 +- apps/docs-ui/src/app/js/03-fragment-jumper.ts | 2 +- .../docs-ui/src/app/js/06-copy-to-clipboard.ts | 10 +++++----- .../src/app/js/vendor/highlight.bundle.js | 18 +++++++++--------- apps/docs-ui/webpack.config.js | 2 +- 5 files changed, 17 insertions(+), 17 deletions(-) diff --git a/apps/docs-ui/src/app/js/02-on-this-page.ts b/apps/docs-ui/src/app/js/02-on-this-page.ts index 564fdc45a48..b48767bfe27 100644 --- a/apps/docs-ui/src/app/js/02-on-this-page.ts +++ b/apps/docs-ui/src/app/js/02-on-this-page.ts @@ -122,7 +122,7 @@ export default function () { if (list.scrollHeight > list.offsetHeight) { list.scrollTop = Math.max( 0, - activeLink.offsetTop + activeLink.offsetHeight - list.offsetHeight, + activeLink.offsetTop + activeLink.offsetHeight - list.offsetHeight ); } lastActiveFragment = activeFragment; diff --git a/apps/docs-ui/src/app/js/03-fragment-jumper.ts b/apps/docs-ui/src/app/js/03-fragment-jumper.ts index a1b0333c86e..672177edd35 100644 --- a/apps/docs-ui/src/app/js/03-fragment-jumper.ts +++ b/apps/docs-ui/src/app/js/03-fragment-jumper.ts @@ -22,7 +22,7 @@ export default function () { } window.scrollTo( 0, - computePosition(this, 0) - toolbar.getBoundingClientRect().bottom, + computePosition(this, 0) - toolbar.getBoundingClientRect().bottom ); } diff --git a/apps/docs-ui/src/app/js/06-copy-to-clipboard.ts b/apps/docs-ui/src/app/js/06-copy-to-clipboard.ts index 605a158e983..cb89f406b85 100644 --- a/apps/docs-ui/src/app/js/06-copy-to-clipboard.ts +++ b/apps/docs-ui/src/app/js/06-copy-to-clipboard.ts @@ -12,7 +12,7 @@ export default function () { [].slice .call( - document.querySelectorAll('.doc pre.highlight, .doc .literalblock pre'), + document.querySelectorAll('.doc pre.highlight, .doc .literalblock pre') ) .forEach((pre) => { let code, language, lang, copy, toast, toolbox; @@ -43,16 +43,16 @@ export default function () { if (svgAs === 'svg') { const svg = document.createElementNS( 'http://www.w3.org/2000/svg', - 'svg', + 'svg' ); svg.setAttribute('class', 'copy-icon'); const use = document.createElementNS( 'http://www.w3.org/2000/svg', - 'use', + 'use' ); use.setAttribute( 'href', - uiRootPath + '/img/octicons-16.svg#icon-clippy', + uiRootPath + '/img/octicons-16.svg#icon-clippy' ); svg.appendChild(use); copy.appendChild(svg); @@ -92,7 +92,7 @@ export default function () { this.classList.remove('clicked'); }, // eslint-disable-next-line @typescript-eslint/no-empty-function - () => {}, + () => {} ); } } diff --git a/apps/docs-ui/src/app/js/vendor/highlight.bundle.js b/apps/docs-ui/src/app/js/vendor/highlight.bundle.js index 941a1a70407..309dfc373f6 100644 --- a/apps/docs-ui/src/app/js/vendor/highlight.bundle.js +++ b/apps/docs-ui/src/app/js/vendor/highlight.bundle.js @@ -4,53 +4,53 @@ const hljs = require('highlight.js/lib/highlight'); hljs.registerLanguage( 'asciidoc', - require('highlight.js/lib/languages/asciidoc'), + require('highlight.js/lib/languages/asciidoc') ); hljs.registerLanguage('bash', require('highlight.js/lib/languages/bash')); hljs.registerLanguage( 'clojure', - require('highlight.js/lib/languages/clojure'), + require('highlight.js/lib/languages/clojure') ); hljs.registerLanguage('cpp', require('highlight.js/lib/languages/cpp')); hljs.registerLanguage('css', require('highlight.js/lib/languages/css')); hljs.registerLanguage('diff', require('highlight.js/lib/languages/diff')); hljs.registerLanguage( 'dockerfile', - require('highlight.js/lib/languages/dockerfile'), + require('highlight.js/lib/languages/dockerfile') ); hljs.registerLanguage('elixir', require('highlight.js/lib/languages/elixir')); hljs.registerLanguage('go', require('highlight.js/lib/languages/go')); hljs.registerLanguage('groovy', require('highlight.js/lib/languages/groovy')); hljs.registerLanguage( 'haskell', - require('highlight.js/lib/languages/haskell'), + require('highlight.js/lib/languages/haskell') ); hljs.registerLanguage('java', require('highlight.js/lib/languages/java')); hljs.registerLanguage( 'javascript', - require('highlight.js/lib/languages/javascript'), + require('highlight.js/lib/languages/javascript') ); hljs.registerLanguage('json', require('highlight.js/lib/languages/json')); hljs.registerLanguage('kotlin', require('highlight.js/lib/languages/kotlin')); hljs.registerLanguage('lua', require('highlight.js/lib/languages/lua')); hljs.registerLanguage( 'markdown', - require('highlight.js/lib/languages/markdown'), + require('highlight.js/lib/languages/markdown') ); hljs.registerLanguage('nix', require('highlight.js/lib/languages/nix')); hljs.registerLanguage( 'none', - require('highlight.js/lib/languages/plaintext'), + require('highlight.js/lib/languages/plaintext') ); hljs.registerLanguage( 'objectivec', - require('highlight.js/lib/languages/objectivec'), + require('highlight.js/lib/languages/objectivec') ); hljs.registerLanguage('perl', require('highlight.js/lib/languages/perl')); hljs.registerLanguage('php', require('highlight.js/lib/languages/php')); hljs.registerLanguage( 'properties', - require('highlight.js/lib/languages/properties'), + require('highlight.js/lib/languages/properties') ); hljs.registerLanguage('puppet', require('highlight.js/lib/languages/puppet')); hljs.registerLanguage('python', require('highlight.js/lib/languages/python')); diff --git a/apps/docs-ui/webpack.config.js b/apps/docs-ui/webpack.config.js index 82175765a91..624dcbcef5b 100644 --- a/apps/docs-ui/webpack.config.js +++ b/apps/docs-ui/webpack.config.js @@ -7,7 +7,7 @@ module.exports = composePlugins(withNx(), withWeb(), (config) => { config.plugins.push( new CopyWebpackPlugin({ patterns: staticAssets.map((a) => ({ from: `src/app/${a}`, to: a })), - }), + }) ); // Update the webpack config as needed here. // e.g. `config.plugins.push(new MyPlugin())` From 808458aa2a6228ea483878af75a640dd60c525d8 Mon Sep 17 00:00:00 2001 From: ScriptedAlchemy Date: Mon, 23 Oct 2023 15:38:11 -0700 Subject: [PATCH 008/185] style: linting issues --- apps/docs-ui/src/app/js/02-on-this-page.ts | 2 +- apps/docs-ui/src/app/js/03-fragment-jumper.ts | 2 +- .../src/app/js/06-copy-to-clipboard.ts | 10 +-- .../src/app/js/vendor/highlight.bundle.js | 18 ++--- apps/docs-ui/webpack.config.js | 2 +- package.json | 2 +- .../InvertedContainerRuntimeModule.ts | 75 +++++++++++-------- 7 files changed, 60 insertions(+), 51 deletions(-) diff --git a/apps/docs-ui/src/app/js/02-on-this-page.ts b/apps/docs-ui/src/app/js/02-on-this-page.ts index b48767bfe27..564fdc45a48 100644 --- a/apps/docs-ui/src/app/js/02-on-this-page.ts +++ b/apps/docs-ui/src/app/js/02-on-this-page.ts @@ -122,7 +122,7 @@ export default function () { if (list.scrollHeight > list.offsetHeight) { list.scrollTop = Math.max( 0, - activeLink.offsetTop + activeLink.offsetHeight - list.offsetHeight + activeLink.offsetTop + activeLink.offsetHeight - list.offsetHeight, ); } lastActiveFragment = activeFragment; diff --git a/apps/docs-ui/src/app/js/03-fragment-jumper.ts b/apps/docs-ui/src/app/js/03-fragment-jumper.ts index 672177edd35..a1b0333c86e 100644 --- a/apps/docs-ui/src/app/js/03-fragment-jumper.ts +++ b/apps/docs-ui/src/app/js/03-fragment-jumper.ts @@ -22,7 +22,7 @@ export default function () { } window.scrollTo( 0, - computePosition(this, 0) - toolbar.getBoundingClientRect().bottom + computePosition(this, 0) - toolbar.getBoundingClientRect().bottom, ); } diff --git a/apps/docs-ui/src/app/js/06-copy-to-clipboard.ts b/apps/docs-ui/src/app/js/06-copy-to-clipboard.ts index cb89f406b85..605a158e983 100644 --- a/apps/docs-ui/src/app/js/06-copy-to-clipboard.ts +++ b/apps/docs-ui/src/app/js/06-copy-to-clipboard.ts @@ -12,7 +12,7 @@ export default function () { [].slice .call( - document.querySelectorAll('.doc pre.highlight, .doc .literalblock pre') + document.querySelectorAll('.doc pre.highlight, .doc .literalblock pre'), ) .forEach((pre) => { let code, language, lang, copy, toast, toolbox; @@ -43,16 +43,16 @@ export default function () { if (svgAs === 'svg') { const svg = document.createElementNS( 'http://www.w3.org/2000/svg', - 'svg' + 'svg', ); svg.setAttribute('class', 'copy-icon'); const use = document.createElementNS( 'http://www.w3.org/2000/svg', - 'use' + 'use', ); use.setAttribute( 'href', - uiRootPath + '/img/octicons-16.svg#icon-clippy' + uiRootPath + '/img/octicons-16.svg#icon-clippy', ); svg.appendChild(use); copy.appendChild(svg); @@ -92,7 +92,7 @@ export default function () { this.classList.remove('clicked'); }, // eslint-disable-next-line @typescript-eslint/no-empty-function - () => {} + () => {}, ); } } diff --git a/apps/docs-ui/src/app/js/vendor/highlight.bundle.js b/apps/docs-ui/src/app/js/vendor/highlight.bundle.js index 309dfc373f6..941a1a70407 100644 --- a/apps/docs-ui/src/app/js/vendor/highlight.bundle.js +++ b/apps/docs-ui/src/app/js/vendor/highlight.bundle.js @@ -4,53 +4,53 @@ const hljs = require('highlight.js/lib/highlight'); hljs.registerLanguage( 'asciidoc', - require('highlight.js/lib/languages/asciidoc') + require('highlight.js/lib/languages/asciidoc'), ); hljs.registerLanguage('bash', require('highlight.js/lib/languages/bash')); hljs.registerLanguage( 'clojure', - require('highlight.js/lib/languages/clojure') + require('highlight.js/lib/languages/clojure'), ); hljs.registerLanguage('cpp', require('highlight.js/lib/languages/cpp')); hljs.registerLanguage('css', require('highlight.js/lib/languages/css')); hljs.registerLanguage('diff', require('highlight.js/lib/languages/diff')); hljs.registerLanguage( 'dockerfile', - require('highlight.js/lib/languages/dockerfile') + require('highlight.js/lib/languages/dockerfile'), ); hljs.registerLanguage('elixir', require('highlight.js/lib/languages/elixir')); hljs.registerLanguage('go', require('highlight.js/lib/languages/go')); hljs.registerLanguage('groovy', require('highlight.js/lib/languages/groovy')); hljs.registerLanguage( 'haskell', - require('highlight.js/lib/languages/haskell') + require('highlight.js/lib/languages/haskell'), ); hljs.registerLanguage('java', require('highlight.js/lib/languages/java')); hljs.registerLanguage( 'javascript', - require('highlight.js/lib/languages/javascript') + require('highlight.js/lib/languages/javascript'), ); hljs.registerLanguage('json', require('highlight.js/lib/languages/json')); hljs.registerLanguage('kotlin', require('highlight.js/lib/languages/kotlin')); hljs.registerLanguage('lua', require('highlight.js/lib/languages/lua')); hljs.registerLanguage( 'markdown', - require('highlight.js/lib/languages/markdown') + require('highlight.js/lib/languages/markdown'), ); hljs.registerLanguage('nix', require('highlight.js/lib/languages/nix')); hljs.registerLanguage( 'none', - require('highlight.js/lib/languages/plaintext') + require('highlight.js/lib/languages/plaintext'), ); hljs.registerLanguage( 'objectivec', - require('highlight.js/lib/languages/objectivec') + require('highlight.js/lib/languages/objectivec'), ); hljs.registerLanguage('perl', require('highlight.js/lib/languages/perl')); hljs.registerLanguage('php', require('highlight.js/lib/languages/php')); hljs.registerLanguage( 'properties', - require('highlight.js/lib/languages/properties') + require('highlight.js/lib/languages/properties'), ); hljs.registerLanguage('puppet', require('highlight.js/lib/languages/puppet')); hljs.registerLanguage('python', require('highlight.js/lib/languages/python')); diff --git a/apps/docs-ui/webpack.config.js b/apps/docs-ui/webpack.config.js index 624dcbcef5b..82175765a91 100644 --- a/apps/docs-ui/webpack.config.js +++ b/apps/docs-ui/webpack.config.js @@ -7,7 +7,7 @@ module.exports = composePlugins(withNx(), withWeb(), (config) => { config.plugins.push( new CopyWebpackPlugin({ patterns: staticAssets.map((a) => ({ from: `src/app/${a}`, to: a })), - }) + }), ); // Update the webpack config as needed here. // e.g. `config.plugins.push(new MyPlugin())` diff --git a/package.json b/package.json index 36ac8de5a76..e0cacab65ac 100644 --- a/package.json +++ b/package.json @@ -24,7 +24,7 @@ "build": "nx run-many --target=build --parallel=3 --exclude='*,!tag:package'", "lint-fix": "nx format:write", "trigger-release": "node -e 'import(\"open\").then(open => open.default(\"https://github.com/module-federation/universe/actions/workflows/trigger-release.yml\"))'", - "serve:next":"nx run-many --target=serve --all --parallel=3 -exclude='*,!tag:nextjs'", + "serve:next": "nx run-many --target=serve --all --parallel=3 -exclude='*,!tag:nextjs'", "serve:website": "nx run website:serve", "build:website": "nx run website:build.netlify", "extract-i18n:website": "nx run website:extract-i18n", diff --git a/packages/nextjs-mf/src/plugins/container/InvertedContainerRuntimeModule.ts b/packages/nextjs-mf/src/plugins/container/InvertedContainerRuntimeModule.ts index aedd4465bf0..8dc5c6b43f4 100644 --- a/packages/nextjs-mf/src/plugins/container/InvertedContainerRuntimeModule.ts +++ b/packages/nextjs-mf/src/plugins/container/InvertedContainerRuntimeModule.ts @@ -44,7 +44,9 @@ class InvertedContainerRuntimeModule extends RuntimeModule { ]; return sharedObjects.reduce((acc, obj) => { - return acc + ` + return ( + acc + + ` "${obj.key}": { "${obj.version}": { loaded: true, @@ -52,7 +54,8 @@ class InvertedContainerRuntimeModule extends RuntimeModule { from: "roothost", get() { return innerRemote.get("${obj.path}") } } - },`; + },` + ); }, ''); } @@ -79,43 +82,49 @@ class InvertedContainerRuntimeModule extends RuntimeModule { const containerScope = `${RuntimeGlobals.global}`; const sharedObjectString = this.generateSharedObjectString(); - return Template.asString([ 'var innerRemote;', Template.indent([ - 'function attachRemote (resolve) {', - ` innerRemote = __webpack_require__(${JSON.stringify(containerModuleId)});`, - ` if(${globalObject} && !${globalObject}[${JSON.stringify(name)}]) {`, - ` ${globalObject}[${JSON.stringify(name)}] = innerRemote;`, - ` } else if(${containerScope} && !${containerScope}[${JSON.stringify(name)}]) {`, - ` ${containerScope}[${JSON.stringify(name)}] = innerRemote;`, - ' }', - ` __webpack_require__.S.default = new Proxy({${sharedObjectString}}`, - ' , {', - ' get: function(target, property) {', - ' return target[property];', - ' },', - ' set: function(target, property, value) {', - ' target[property] = value;', - ' return true;', - ' }', - ' });', - ' if(resolve) resolve(innerRemote);', - '}', + 'function attachRemote (resolve) {', + ` innerRemote = __webpack_require__(${JSON.stringify( + containerModuleId, + )});`, + ` if(${globalObject} && !${globalObject}[${JSON.stringify(name)}]) {`, + ` ${globalObject}[${JSON.stringify(name)}] = innerRemote;`, + ` } else if(${containerScope} && !${containerScope}[${JSON.stringify( + name, + )}]) {`, + ` ${containerScope}[${JSON.stringify(name)}] = innerRemote;`, + ' }', + ` __webpack_require__.S.default = new Proxy({${sharedObjectString}}`, + ' , {', + ' get: function(target, property) {', + ' return target[property];', + ' },', + ' set: function(target, property, value) {', + ' target[property] = value;', + ' return true;', + ' }', + ' });', + ' if(resolve) resolve(innerRemote);', + '}', ]), - `if(!(${globalObject} && ${globalObject}[${JSON.stringify(name)}]) && !(${containerScope} && ${containerScope}[${JSON.stringify(name)}])) {`, + `if(!(${globalObject} && ${globalObject}[${JSON.stringify( + name, + )}]) && !(${containerScope} && ${containerScope}[${JSON.stringify( + name, + )}])) {`, Template.indent([ - ' if (__webpack_require__.O) {', - ` __webpack_require__.O(0, ["${this.chunk.id}"], function() {`, - ' attachRemote();', - ' }, 0);', - '} else {', - 'attachRemote();', - '}', + ' if (__webpack_require__.O) {', + ` __webpack_require__.O(0, ["${this.chunk.id}"], function() {`, + ' attachRemote();', + ' }, 0);', + '} else {', + 'attachRemote();', + '}', ]), - '}' - ]) - + '}', + ]); } } From 0d08545ab8727aa1657d5a41803234f596574411 Mon Sep 17 00:00:00 2001 From: semantic-release-bot Date: Mon, 23 Oct 2023 22:50:10 +0000 Subject: [PATCH 009/185] chore(release): Release nextjs-mf v8.1.0-canary.1 [skip ci] --- packages/nextjs-mf/CHANGELOG.md | 130 ++++++++++++++++++++++++++++++++ packages/nextjs-mf/package.json | 2 +- 2 files changed, 131 insertions(+), 1 deletion(-) diff --git a/packages/nextjs-mf/CHANGELOG.md b/packages/nextjs-mf/CHANGELOG.md index 9c0ae1a8f34..946495b57a2 100644 --- a/packages/nextjs-mf/CHANGELOG.md +++ b/packages/nextjs-mf/CHANGELOG.md @@ -1,3 +1,133 @@ +# [8.1.0-canary.1](https://github.com/module-federation/universe/compare/nextjs-mf-8.0.0...nextjs-mf-8.1.0-canary.1) (2023-10-23) + + +### Bug Fixes + +* add exported file ([19b1afb](https://github.com/module-federation/universe/commit/19b1afbd58572897f36b16926f841e35d154c712)) +* add missing serialize method on RemoteModule ([e7ac801](https://github.com/module-federation/universe/commit/e7ac801151b08dbb5ca025bd8ac03683f792f92f)) +* add override to remoteModule ([875038a](https://github.com/module-federation/universe/commit/875038ad68dfed05822c1bc7c68ae91e57282f4f)) +* add share logic just for next ([c947a50](https://github.com/module-federation/universe/commit/c947a504224feac5bbb5d3788d3cfc21dd9c5b28)) +* add styled-jsx to internal share ([a50dae8](https://github.com/module-federation/universe/commit/a50dae8ead5ed46491bf3cfa8452a536ba0de622)) +* Auto Public Path, detect multiple output targets ([65f17b1](https://github.com/module-federation/universe/commit/65f17b189f37e0ad9e72bb0bf04463e9c5455929)) +* bad impleentation during federation port ([cc2e53f](https://github.com/module-federation/universe/commit/cc2e53f0351fb94c9068223ad6b8d990a913ab53)) +* broken versioning issues in consumes ([e7fada2](https://github.com/module-federation/universe/commit/e7fada211b1e58dc52eafeff4210a9ce62636f9d)) +* change exports for module info runtime ([f40c538](https://github.com/module-federation/universe/commit/f40c538221353a61938cadf624c9235ec8eb4cce)) +* chunk flushing ([c9df545](https://github.com/module-federation/universe/commit/c9df5451c84e6458b392884492bf669bf7383d5c)) +* **deps:** update dependency axios to v1.5.1 ([ae9a06a](https://github.com/module-federation/universe/commit/ae9a06a0cc35fad27a0b493a25370b92617c39fb)) +* **deps:** update dependency core-js to v3.33.0 ([30894ca](https://github.com/module-federation/universe/commit/30894cafbe5dea4350dc7c633548038d7ec5f8a8)) +* **deps:** update dependency typedoc to v0.25.2 ([46c6524](https://github.com/module-federation/universe/commit/46c65247e187cee9e15625402c1570ac351bb1fe)) +* **deps:** update dependency undici to v5.25.2 ([da3e539](https://github.com/module-federation/universe/commit/da3e539a41ed23ccb5086b1dd428fbee0f8d652c)) +* **deps:** update dependency undici to v5.25.4 ([1d4f91e](https://github.com/module-federation/universe/commit/1d4f91ec93da4326c8a42eef28f150d5d09738bb)) +* **deps:** update dependency unplugin to v1.5.0 ([936b3f8](https://github.com/module-federation/universe/commit/936b3f8d8061fd9d481d1788fb35b88588928d14)) +* dont crash offline remotes ([f0d7671](https://github.com/module-federation/universe/commit/f0d7671569ac34f64017a303739b54880f5220e6)) +* dont patch webpack env var ([757d44b](https://github.com/module-federation/universe/commit/757d44bc74b543f26a022223b5ae2d1d640838ea)) +* enable path fixes ([2f9e14b](https://github.com/module-federation/universe/commit/2f9e14b602c71d357063a8168d8ea8c554bcb2ca)) +* enable path fixes again ([6098fee](https://github.com/module-federation/universe/commit/6098fee3b3734018ec0f4866656709f3b5d20173)) +* **enhanced:** module info duplication ([49b4a57](https://github.com/module-federation/universe/commit/49b4a5736714c1db4510d10cdd5fe0277123caa8)) +* **enhanced:** syntax issue in proxy ([2e5848b](https://github.com/module-federation/universe/commit/2e5848b4be3e3bba46508a427c1bc8f2d3043c8d)) +* ensure chunk handler exists before calling it ([98ba838](https://github.com/module-federation/universe/commit/98ba838f979bbef11f5d678c3bf27a4de534cf9d)) +* ensure custom FS works with target: node or async node preset ([a08fcab](https://github.com/module-federation/universe/commit/a08fcab7dde903966d34be9dab0b34c8896948ca)) +* ensure sharing of react/jsx runtime and dev runtime ([ae890d5](https://github.com/module-federation/universe/commit/ae890d5e5698c729618d602053b4336b067dd34a)) +* export parseRemotes ([12ed54c](https://github.com/module-federation/universe/commit/12ed54c87ba539bc2a79cdee86058f0a2776653e)) +* fix styled-jsx flushing ([207db51](https://github.com/module-federation/universe/commit/207db51c16f9b92c8e0c25f0b2157359488e552d)) +* hot reloading system ([99f733b](https://github.com/module-federation/universe/commit/99f733bbdbd727a99fbaaeab3f92f4b65fa568dd)) +* ignore TS issues in async plugin ([f6e3e7f](https://github.com/module-federation/universe/commit/f6e3e7f9ca6aabdf26752f8f794e1176fc73af1c)) +* import utils manually ([2767191](https://github.com/module-federation/universe/commit/2767191467d9d685704b747d42b5f170da233847)) +* improve backward compat __remote_scope__ global ([ac0efa3](https://github.com/module-federation/universe/commit/ac0efa37d975a130aa3badc657fa66d723865a5b)) +* improve externals lookup ([5630eb9](https://github.com/module-federation/universe/commit/5630eb9e891e5a819938f3eb9742a882dac1ef16)) +* improve image loader public path calc ([d86dcde](https://github.com/module-federation/universe/commit/d86dcde344d5d9b7430512672ec26c53ac0f100e)) +* improve logic in runtime module info proxy ([8eea1a8](https://github.com/module-federation/universe/commit/8eea1a84ae6a12f69dbb16d00f52ec902efbdda6)) +* legacy scope duplication on recreation ([347e4c9](https://github.com/module-federation/universe/commit/347e4c96e87ff4f28dce319fc6b2fe40f1cbabee)) +* lint container module ([ea4f105](https://github.com/module-federation/universe/commit/ea4f105e4949f041a8747a0e3ce50e7020598f88)) +* module order of inverted container runtime ([90caa8d](https://github.com/module-federation/universe/commit/90caa8dc80f9af7c6c6f8d7a4a437e337540ddc3)) +* move cache file hashing to next-mf ([11917bf](https://github.com/module-federation/universe/commit/11917bf4500b9ebdb14b46631d89350a98511461)) +* **nextjs-mf:** adding link and image to new shared setup ([8bd3c05](https://github.com/module-federation/universe/commit/8bd3c059a8ebd9c00d3ec2a59afe8a3337c85960)) +* **nextjs-mf:** fix sharing strat to prever host always if react ([759e2ee](https://github.com/module-federation/universe/commit/759e2ee85d71ecde62ef29672fcb58211d2f65e8)) +* **nextjs-mf:** fixed broken prod builds do to missing shared module negotiations. ([07d1931](https://github.com/module-federation/universe/commit/07d19317ef22945fcb27ea577f63babcf7041a85)) +* **nextjs-mf:** starting and loading issues ([0f37165](https://github.com/module-federation/universe/commit/0f371653405ccb4c219432ac8df273effdb60c97)) +* no external helpers ([6c47fd4](https://github.com/module-federation/universe/commit/6c47fd4ce19f2292f6718d201005fba4a8552252)) +* **node:** use ES6 imports and override method in FederationModuleInfoRuntimeModule (#bytedance) ([d420ad9](https://github.com/module-federation/universe/commit/d420ad94b7515123254af45c61704abcc0971511)) +* override semantic-release-plugin-decorators ([18675de](https://github.com/module-federation/universe/commit/18675defef65570d2b3bb6a9caa3fd039badee29)) +* package data ([992d298](https://github.com/module-federation/universe/commit/992d2985c29d0bf86de6739f728fbf64749e7fd0)) +* preset process.env.NEXT_PRIVATE_LOCAL_WEBPACK ([dc236a1](https://github.com/module-federation/universe/commit/dc236a15a4a8ffee42f8e50a78adc80ad4976fbc)) +* reduce noise on async boundary plugin ([9bab3de](https://github.com/module-federation/universe/commit/9bab3de0b556120e60303921881fa4d857fe71d4)) +* remote global share scope ([e05d32f](https://github.com/module-federation/universe/commit/e05d32f489880d6b4e0fc21a3807e619a40bc5b3)) +* remove ensure remote runtime module ([d06c082](https://github.com/module-federation/universe/commit/d06c0823435063dcd277897ab551cd3a9c996d3d)) +* remove hard coded share scope ([105c124](https://github.com/module-federation/universe/commit/105c12441199621b11a85eb5368315175f127523)) +* remove logger in filesystem ([c370ed5](https://github.com/module-federation/universe/commit/c370ed5fdc5fe3423703f29daa40a4227ac51cf2)) +* remove logging on DFS ([40b8c28](https://github.com/module-federation/universe/commit/40b8c28fac9c39fec8623415a36e487152c2ef34)) +* remove logs from flush chunks ([b7d317c](https://github.com/module-federation/universe/commit/b7d317c4b2b0eda2f3530315dbf471289fa6918b)) +* resupport delegate modules ([f4843ec](https://github.com/module-federation/universe/commit/f4843ecd28b4361064be4342565e6d32eafacb2d)) +* search registry for both ident and unique name ([f22dc25](https://github.com/module-federation/universe/commit/f22dc25e5a6374273b1bc51b0e101b57226c5906)) +* server sharing ([1c5c6a8](https://github.com/module-federation/universe/commit/1c5c6a8cc8519c157842ae5bf79655710f7acaaf)) +* set requiredVersion to false on utils ([1e325a6](https://github.com/module-federation/universe/commit/1e325a6dedb4249c18dde8ce3ae7e57ece26a3ae)) +* share styled-jsx/css ([0a44bbd](https://github.com/module-federation/universe/commit/0a44bbdbac5f9b1debb8680894265e3670f0ac51)) +* simplify template ([b4e633b](https://github.com/module-federation/universe/commit/b4e633b6624264456800bc7351c6d815430d42b5)) +* stats plugin updates ([c1db325](https://github.com/module-federation/universe/commit/c1db325d3311b2126964f4ad2ddbfa9d82a50674)) +* switch to @goestav/nx-semantic-release ([63a3350](https://github.com/module-federation/universe/commit/63a3350a6a1a12235e3c9f1e7c724d54f0476356)) +* throw errors if NEXT_PRIVATE_LOCAL_WEBPACK is false ([1256488](https://github.com/module-federation/universe/commit/1256488870ee8d23b0daafe6b6041228652ab883)) +* Ts import error ([6e7974c](https://github.com/module-federation/universe/commit/6e7974c22874378122ab31eea27dddd0604505db)) +* TS imports to webpack ([d506b49](https://github.com/module-federation/universe/commit/d506b492b724ccfb7fdcf6234196ac421564c153)) +* TS imports, missing module methods ([8eb422d](https://github.com/module-federation/universe/commit/8eb422d30e149cb0d96835f036ec73ce1ccafe53)) +* ts in template string ([0a0d03d](https://github.com/module-federation/universe/commit/0a0d03dd9acb465f0b80bdd9787150e586e6bfcf)) +* ts in template string ([579b341](https://github.com/module-federation/universe/commit/579b341a5eb38ca6396da15f9667729ab84d2ff6)) +* ts in template string ([37e790a](https://github.com/module-federation/universe/commit/37e790a7b46ff6d8c8fd2c12cfd5629900db1b53)) +* ts in template string ([0edbbea](https://github.com/module-federation/universe/commit/0edbbeaa42503237b88132252e29a34a79bade51)) +* ts in template string ([1d56efd](https://github.com/module-federation/universe/commit/1d56efdf3d0bc78d19d187fe561fbbf453bada87)) +* ts in template string ([9b8f652](https://github.com/module-federation/universe/commit/9b8f652f96bf6f29d5fc238bb616e19187158a57)) +* ts in template string ([113d703](https://github.com/module-federation/universe/commit/113d7037de8238ed0bcf9418ac1bf3d082fbea66)) +* typescript issues ([0a07481](https://github.com/module-federation/universe/commit/0a07481552e1df6b35506165cbc649996004c318)) +* use access public ([6ab884e](https://github.com/module-federation/universe/commit/6ab884e824063db16a38c55df943a23d94338d4c)) +* use ES5 for renderStartup of entrypoint ([d14324a](https://github.com/module-federation/universe/commit/d14324a9af856fca974a8f9945ba7d0d2a96be48)) + + +### Features + +* container inversion module injection ([52ad258](https://github.com/module-federation/universe/commit/52ad258a8eea90fcf40100e3b2378cd219bc4422)) +* add auto public path support for remote modules (node_auto_public_path) ([b12c984](https://github.com/module-federation/universe/commit/b12c9841aa55027cb7b77e768ff9c0b456120d51)) +* additional plugin exports ([0604461](https://github.com/module-federation/universe/commit/0604461ea8806d4e064955f5edef571a9a45d8d0)) +* AddRuntimeRequirementToPromiseExternal ([9bc5a20](https://github.com/module-federation/universe/commit/9bc5a20b54228de7d1f2554eee10360a34e8d8a1)) +* AsyncBoundaryPlugin ([00227ca](https://github.com/module-federation/universe/commit/00227cabf3a1e7286148e84d5714e020391771f7)) +* checkInvalidContext as tapable hook ([a3eb553](https://github.com/module-federation/universe/commit/a3eb5537ff462ead2230615f578569ec46199f50)) +* **ContainerEntryModule:** fix TypeScript issue, enhance needBuild method [#398](https://github.com/module-federation/universe/issues/398)a60e ([c561e11](https://github.com/module-federation/universe/commit/c561e111a54b253fd194c3b75041577dda50ad4b)), closes [#398a60](https://github.com/module-federation/universe/issues/398a60) +* create and expose AutomaticPublicPathPlugin.ts ([9d0fcdd](https://github.com/module-federation/universe/commit/9d0fcdd2e36fae971f2eec3269980baedf276b35)) +* Dynamic Filesystem ([#1274](https://github.com/module-federation/universe/issues/1274)) ([2bec98a](https://github.com/module-federation/universe/commit/2bec98a2472b44898a7f14ec6868a2368cfb6d82)) +* **enhanced:** async boundary plugin ([17640dc](https://github.com/module-federation/universe/commit/17640dcf3286ccd8c5e66378c0d6bdbc640ba3ce)) +* **enhanced:** Embedded Container Plugin ([66ac81d](https://github.com/module-federation/universe/commit/66ac81db05491eb7bbb618eb267c5331760badd1)) +* **enhanced:** Fork Module Federation ([8682990](https://github.com/module-federation/universe/commit/8682990e7fec6309ce20572958916f747737af90)) +* **enhanced:** Refactor ContainerEntryDependency and ContainerEntryModule for better code readability and maintainability ([e93e7d2](https://github.com/module-federation/universe/commit/e93e7d2fafe2e22f7d2c613095ce1900d7531f29)) +* FederationModuleInfo Runtime Module ([50a1a0c](https://github.com/module-federation/universe/commit/50a1a0c7a37bbe42ab6f2f5559b411567fee0fe9)) +* FederationModuleInfo Runtime Module ([7b09ef6](https://github.com/module-federation/universe/commit/7b09ef6c0f4ee68a1b5caa5f021632059c522b8f)) +* fork module federation ([0ad7430](https://github.com/module-federation/universe/commit/0ad7430f6170458a47144be392133b7b2fa1ade0)) +* implement Bytedance Infra Node Plugin ([82e6801](https://github.com/module-federation/universe/commit/82e680157bbad68fa93800a69149c4c28652cfed)) +* implement Bytedance Infra Node Plugin ([97f283e](https://github.com/module-federation/universe/commit/97f283e4746bf6f048ee27584adde5249c8e577c)) +* implement custom next vanity federation plugin ([5e584e6](https://github.com/module-federation/universe/commit/5e584e6415820f15c32ef683796f02aac72e207d)) +* improve options logic in node federation plugin ([b69b70d](https://github.com/module-federation/universe/commit/b69b70d200c63e3557089e8a0669fc43330c988c)) +* improved async init ([17b1419](https://github.com/module-federation/universe/commit/17b1419ef31ec5661fa06b9f0c297e2771e2a86c)) +* improved async init ([bb19b07](https://github.com/module-federation/universe/commit/bb19b07b5be1bbc28bd6b049ea7aea6510ad17a2)) +* improved async init ([ae3a450](https://github.com/module-federation/universe/commit/ae3a4503ff9de86492b13029d6334b281ddd9493)) +* improved async init ([08aa0fa](https://github.com/module-federation/universe/commit/08aa0faf00781b19a3360af15492142e6f7e0999)) +* improved async init ([019694e](https://github.com/module-federation/universe/commit/019694e55fe1f6bebfdab0701bf9087bf0034b8f)) +* native self forming node federation ([#1291](https://github.com/module-federation/universe/issues/1291)) ([1dd5ed1](https://github.com/module-federation/universe/commit/1dd5ed17c981e036336925e807203e94b58c36d6)) +* new actions, remove gpt integration ([370229e](https://github.com/module-federation/universe/commit/370229e02cc352fcfaeaa0f3cf1f9f2d4966d1bb)) +* **node-remote:** Improve module federation runtime compatibility ([5eb2092](https://github.com/module-federation/universe/commit/5eb209249c44d525c12eff5739bf23a93db08e4f)) +* **node:** auto set public path and improve chunk loading strategy #node_auto_public_path ([65989da](https://github.com/module-federation/universe/commit/65989dab95ee2acee7ec9a5ab321921a278cd078)) +* **node:** enhance error handling and remote container registry in RemotePublicPathRuntimeModule (#bytedance) ([061285e](https://github.com/module-federation/universe/commit/061285e0b6210baa1dd502dc94fd57fd9a8af822)) +* **NodeFederationPlugin:** assign remoteContainerRegistry to importMetaName ([ca33d98](https://github.com/module-federation/universe/commit/ca33d98df63fdb8dac402b1cc0ec8bf95f9f1971)) +* **node:** remove unused import from DynamicFilesystemRuntimeModule ([f9787a9](https://github.com/module-federation/universe/commit/f9787a9a67da936679db388e5c66e012e7452d8a)) +* prefer host modules for next and react ([7f253f1](https://github.com/module-federation/universe/commit/7f253f123b21504148221ef4727c41b3d43a19f0)) +* remove custom jsonp runtime patching ([718c3fc](https://github.com/module-federation/universe/commit/718c3fc497d89d5228680d0949e4192070f59cf9)) +* remove old loadScript hack ([fbe19bc](https://github.com/module-federation/universe/commit/fbe19bc76694c14b6a95c577669c2e8656ede1ba)) +* rewrite next federation vanity plugin ([b8c9859](https://github.com/module-federation/universe/commit/b8c98599ba78102183f59964ccee3d29bbe2bedf)) +* share next/image ([f4b0386](https://github.com/module-federation/universe/commit/f4b03869743cf9188c2227c1e28321367a199955)) +* Static fallback to non auto public path ([3c58780](https://github.com/module-federation/universe/commit/3c587809f1e936fba291eab3d7c790115be5102c)) +* support lazy compilation ([29c234c](https://github.com/module-federation/universe/commit/29c234c14315e000acefc60d635ee486205ca83e)) +* support vmok conventions ([0501da8](https://github.com/module-federation/universe/commit/0501da86eaaab6ea79a3397c2c683086cc591309)) +* support vmok conventions ([d53b586](https://github.com/module-federation/universe/commit/d53b5867719eb7fff32bee2edd3255023d598f44)) +* use enhanced federation plugin ([1ec5f0f](https://github.com/module-federation/universe/commit/1ec5f0f98986b21605714565d3543f92b8b9aeaf)) +* Use enhanced Federation Plugin ([e021d66](https://github.com/module-federation/universe/commit/e021d6667996962f154137d164bed13f53a6a135)) +* **utilities:** update DelegateModulesPlugin and tests (#node_auto_public_path) ([df8bb79](https://github.com/module-federation/universe/commit/df8bb791c3fedef299cb15960546ff5ad9c665ef)) + ## [8.1.1](https://github.com/module-federation/universe/compare/nextjs-mf-8.1.0...nextjs-mf-8.1.1) (2023-10-12) ### Bug Fixes diff --git a/packages/nextjs-mf/package.json b/packages/nextjs-mf/package.json index 38f78b2ecb2..37eaf8b67c2 100644 --- a/packages/nextjs-mf/package.json +++ b/packages/nextjs-mf/package.json @@ -1,6 +1,6 @@ { "name": "@module-federation/nextjs-mf", - "version": "8.1.1", + "version": "8.1.0-canary.1", "license": "MIT", "main": "src/index.js", "types": "src/index.d.ts", From 0be4c642bba342f55d376afcff891f2ac3cb04a8 Mon Sep 17 00:00:00 2001 From: ScriptedAlchemy Date: Mon, 30 Oct 2023 20:30:14 -0700 Subject: [PATCH 010/185] feat(enhanced): new async boundary plugin design backporting async boundary design from vmok and modernJS --- .../src/lib/container/AsyncBoundaryPlugin.ts | 30 +++++++++++++++---- 1 file changed, 24 insertions(+), 6 deletions(-) diff --git a/packages/enhanced/src/lib/container/AsyncBoundaryPlugin.ts b/packages/enhanced/src/lib/container/AsyncBoundaryPlugin.ts index 29566847644..5185a2142a7 100644 --- a/packages/enhanced/src/lib/container/AsyncBoundaryPlugin.ts +++ b/packages/enhanced/src/lib/container/AsyncBoundaryPlugin.ts @@ -44,12 +44,30 @@ class AsyncBoundaryPlugin { renderContext: Module, startupRenderContext: StartupRenderContext, ) => { - return this.renderStartupLogic( - source, - renderContext, - startupRenderContext, - compilation, - ); + if (startupRenderContext.chunk.hasRuntime()) { + return source; + } + const startup = [ + 'var promiseTrack = [];', + `if(__webpack_require__.f && __webpack_require__.f.remotes) __webpack_require__.f.remotes(${JSON.stringify( + startupRenderContext.chunk.id, + )}, promiseTrack);`, + `if(__webpack_require__.f && __webpack_require__.f.consumes) __webpack_require__.f.consumes(${JSON.stringify( + startupRenderContext.chunk.id, + )}, promiseTrack);`, + `var __webpack_exports__ = Promise.all(promiseTrack).then(function() {`, + source.source(), + 'return __webpack_exports__;', + `});`, + ].join('\n'); + + return startup; + // return this.renderStartupLogic( + // source, + // renderContext, + // startupRenderContext, + // compilation, + // ); }, ); }, From 654524e9527ac83ec96aaef7bb78a27c9c2b2108 Mon Sep 17 00:00:00 2001 From: ScriptedAlchemy Date: Tue, 31 Oct 2023 00:09:19 -0700 Subject: [PATCH 011/185] feat(enhanced): Support Async Mode and option Flag to allow webpack to startup without needing a async boundary or dynamic import --- .../container/ModuleFederationPlugin.check.js | 6 + .../container/ModuleFederationPlugin.json | 521 ++++++++++++++++++ 2 files changed, 527 insertions(+) create mode 100644 packages/enhanced/src/schemas/container/ModuleFederationPlugin.check.js create mode 100644 packages/enhanced/src/schemas/container/ModuleFederationPlugin.json diff --git a/packages/enhanced/src/schemas/container/ModuleFederationPlugin.check.js b/packages/enhanced/src/schemas/container/ModuleFederationPlugin.check.js new file mode 100644 index 00000000000..9fa88825395 --- /dev/null +++ b/packages/enhanced/src/schemas/container/ModuleFederationPlugin.check.js @@ -0,0 +1,6 @@ +/* + * This file was automatically generated. + * DO NOT MODIFY BY HAND. + * Run `yarn special-lint-fix` to update + */ +const t=/^(?:[A-Za-z]:[\\/]|\\\\|\/)/;module.exports=D,module.exports.default=D;const e={definitions:{AmdContainer:{type:"string",minLength:1},AuxiliaryComment:{anyOf:[{type:"string"},{$ref:"#/definitions/LibraryCustomUmdCommentObject"}]},EntryRuntime:{anyOf:[{enum:[!1]},{type:"string",minLength:1}]},Exposes:{anyOf:[{type:"array",items:{anyOf:[{$ref:"#/definitions/ExposesItem"},{$ref:"#/definitions/ExposesObject"}]}},{$ref:"#/definitions/ExposesObject"}]},ExposesConfig:{type:"object",additionalProperties:!1,properties:{import:{anyOf:[{$ref:"#/definitions/ExposesItem"},{$ref:"#/definitions/ExposesItems"}]},name:{type:"string"}},required:["import"]},ExposesItem:{type:"string",minLength:1},ExposesItems:{type:"array",items:{$ref:"#/definitions/ExposesItem"}},ExposesObject:{type:"object",additionalProperties:{anyOf:[{$ref:"#/definitions/ExposesConfig"},{$ref:"#/definitions/ExposesItem"},{$ref:"#/definitions/ExposesItems"}]}},ExternalsType:{enum:["var","module","assign","this","window","self","global","commonjs","commonjs2","commonjs-module","commonjs-static","amd","amd-require","umd","umd2","jsonp","system","promise","import","script","node-commonjs"]},LibraryCustomUmdCommentObject:{type:"object",additionalProperties:!1,properties:{amd:{type:"string"},commonjs:{type:"string"},commonjs2:{type:"string"},root:{type:"string"}}},LibraryCustomUmdObject:{type:"object",additionalProperties:!1,properties:{amd:{type:"string",minLength:1},commonjs:{type:"string",minLength:1},root:{anyOf:[{type:"array",items:{type:"string",minLength:1}},{type:"string",minLength:1}]}}},LibraryExport:{anyOf:[{type:"array",items:{type:"string",minLength:1}},{type:"string",minLength:1}]},LibraryName:{anyOf:[{type:"array",items:{type:"string",minLength:1},minItems:1},{type:"string",minLength:1},{$ref:"#/definitions/LibraryCustomUmdObject"}]},LibraryOptions:{type:"object",additionalProperties:!1,properties:{amdContainer:{$ref:"#/definitions/AmdContainer"},auxiliaryComment:{$ref:"#/definitions/AuxiliaryComment"},export:{$ref:"#/definitions/LibraryExport"},name:{$ref:"#/definitions/LibraryName"},type:{$ref:"#/definitions/LibraryType"},umdNamedDefine:{$ref:"#/definitions/UmdNamedDefine"}},required:["type"]},LibraryType:{anyOf:[{enum:["var","module","assign","assign-properties","this","window","self","global","commonjs","commonjs2","commonjs-module","commonjs-static","amd","amd-require","umd","umd2","jsonp","system"]},{type:"string"}]},Remotes:{anyOf:[{type:"array",items:{anyOf:[{$ref:"#/definitions/RemotesItem"},{$ref:"#/definitions/RemotesObject"}]}},{$ref:"#/definitions/RemotesObject"}]},RemotesConfig:{type:"object",additionalProperties:!1,properties:{external:{anyOf:[{$ref:"#/definitions/RemotesItem"},{$ref:"#/definitions/RemotesItems"}]},shareScope:{type:"string",minLength:1}},required:["external"]},RemotesItem:{type:"string",minLength:1},RemotesItems:{type:"array",items:{$ref:"#/definitions/RemotesItem"}},RemotesObject:{type:"object",additionalProperties:{anyOf:[{$ref:"#/definitions/RemotesConfig"},{$ref:"#/definitions/RemotesItem"},{$ref:"#/definitions/RemotesItems"}]}},Shared:{anyOf:[{type:"array",items:{anyOf:[{$ref:"#/definitions/SharedItem"},{$ref:"#/definitions/SharedObject"}]}},{$ref:"#/definitions/SharedObject"}]},SharedConfig:{type:"object",additionalProperties:!1,properties:{eager:{type:"boolean"},import:{anyOf:[{enum:[!1]},{$ref:"#/definitions/SharedItem"}]},packageName:{type:"string",minLength:1},requiredVersion:{anyOf:[{enum:[!1]},{type:"string"}]},shareKey:{type:"string",minLength:1},shareScope:{type:"string",minLength:1},singleton:{type:"boolean"},strictVersion:{type:"boolean"},version:{anyOf:[{enum:[!1]},{type:"string"}]}}},SharedItem:{type:"string",minLength:1},SharedObject:{type:"object",additionalProperties:{anyOf:[{$ref:"#/definitions/SharedConfig"},{$ref:"#/definitions/SharedItem"}]}},UmdNamedDefine:{type:"boolean"}},type:"object",additionalProperties:!1,properties:{exposes:{$ref:"#/definitions/Exposes"},filename:{type:"string",absolutePath:!1},library:{$ref:"#/definitions/LibraryOptions"},name:{type:"string"},remoteType:{oneOf:[{$ref:"#/definitions/ExternalsType"}]},remotes:{$ref:"#/definitions/Remotes"},runtime:{$ref:"#/definitions/EntryRuntime"},shareScope:{type:"string",minLength:1},shared:{$ref:"#/definitions/Shared"}}},r=Object.prototype.hasOwnProperty;function n(t,{instancePath:e="",parentData:r,parentDataProperty:s,rootData:a=t}={}){if(!Array.isArray(t))return n.errors=[{params:{type:"array"}}],!1;{const e=t.length;for(let r=0;r Date: Tue, 31 Oct 2023 00:21:25 -0700 Subject: [PATCH 012/185] chore: rest of patch --- .../src/lib/container/AsyncBoundaryPlugin.ts | 104 +----------------- .../lib/container/ModuleFederationPlugin.ts | 2 +- .../container/ModuleFederationPlugin.json | 4 + 3 files changed, 9 insertions(+), 101 deletions(-) diff --git a/packages/enhanced/src/lib/container/AsyncBoundaryPlugin.ts b/packages/enhanced/src/lib/container/AsyncBoundaryPlugin.ts index 5185a2142a7..f2616db55a2 100644 --- a/packages/enhanced/src/lib/container/AsyncBoundaryPlugin.ts +++ b/packages/enhanced/src/lib/container/AsyncBoundaryPlugin.ts @@ -47,6 +47,10 @@ class AsyncBoundaryPlugin { if (startupRenderContext.chunk.hasRuntime()) { return source; } + const isInvalidContext = + this.hooks.checkInvalidContext.call(renderContext, compilation) ?? false; + if (isInvalidContext) return source + const startup = [ 'var promiseTrack = [];', `if(__webpack_require__.f && __webpack_require__.f.remotes) __webpack_require__.f.remotes(${JSON.stringify( @@ -62,111 +66,11 @@ class AsyncBoundaryPlugin { ].join('\n'); return startup; - // return this.renderStartupLogic( - // source, - // renderContext, - // startupRenderContext, - // compilation, - // ); }, ); }, ); } - - /** - * Render the startup logic for the plugin. - * @param {Source} source - The source code. - * @param {RenderContext} renderContext - The render context. - * @param {any} startupRenderContext - The startup render context. - * @param {Compilation} compilation - The Webpack compilation instance. - * @returns {string} - The modified source code. - */ - private renderStartupLogic( - source: Source, - renderContext: Module, - startupRenderContext: StartupRenderContext, - compilation: Compilation, - ): string { - const isInvalidContext = - this.hooks.checkInvalidContext.call(renderContext, compilation) ?? false; - if (isInvalidContext) return source.source().toString(); - - const { chunkGraph } = compilation; - const replaceSource = source.source().toString(); - const replaceSourceLines = replaceSource.split('\n'); - const webpack_exec_index = replaceSourceLines.findIndex((line) => - line.includes('webpack_exec'), - ); - const webpack_exec = replaceSourceLines[webpack_exec_index]; - const webpack_exports = replaceSourceLines.slice(webpack_exec_index + 1); - const dependentChunkIds = this.getDependentChunkIds( - startupRenderContext, - chunkGraph, - ); - - return Template.asString([ - this.replaceWebpackExec(webpack_exec), - `globalThis.ongoingRemotes = globalThis.ongoingRemotes || [];`, - `var __webpack_exec__ = async function() {`, - Template.indent([ - `var chunkIds = ${JSON.stringify(Array.from(dependentChunkIds))};`, - `if (${RuntimeGlobals.ensureChunkHandlers}.consumes) {`, - ` chunkIds.forEach(function(id) { ${RuntimeGlobals.ensureChunkHandlers}.consumes(id, globalThis.ongoingRemotes); });`, - ` await Promise.all(globalThis.ongoingRemotes);`, - `}`, - `if (${RuntimeGlobals.ensureChunkHandlers}.remotes) {`, - ` chunkIds.forEach(function(id) { ${RuntimeGlobals.ensureChunkHandlers}.remotes(id, globalThis.ongoingRemotes); });`, - ` await Promise.all(globalThis.ongoingRemotes);`, - `}`, - `return __original_webpack_exec__.apply(this, arguments);`, - ]), - `};`, - ...webpack_exports, - ]); - } - - /** - * Replace the webpack exec string. - * @param {string} webpack_exec - The webpack exec string. - * @returns {string} - The replaced webpack exec string. - */ - private replaceWebpackExec(webpack_exec: string): string { - return webpack_exec.replace( - '__webpack_exec__', - '__original_webpack_exec__', - ); - } - - /** - * Get the IDs of the dependent chunks. - * @param {any} startupRenderContext - The startup render context. - * @param {any} chunkGraph - The chunk graph. - * @returns {Set} - The set of dependent chunk IDs. - */ - private getDependentChunkIds( - startupRenderContext: RenderContext, - chunkGraph: ChunkGraph, - ): Set { - const entries = Array.from( - chunkGraph.getChunkEntryModulesWithChunkGroupIterable( - startupRenderContext.chunk, - ), - ); - const chunkIds = new Set(); - for (const [module, entrypoint] of entries) { - if (entrypoint) { - const runtimeChunk = entrypoint.getRuntimeChunk(); - if (runtimeChunk) { - const chunks = getAllChunks(entrypoint, runtimeChunk); - for (const c of chunks) { - chunkIds.add(c.id); - } - } - } - } - return chunkIds; - } } export default AsyncBoundaryPlugin; diff --git a/packages/enhanced/src/lib/container/ModuleFederationPlugin.ts b/packages/enhanced/src/lib/container/ModuleFederationPlugin.ts index c1c3f1083bd..9a58a8f9ec3 100644 --- a/packages/enhanced/src/lib/container/ModuleFederationPlugin.ts +++ b/packages/enhanced/src/lib/container/ModuleFederationPlugin.ts @@ -17,7 +17,7 @@ const validate = createSchemaValidation( //eslint-disable-next-line require('webpack/schemas/plugins/container/ModuleFederationPlugin.check.js'), () => - require('webpack/schemas/plugins/container/ModuleFederationPlugin.json'), + require('../../schemas/container/ModuleFederationPlugin.json'), { name: 'Module Federation Plugin', baseDataPath: 'options', diff --git a/packages/enhanced/src/schemas/container/ModuleFederationPlugin.json b/packages/enhanced/src/schemas/container/ModuleFederationPlugin.json index 82b0f169fec..ed823dc1f47 100644 --- a/packages/enhanced/src/schemas/container/ModuleFederationPlugin.json +++ b/packages/enhanced/src/schemas/container/ModuleFederationPlugin.json @@ -491,6 +491,10 @@ "library": { "$ref": "#/definitions/LibraryOptions" }, + "async": { + "description": "Enable async loading of entry chunks.", + "type": "boolean" + }, "name": { "description": "The name of the container.", "type": "string" From de94cb95f233585f76382d03bdbd81453b93a9bb Mon Sep 17 00:00:00 2001 From: ScriptedAlchemy Date: Thu, 2 Nov 2023 17:22:31 -0700 Subject: [PATCH 013/185] feat(enhanced): Rewrite Async Boundary based on bytedance version backporting async bounday that uses runtime requirements and startup encapsulation with reexporting --- .../src/lib/container/AsyncBoundaryPlugin.ts | 188 ++++++++++++------ .../container/InvertedContainerPlugin.ts | 42 ++-- 2 files changed, 145 insertions(+), 85 deletions(-) diff --git a/packages/enhanced/src/lib/container/AsyncBoundaryPlugin.ts b/packages/enhanced/src/lib/container/AsyncBoundaryPlugin.ts index f2616db55a2..476fca5beba 100644 --- a/packages/enhanced/src/lib/container/AsyncBoundaryPlugin.ts +++ b/packages/enhanced/src/lib/container/AsyncBoundaryPlugin.ts @@ -1,76 +1,136 @@ -import { Template, RuntimeGlobals } from 'webpack'; -import { Source } from 'webpack-sources'; -import type Compilation from 'webpack/lib/Compilation'; -import type Compiler from 'webpack/lib/Compiler'; -import type Module from 'webpack/lib/Module'; -import type Chunk from 'webpack/lib/Chunk'; -import { getAllChunks } from 'webpack/lib/javascript/ChunkHelpers'; -import { ChunkGraph } from 'webpack/lib/ChunkGroup'; -import { StartupRenderContext } from 'webpack/lib/javascript/JavascriptModulesPlugin'; -import { RenderContext } from 'webpack/lib/javascript/JavascriptModulesPlugin'; -import { SyncBailHook } from 'tapable'; -/** - * AsyncBoundaryPlugin is a Webpack plugin that handles asynchronous boundaries in a federated module. - * @class - */ -class AsyncBoundaryPlugin { - /** - * Define hooks - * @property {SyncBailHook} checkInvalidContext - A hook that checks if the render context is invalid. - */ - public hooks = { - checkInvalidContext: new SyncBailHook<[Module, Compilation], boolean>([ - 'renderContext', - 'compilation', - ]), - }; - - /** - * Apply the plugin to the Webpack compiler instance. - * @param {Compiler} compiler - Webpack compiler instance. - */ - public apply(compiler: Compiler): void { - const { javascript } = compiler.webpack; +import Compiler from 'webpack/lib/Compiler'; +import Compilation from 'webpack/lib/Compilation'; +import Chunk from 'webpack/lib/Chunk'; +import RuntimeGlobals from 'webpack/lib/RuntimeGlobals'; +import Template from 'webpack/lib/Template'; +import Module from 'webpack/lib/Module'; + +interface Options { + eager?: RegExp | ((module: Module) => boolean); + excludeChunk?: (chunk: Chunk) => boolean; +} + +// Class to handle asynchronous entry startup +class AsyncEntryStartupPlugin { + private _options: Options; + + constructor(options?: Options) { + this._options = options || {}; + } + + apply(compiler: Compiler): void { + const chunkRuntimes = new Map(); compiler.hooks.thisCompilation.tap( - 'AsyncBoundaryPlugin', + 'AsyncEntryStartupPlugin', (compilation: Compilation) => { - const hooks = - javascript.JavascriptModulesPlugin.getCompilationHooks(compilation); - - hooks.renderStartup.tap( - 'AsyncBoundaryPlugin', + compiler.webpack.javascript.JavascriptModulesPlugin.getCompilationHooks( + compilation + ).renderStartup.tap( + 'AsyncEntryStartupPlugin', ( - source: Source, + source: any, renderContext: Module, - startupRenderContext: StartupRenderContext, + upperContext: { chunk: Chunk } ) => { - if (startupRenderContext.chunk.hasRuntime()) { + // Check if single runtime chunk is enabled + if(compiler?.options?.optimization?.runtimeChunk) { + if (upperContext.chunk.hasRuntime()) { + chunkRuntimes.set(upperContext.chunk.id, upperContext.chunk); return source; } - const isInvalidContext = - this.hooks.checkInvalidContext.call(renderContext, compilation) ?? false; - if (isInvalidContext) return source - - const startup = [ - 'var promiseTrack = [];', - `if(__webpack_require__.f && __webpack_require__.f.remotes) __webpack_require__.f.remotes(${JSON.stringify( - startupRenderContext.chunk.id, - )}, promiseTrack);`, - `if(__webpack_require__.f && __webpack_require__.f.consumes) __webpack_require__.f.consumes(${JSON.stringify( - startupRenderContext.chunk.id, - )}, promiseTrack);`, - `var __webpack_exports__ = Promise.all(promiseTrack).then(function() {`, - source.source(), - 'return __webpack_exports__;', - `});`, - ].join('\n'); - - return startup; - }, + } + + // Check if excludeChunk is provided, use it to decide further processing + if ( + this._options.excludeChunk && + this._options.excludeChunk(upperContext.chunk) + ) { + return source; + } + + const runtime = chunkRuntimes.get(upperContext.chunk.runtime) + + // Get the runtime requirements of the chunk + const requirements = + compilation.chunkGraph.getTreeRuntimeRequirements( + runtime || upperContext.chunk + ); + + let remotes = ''; + let shared = ''; + const hasRemoteModules = compilation.chunkGraph.getChunkModulesIterableBySourceType(upperContext.chunk,'remote') + + + // Check if the chunk has remote get scope + if (requirements.has(RuntimeGlobals.currentRemoteGetScope) || hasRemoteModules || requirements.has('__webpack_require__.vmok')) { + remotes = `if(__webpack_require__.f && __webpack_require__.f.remotes) __webpack_require__.f.remotes(${JSON.stringify( + upperContext.chunk.id + )}, promiseTrack);`; + } + + // Check if the chunk has share scope map or initialize sharing + if ( + requirements.has(RuntimeGlobals.shareScopeMap) || + requirements.has(RuntimeGlobals.initializeSharing) + ) { + shared = `if(__webpack_require__.f && __webpack_require__.f.consumes) __webpack_require__.f.consumes(${JSON.stringify( + upperContext.chunk.id + )}, promiseTrack);`; + } + + // If no remotes or shared, return the source + if (!remotes && !shared) { + return source; + } + + // Get the entry modules of the chunk + const entryModules = + compilation.chunkGraph.getChunkEntryModulesIterable( + upperContext.chunk + ); + + const initialEntryModules = []; + + // Iterate over the entry modules + for (const entryModule of entryModules) { + if (entryModule.id) { + let shouldInclude = false; + + // Check if eager is a function and call it + if (typeof this._options.eager === 'function') { + shouldInclude = this._options.eager(entryModule); + } else if ( + this._options.eager && + this._options.eager.test(entryModule.identifier()) + ) { + // Check if eager is a RegExp and test it + shouldInclude = true; + } + + // If shouldInclude is true, push the module to initialEntryModules + if (shouldInclude) { + initialEntryModules.push( + `__webpack_require__(${JSON.stringify(entryModule.id)});` + ); + } + } + } + + return Template.asString([ + 'var promiseTrack = [];', + Template.asString(initialEntryModules), + shared, + remotes, + 'var __webpack_exports__ = Promise.all(promiseTrack).then(function() {', + Template.indent(source.source()), + 'return __webpack_exports__', + '});', + ]); + } ); - }, + } ); } } -export default AsyncBoundaryPlugin; +export default AsyncEntryStartupPlugin; diff --git a/packages/nextjs-mf/src/plugins/container/InvertedContainerPlugin.ts b/packages/nextjs-mf/src/plugins/container/InvertedContainerPlugin.ts index 04f00c5b717..c8dc3cf5bde 100644 --- a/packages/nextjs-mf/src/plugins/container/InvertedContainerPlugin.ts +++ b/packages/nextjs-mf/src/plugins/container/InvertedContainerPlugin.ts @@ -47,27 +47,27 @@ class InvertedContainerPlugin { chunkToEmbed: this.options.chunkToEmbed, }).apply(compiler); - const asyncBoundaryPlugin = new AsyncBoundaryPlugin(); - asyncBoundaryPlugin.hooks.checkInvalidContext.tap( - 'InvertedContainerPlugin', - (renderContext, compilation) => { - return ( - !renderContext || - //@ts-ignore - renderContext?._name || - //@ts-ignore - !renderContext?.debugId || - //@ts-ignore - !compilation.chunkGraph.isEntryModule(renderContext) || - //@ts-ignore - renderContext?.rawRequest?.includes('pages/api') || - //@ts-ignore - renderContext?.layer === 'api' - ); - }, - ); - - asyncBoundaryPlugin.apply(compiler); + const asyncBoundaryPlugin = new AsyncBoundaryPlugin().apply(compiler); + // asyncBoundaryPlugin.hooks.checkInvalidContext.tap( + // 'InvertedContainerPlugin', + // (renderContext, compilation) => { + // return ( + // !renderContext || + // //@ts-ignore + // renderContext?._name || + // //@ts-ignore + // !renderContext?.debugId || + // //@ts-ignore + // !compilation.chunkGraph.isEntryModule(renderContext) || + // //@ts-ignore + // renderContext?.rawRequest?.includes('pages/api') || + // //@ts-ignore + // renderContext?.layer === 'api' + // ); + // }, + // ); + // + // asyncBoundaryPlugin.apply(compiler); } } From 19d4364af23dbc329849ee733bd3726c35bb3e0a Mon Sep 17 00:00:00 2001 From: ScriptedAlchemy Date: Thu, 2 Nov 2023 18:04:34 -0700 Subject: [PATCH 014/185] style: indent templates --- packages/enhanced/src/lib/container/AsyncBoundaryPlugin.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/enhanced/src/lib/container/AsyncBoundaryPlugin.ts b/packages/enhanced/src/lib/container/AsyncBoundaryPlugin.ts index 476fca5beba..28cc542032a 100644 --- a/packages/enhanced/src/lib/container/AsyncBoundaryPlugin.ts +++ b/packages/enhanced/src/lib/container/AsyncBoundaryPlugin.ts @@ -123,7 +123,7 @@ class AsyncEntryStartupPlugin { remotes, 'var __webpack_exports__ = Promise.all(promiseTrack).then(function() {', Template.indent(source.source()), - 'return __webpack_exports__', + Template.indent('return __webpack_exports__'), '});', ]); } From 93b5a378f5c3a7c68bd32f199a97f77ad1af56b5 Mon Sep 17 00:00:00 2001 From: ScriptedAlchemy Date: Mon, 6 Nov 2023 12:23:35 -0800 Subject: [PATCH 015/185] chore: clean up and align --- .../src/lib/container/AsyncBoundaryPlugin.ts | 19 +++++++++++++------ 1 file changed, 13 insertions(+), 6 deletions(-) diff --git a/packages/enhanced/src/lib/container/AsyncBoundaryPlugin.ts b/packages/enhanced/src/lib/container/AsyncBoundaryPlugin.ts index 28cc542032a..3e895cae13e 100644 --- a/packages/enhanced/src/lib/container/AsyncBoundaryPlugin.ts +++ b/packages/enhanced/src/lib/container/AsyncBoundaryPlugin.ts @@ -33,8 +33,8 @@ class AsyncEntryStartupPlugin { upperContext: { chunk: Chunk } ) => { // Check if single runtime chunk is enabled - if(compiler?.options?.optimization?.runtimeChunk) { - if (upperContext.chunk.hasRuntime()) { + if (compiler?.options?.optimization?.runtimeChunk) { + if (upperContext?.chunk.hasRuntime()) { chunkRuntimes.set(upperContext.chunk.id, upperContext.chunk); return source; } @@ -48,7 +48,7 @@ class AsyncEntryStartupPlugin { return source; } - const runtime = chunkRuntimes.get(upperContext.chunk.runtime) + const runtime = chunkRuntimes.get(upperContext.chunk.runtime); // Get the runtime requirements of the chunk const requirements = @@ -58,11 +58,18 @@ class AsyncEntryStartupPlugin { let remotes = ''; let shared = ''; - const hasRemoteModules = compilation.chunkGraph.getChunkModulesIterableBySourceType(upperContext.chunk,'remote') - + const hasRemoteModules = + compilation.chunkGraph.getChunkModulesIterableBySourceType( + upperContext.chunk, + 'remote' + ); // Check if the chunk has remote get scope - if (requirements.has(RuntimeGlobals.currentRemoteGetScope) || hasRemoteModules || requirements.has('__webpack_require__.vmok')) { + if ( + requirements.has(RuntimeGlobals.currentRemoteGetScope) || + hasRemoteModules || + requirements.has('__webpack_require__.vmok') + ) { remotes = `if(__webpack_require__.f && __webpack_require__.f.remotes) __webpack_require__.f.remotes(${JSON.stringify( upperContext.chunk.id )}, promiseTrack);`; From 2ee8296356ed59660f6fb4967da902395e7bf118 Mon Sep 17 00:00:00 2001 From: ScriptedAlchemy Date: Mon, 6 Nov 2023 13:57:20 -0800 Subject: [PATCH 016/185] style: linting --- .../src/lib/container/AsyncBoundaryPlugin.ts | 20 +- .../lib/container/ModuleFederationPlugin.ts | 3 +- .../container/ModuleFederationPlugin.check.js | 1743 ++++++++++++++++- 3 files changed, 1753 insertions(+), 13 deletions(-) diff --git a/packages/enhanced/src/lib/container/AsyncBoundaryPlugin.ts b/packages/enhanced/src/lib/container/AsyncBoundaryPlugin.ts index 3e895cae13e..bca2a124377 100644 --- a/packages/enhanced/src/lib/container/AsyncBoundaryPlugin.ts +++ b/packages/enhanced/src/lib/container/AsyncBoundaryPlugin.ts @@ -24,13 +24,13 @@ class AsyncEntryStartupPlugin { 'AsyncEntryStartupPlugin', (compilation: Compilation) => { compiler.webpack.javascript.JavascriptModulesPlugin.getCompilationHooks( - compilation + compilation, ).renderStartup.tap( 'AsyncEntryStartupPlugin', ( source: any, renderContext: Module, - upperContext: { chunk: Chunk } + upperContext: { chunk: Chunk }, ) => { // Check if single runtime chunk is enabled if (compiler?.options?.optimization?.runtimeChunk) { @@ -53,7 +53,7 @@ class AsyncEntryStartupPlugin { // Get the runtime requirements of the chunk const requirements = compilation.chunkGraph.getTreeRuntimeRequirements( - runtime || upperContext.chunk + runtime || upperContext.chunk, ); let remotes = ''; @@ -61,7 +61,7 @@ class AsyncEntryStartupPlugin { const hasRemoteModules = compilation.chunkGraph.getChunkModulesIterableBySourceType( upperContext.chunk, - 'remote' + 'remote', ); // Check if the chunk has remote get scope @@ -71,7 +71,7 @@ class AsyncEntryStartupPlugin { requirements.has('__webpack_require__.vmok') ) { remotes = `if(__webpack_require__.f && __webpack_require__.f.remotes) __webpack_require__.f.remotes(${JSON.stringify( - upperContext.chunk.id + upperContext.chunk.id, )}, promiseTrack);`; } @@ -81,7 +81,7 @@ class AsyncEntryStartupPlugin { requirements.has(RuntimeGlobals.initializeSharing) ) { shared = `if(__webpack_require__.f && __webpack_require__.f.consumes) __webpack_require__.f.consumes(${JSON.stringify( - upperContext.chunk.id + upperContext.chunk.id, )}, promiseTrack);`; } @@ -93,7 +93,7 @@ class AsyncEntryStartupPlugin { // Get the entry modules of the chunk const entryModules = compilation.chunkGraph.getChunkEntryModulesIterable( - upperContext.chunk + upperContext.chunk, ); const initialEntryModules = []; @@ -117,7 +117,7 @@ class AsyncEntryStartupPlugin { // If shouldInclude is true, push the module to initialEntryModules if (shouldInclude) { initialEntryModules.push( - `__webpack_require__(${JSON.stringify(entryModule.id)});` + `__webpack_require__(${JSON.stringify(entryModule.id)});`, ); } } @@ -133,9 +133,9 @@ class AsyncEntryStartupPlugin { Template.indent('return __webpack_exports__'), '});', ]); - } + }, ); - } + }, ); } } diff --git a/packages/enhanced/src/lib/container/ModuleFederationPlugin.ts b/packages/enhanced/src/lib/container/ModuleFederationPlugin.ts index 9a58a8f9ec3..8b98c0aae27 100644 --- a/packages/enhanced/src/lib/container/ModuleFederationPlugin.ts +++ b/packages/enhanced/src/lib/container/ModuleFederationPlugin.ts @@ -16,8 +16,7 @@ import ContainerReferencePlugin from './ContainerReferencePlugin'; const validate = createSchemaValidation( //eslint-disable-next-line require('webpack/schemas/plugins/container/ModuleFederationPlugin.check.js'), - () => - require('../../schemas/container/ModuleFederationPlugin.json'), + () => require('../../schemas/container/ModuleFederationPlugin.json'), { name: 'Module Federation Plugin', baseDataPath: 'options', diff --git a/packages/enhanced/src/schemas/container/ModuleFederationPlugin.check.js b/packages/enhanced/src/schemas/container/ModuleFederationPlugin.check.js index 9fa88825395..7da1a3fa789 100644 --- a/packages/enhanced/src/schemas/container/ModuleFederationPlugin.check.js +++ b/packages/enhanced/src/schemas/container/ModuleFederationPlugin.check.js @@ -3,4 +3,1745 @@ * DO NOT MODIFY BY HAND. * Run `yarn special-lint-fix` to update */ -const t=/^(?:[A-Za-z]:[\\/]|\\\\|\/)/;module.exports=D,module.exports.default=D;const e={definitions:{AmdContainer:{type:"string",minLength:1},AuxiliaryComment:{anyOf:[{type:"string"},{$ref:"#/definitions/LibraryCustomUmdCommentObject"}]},EntryRuntime:{anyOf:[{enum:[!1]},{type:"string",minLength:1}]},Exposes:{anyOf:[{type:"array",items:{anyOf:[{$ref:"#/definitions/ExposesItem"},{$ref:"#/definitions/ExposesObject"}]}},{$ref:"#/definitions/ExposesObject"}]},ExposesConfig:{type:"object",additionalProperties:!1,properties:{import:{anyOf:[{$ref:"#/definitions/ExposesItem"},{$ref:"#/definitions/ExposesItems"}]},name:{type:"string"}},required:["import"]},ExposesItem:{type:"string",minLength:1},ExposesItems:{type:"array",items:{$ref:"#/definitions/ExposesItem"}},ExposesObject:{type:"object",additionalProperties:{anyOf:[{$ref:"#/definitions/ExposesConfig"},{$ref:"#/definitions/ExposesItem"},{$ref:"#/definitions/ExposesItems"}]}},ExternalsType:{enum:["var","module","assign","this","window","self","global","commonjs","commonjs2","commonjs-module","commonjs-static","amd","amd-require","umd","umd2","jsonp","system","promise","import","script","node-commonjs"]},LibraryCustomUmdCommentObject:{type:"object",additionalProperties:!1,properties:{amd:{type:"string"},commonjs:{type:"string"},commonjs2:{type:"string"},root:{type:"string"}}},LibraryCustomUmdObject:{type:"object",additionalProperties:!1,properties:{amd:{type:"string",minLength:1},commonjs:{type:"string",minLength:1},root:{anyOf:[{type:"array",items:{type:"string",minLength:1}},{type:"string",minLength:1}]}}},LibraryExport:{anyOf:[{type:"array",items:{type:"string",minLength:1}},{type:"string",minLength:1}]},LibraryName:{anyOf:[{type:"array",items:{type:"string",minLength:1},minItems:1},{type:"string",minLength:1},{$ref:"#/definitions/LibraryCustomUmdObject"}]},LibraryOptions:{type:"object",additionalProperties:!1,properties:{amdContainer:{$ref:"#/definitions/AmdContainer"},auxiliaryComment:{$ref:"#/definitions/AuxiliaryComment"},export:{$ref:"#/definitions/LibraryExport"},name:{$ref:"#/definitions/LibraryName"},type:{$ref:"#/definitions/LibraryType"},umdNamedDefine:{$ref:"#/definitions/UmdNamedDefine"}},required:["type"]},LibraryType:{anyOf:[{enum:["var","module","assign","assign-properties","this","window","self","global","commonjs","commonjs2","commonjs-module","commonjs-static","amd","amd-require","umd","umd2","jsonp","system"]},{type:"string"}]},Remotes:{anyOf:[{type:"array",items:{anyOf:[{$ref:"#/definitions/RemotesItem"},{$ref:"#/definitions/RemotesObject"}]}},{$ref:"#/definitions/RemotesObject"}]},RemotesConfig:{type:"object",additionalProperties:!1,properties:{external:{anyOf:[{$ref:"#/definitions/RemotesItem"},{$ref:"#/definitions/RemotesItems"}]},shareScope:{type:"string",minLength:1}},required:["external"]},RemotesItem:{type:"string",minLength:1},RemotesItems:{type:"array",items:{$ref:"#/definitions/RemotesItem"}},RemotesObject:{type:"object",additionalProperties:{anyOf:[{$ref:"#/definitions/RemotesConfig"},{$ref:"#/definitions/RemotesItem"},{$ref:"#/definitions/RemotesItems"}]}},Shared:{anyOf:[{type:"array",items:{anyOf:[{$ref:"#/definitions/SharedItem"},{$ref:"#/definitions/SharedObject"}]}},{$ref:"#/definitions/SharedObject"}]},SharedConfig:{type:"object",additionalProperties:!1,properties:{eager:{type:"boolean"},import:{anyOf:[{enum:[!1]},{$ref:"#/definitions/SharedItem"}]},packageName:{type:"string",minLength:1},requiredVersion:{anyOf:[{enum:[!1]},{type:"string"}]},shareKey:{type:"string",minLength:1},shareScope:{type:"string",minLength:1},singleton:{type:"boolean"},strictVersion:{type:"boolean"},version:{anyOf:[{enum:[!1]},{type:"string"}]}}},SharedItem:{type:"string",minLength:1},SharedObject:{type:"object",additionalProperties:{anyOf:[{$ref:"#/definitions/SharedConfig"},{$ref:"#/definitions/SharedItem"}]}},UmdNamedDefine:{type:"boolean"}},type:"object",additionalProperties:!1,properties:{exposes:{$ref:"#/definitions/Exposes"},filename:{type:"string",absolutePath:!1},library:{$ref:"#/definitions/LibraryOptions"},name:{type:"string"},remoteType:{oneOf:[{$ref:"#/definitions/ExternalsType"}]},remotes:{$ref:"#/definitions/Remotes"},runtime:{$ref:"#/definitions/EntryRuntime"},shareScope:{type:"string",minLength:1},shared:{$ref:"#/definitions/Shared"}}},r=Object.prototype.hasOwnProperty;function n(t,{instancePath:e="",parentData:r,parentDataProperty:s,rootData:a=t}={}){if(!Array.isArray(t))return n.errors=[{params:{type:"array"}}],!1;{const e=t.length;for(let r=0;r Date: Mon, 6 Nov 2023 14:45:56 -0800 Subject: [PATCH 017/185] style: linting --- packages/nextjs-mf/CHANGELOG.md | 242 ++++++++++++++++---------------- 1 file changed, 120 insertions(+), 122 deletions(-) diff --git a/packages/nextjs-mf/CHANGELOG.md b/packages/nextjs-mf/CHANGELOG.md index 946495b57a2..22137a2701b 100644 --- a/packages/nextjs-mf/CHANGELOG.md +++ b/packages/nextjs-mf/CHANGELOG.md @@ -1,132 +1,130 @@ # [8.1.0-canary.1](https://github.com/module-federation/universe/compare/nextjs-mf-8.0.0...nextjs-mf-8.1.0-canary.1) (2023-10-23) - ### Bug Fixes -* add exported file ([19b1afb](https://github.com/module-federation/universe/commit/19b1afbd58572897f36b16926f841e35d154c712)) -* add missing serialize method on RemoteModule ([e7ac801](https://github.com/module-federation/universe/commit/e7ac801151b08dbb5ca025bd8ac03683f792f92f)) -* add override to remoteModule ([875038a](https://github.com/module-federation/universe/commit/875038ad68dfed05822c1bc7c68ae91e57282f4f)) -* add share logic just for next ([c947a50](https://github.com/module-federation/universe/commit/c947a504224feac5bbb5d3788d3cfc21dd9c5b28)) -* add styled-jsx to internal share ([a50dae8](https://github.com/module-federation/universe/commit/a50dae8ead5ed46491bf3cfa8452a536ba0de622)) -* Auto Public Path, detect multiple output targets ([65f17b1](https://github.com/module-federation/universe/commit/65f17b189f37e0ad9e72bb0bf04463e9c5455929)) -* bad impleentation during federation port ([cc2e53f](https://github.com/module-federation/universe/commit/cc2e53f0351fb94c9068223ad6b8d990a913ab53)) -* broken versioning issues in consumes ([e7fada2](https://github.com/module-federation/universe/commit/e7fada211b1e58dc52eafeff4210a9ce62636f9d)) -* change exports for module info runtime ([f40c538](https://github.com/module-federation/universe/commit/f40c538221353a61938cadf624c9235ec8eb4cce)) -* chunk flushing ([c9df545](https://github.com/module-federation/universe/commit/c9df5451c84e6458b392884492bf669bf7383d5c)) -* **deps:** update dependency axios to v1.5.1 ([ae9a06a](https://github.com/module-federation/universe/commit/ae9a06a0cc35fad27a0b493a25370b92617c39fb)) -* **deps:** update dependency core-js to v3.33.0 ([30894ca](https://github.com/module-federation/universe/commit/30894cafbe5dea4350dc7c633548038d7ec5f8a8)) -* **deps:** update dependency typedoc to v0.25.2 ([46c6524](https://github.com/module-federation/universe/commit/46c65247e187cee9e15625402c1570ac351bb1fe)) -* **deps:** update dependency undici to v5.25.2 ([da3e539](https://github.com/module-federation/universe/commit/da3e539a41ed23ccb5086b1dd428fbee0f8d652c)) -* **deps:** update dependency undici to v5.25.4 ([1d4f91e](https://github.com/module-federation/universe/commit/1d4f91ec93da4326c8a42eef28f150d5d09738bb)) -* **deps:** update dependency unplugin to v1.5.0 ([936b3f8](https://github.com/module-federation/universe/commit/936b3f8d8061fd9d481d1788fb35b88588928d14)) -* dont crash offline remotes ([f0d7671](https://github.com/module-federation/universe/commit/f0d7671569ac34f64017a303739b54880f5220e6)) -* dont patch webpack env var ([757d44b](https://github.com/module-federation/universe/commit/757d44bc74b543f26a022223b5ae2d1d640838ea)) -* enable path fixes ([2f9e14b](https://github.com/module-federation/universe/commit/2f9e14b602c71d357063a8168d8ea8c554bcb2ca)) -* enable path fixes again ([6098fee](https://github.com/module-federation/universe/commit/6098fee3b3734018ec0f4866656709f3b5d20173)) -* **enhanced:** module info duplication ([49b4a57](https://github.com/module-federation/universe/commit/49b4a5736714c1db4510d10cdd5fe0277123caa8)) -* **enhanced:** syntax issue in proxy ([2e5848b](https://github.com/module-federation/universe/commit/2e5848b4be3e3bba46508a427c1bc8f2d3043c8d)) -* ensure chunk handler exists before calling it ([98ba838](https://github.com/module-federation/universe/commit/98ba838f979bbef11f5d678c3bf27a4de534cf9d)) -* ensure custom FS works with target: node or async node preset ([a08fcab](https://github.com/module-federation/universe/commit/a08fcab7dde903966d34be9dab0b34c8896948ca)) -* ensure sharing of react/jsx runtime and dev runtime ([ae890d5](https://github.com/module-federation/universe/commit/ae890d5e5698c729618d602053b4336b067dd34a)) -* export parseRemotes ([12ed54c](https://github.com/module-federation/universe/commit/12ed54c87ba539bc2a79cdee86058f0a2776653e)) -* fix styled-jsx flushing ([207db51](https://github.com/module-federation/universe/commit/207db51c16f9b92c8e0c25f0b2157359488e552d)) -* hot reloading system ([99f733b](https://github.com/module-federation/universe/commit/99f733bbdbd727a99fbaaeab3f92f4b65fa568dd)) -* ignore TS issues in async plugin ([f6e3e7f](https://github.com/module-federation/universe/commit/f6e3e7f9ca6aabdf26752f8f794e1176fc73af1c)) -* import utils manually ([2767191](https://github.com/module-federation/universe/commit/2767191467d9d685704b747d42b5f170da233847)) -* improve backward compat __remote_scope__ global ([ac0efa3](https://github.com/module-federation/universe/commit/ac0efa37d975a130aa3badc657fa66d723865a5b)) -* improve externals lookup ([5630eb9](https://github.com/module-federation/universe/commit/5630eb9e891e5a819938f3eb9742a882dac1ef16)) -* improve image loader public path calc ([d86dcde](https://github.com/module-federation/universe/commit/d86dcde344d5d9b7430512672ec26c53ac0f100e)) -* improve logic in runtime module info proxy ([8eea1a8](https://github.com/module-federation/universe/commit/8eea1a84ae6a12f69dbb16d00f52ec902efbdda6)) -* legacy scope duplication on recreation ([347e4c9](https://github.com/module-federation/universe/commit/347e4c96e87ff4f28dce319fc6b2fe40f1cbabee)) -* lint container module ([ea4f105](https://github.com/module-federation/universe/commit/ea4f105e4949f041a8747a0e3ce50e7020598f88)) -* module order of inverted container runtime ([90caa8d](https://github.com/module-federation/universe/commit/90caa8dc80f9af7c6c6f8d7a4a437e337540ddc3)) -* move cache file hashing to next-mf ([11917bf](https://github.com/module-federation/universe/commit/11917bf4500b9ebdb14b46631d89350a98511461)) -* **nextjs-mf:** adding link and image to new shared setup ([8bd3c05](https://github.com/module-federation/universe/commit/8bd3c059a8ebd9c00d3ec2a59afe8a3337c85960)) -* **nextjs-mf:** fix sharing strat to prever host always if react ([759e2ee](https://github.com/module-federation/universe/commit/759e2ee85d71ecde62ef29672fcb58211d2f65e8)) -* **nextjs-mf:** fixed broken prod builds do to missing shared module negotiations. ([07d1931](https://github.com/module-federation/universe/commit/07d19317ef22945fcb27ea577f63babcf7041a85)) -* **nextjs-mf:** starting and loading issues ([0f37165](https://github.com/module-federation/universe/commit/0f371653405ccb4c219432ac8df273effdb60c97)) -* no external helpers ([6c47fd4](https://github.com/module-federation/universe/commit/6c47fd4ce19f2292f6718d201005fba4a8552252)) -* **node:** use ES6 imports and override method in FederationModuleInfoRuntimeModule (#bytedance) ([d420ad9](https://github.com/module-federation/universe/commit/d420ad94b7515123254af45c61704abcc0971511)) -* override semantic-release-plugin-decorators ([18675de](https://github.com/module-federation/universe/commit/18675defef65570d2b3bb6a9caa3fd039badee29)) -* package data ([992d298](https://github.com/module-federation/universe/commit/992d2985c29d0bf86de6739f728fbf64749e7fd0)) -* preset process.env.NEXT_PRIVATE_LOCAL_WEBPACK ([dc236a1](https://github.com/module-federation/universe/commit/dc236a15a4a8ffee42f8e50a78adc80ad4976fbc)) -* reduce noise on async boundary plugin ([9bab3de](https://github.com/module-federation/universe/commit/9bab3de0b556120e60303921881fa4d857fe71d4)) -* remote global share scope ([e05d32f](https://github.com/module-federation/universe/commit/e05d32f489880d6b4e0fc21a3807e619a40bc5b3)) -* remove ensure remote runtime module ([d06c082](https://github.com/module-federation/universe/commit/d06c0823435063dcd277897ab551cd3a9c996d3d)) -* remove hard coded share scope ([105c124](https://github.com/module-federation/universe/commit/105c12441199621b11a85eb5368315175f127523)) -* remove logger in filesystem ([c370ed5](https://github.com/module-federation/universe/commit/c370ed5fdc5fe3423703f29daa40a4227ac51cf2)) -* remove logging on DFS ([40b8c28](https://github.com/module-federation/universe/commit/40b8c28fac9c39fec8623415a36e487152c2ef34)) -* remove logs from flush chunks ([b7d317c](https://github.com/module-federation/universe/commit/b7d317c4b2b0eda2f3530315dbf471289fa6918b)) -* resupport delegate modules ([f4843ec](https://github.com/module-federation/universe/commit/f4843ecd28b4361064be4342565e6d32eafacb2d)) -* search registry for both ident and unique name ([f22dc25](https://github.com/module-federation/universe/commit/f22dc25e5a6374273b1bc51b0e101b57226c5906)) -* server sharing ([1c5c6a8](https://github.com/module-federation/universe/commit/1c5c6a8cc8519c157842ae5bf79655710f7acaaf)) -* set requiredVersion to false on utils ([1e325a6](https://github.com/module-federation/universe/commit/1e325a6dedb4249c18dde8ce3ae7e57ece26a3ae)) -* share styled-jsx/css ([0a44bbd](https://github.com/module-federation/universe/commit/0a44bbdbac5f9b1debb8680894265e3670f0ac51)) -* simplify template ([b4e633b](https://github.com/module-federation/universe/commit/b4e633b6624264456800bc7351c6d815430d42b5)) -* stats plugin updates ([c1db325](https://github.com/module-federation/universe/commit/c1db325d3311b2126964f4ad2ddbfa9d82a50674)) -* switch to @goestav/nx-semantic-release ([63a3350](https://github.com/module-federation/universe/commit/63a3350a6a1a12235e3c9f1e7c724d54f0476356)) -* throw errors if NEXT_PRIVATE_LOCAL_WEBPACK is false ([1256488](https://github.com/module-federation/universe/commit/1256488870ee8d23b0daafe6b6041228652ab883)) -* Ts import error ([6e7974c](https://github.com/module-federation/universe/commit/6e7974c22874378122ab31eea27dddd0604505db)) -* TS imports to webpack ([d506b49](https://github.com/module-federation/universe/commit/d506b492b724ccfb7fdcf6234196ac421564c153)) -* TS imports, missing module methods ([8eb422d](https://github.com/module-federation/universe/commit/8eb422d30e149cb0d96835f036ec73ce1ccafe53)) -* ts in template string ([0a0d03d](https://github.com/module-federation/universe/commit/0a0d03dd9acb465f0b80bdd9787150e586e6bfcf)) -* ts in template string ([579b341](https://github.com/module-federation/universe/commit/579b341a5eb38ca6396da15f9667729ab84d2ff6)) -* ts in template string ([37e790a](https://github.com/module-federation/universe/commit/37e790a7b46ff6d8c8fd2c12cfd5629900db1b53)) -* ts in template string ([0edbbea](https://github.com/module-federation/universe/commit/0edbbeaa42503237b88132252e29a34a79bade51)) -* ts in template string ([1d56efd](https://github.com/module-federation/universe/commit/1d56efdf3d0bc78d19d187fe561fbbf453bada87)) -* ts in template string ([9b8f652](https://github.com/module-federation/universe/commit/9b8f652f96bf6f29d5fc238bb616e19187158a57)) -* ts in template string ([113d703](https://github.com/module-federation/universe/commit/113d7037de8238ed0bcf9418ac1bf3d082fbea66)) -* typescript issues ([0a07481](https://github.com/module-federation/universe/commit/0a07481552e1df6b35506165cbc649996004c318)) -* use access public ([6ab884e](https://github.com/module-federation/universe/commit/6ab884e824063db16a38c55df943a23d94338d4c)) -* use ES5 for renderStartup of entrypoint ([d14324a](https://github.com/module-federation/universe/commit/d14324a9af856fca974a8f9945ba7d0d2a96be48)) - +- add exported file ([19b1afb](https://github.com/module-federation/universe/commit/19b1afbd58572897f36b16926f841e35d154c712)) +- add missing serialize method on RemoteModule ([e7ac801](https://github.com/module-federation/universe/commit/e7ac801151b08dbb5ca025bd8ac03683f792f92f)) +- add override to remoteModule ([875038a](https://github.com/module-federation/universe/commit/875038ad68dfed05822c1bc7c68ae91e57282f4f)) +- add share logic just for next ([c947a50](https://github.com/module-federation/universe/commit/c947a504224feac5bbb5d3788d3cfc21dd9c5b28)) +- add styled-jsx to internal share ([a50dae8](https://github.com/module-federation/universe/commit/a50dae8ead5ed46491bf3cfa8452a536ba0de622)) +- Auto Public Path, detect multiple output targets ([65f17b1](https://github.com/module-federation/universe/commit/65f17b189f37e0ad9e72bb0bf04463e9c5455929)) +- bad impleentation during federation port ([cc2e53f](https://github.com/module-federation/universe/commit/cc2e53f0351fb94c9068223ad6b8d990a913ab53)) +- broken versioning issues in consumes ([e7fada2](https://github.com/module-federation/universe/commit/e7fada211b1e58dc52eafeff4210a9ce62636f9d)) +- change exports for module info runtime ([f40c538](https://github.com/module-federation/universe/commit/f40c538221353a61938cadf624c9235ec8eb4cce)) +- chunk flushing ([c9df545](https://github.com/module-federation/universe/commit/c9df5451c84e6458b392884492bf669bf7383d5c)) +- **deps:** update dependency axios to v1.5.1 ([ae9a06a](https://github.com/module-federation/universe/commit/ae9a06a0cc35fad27a0b493a25370b92617c39fb)) +- **deps:** update dependency core-js to v3.33.0 ([30894ca](https://github.com/module-federation/universe/commit/30894cafbe5dea4350dc7c633548038d7ec5f8a8)) +- **deps:** update dependency typedoc to v0.25.2 ([46c6524](https://github.com/module-federation/universe/commit/46c65247e187cee9e15625402c1570ac351bb1fe)) +- **deps:** update dependency undici to v5.25.2 ([da3e539](https://github.com/module-federation/universe/commit/da3e539a41ed23ccb5086b1dd428fbee0f8d652c)) +- **deps:** update dependency undici to v5.25.4 ([1d4f91e](https://github.com/module-federation/universe/commit/1d4f91ec93da4326c8a42eef28f150d5d09738bb)) +- **deps:** update dependency unplugin to v1.5.0 ([936b3f8](https://github.com/module-federation/universe/commit/936b3f8d8061fd9d481d1788fb35b88588928d14)) +- dont crash offline remotes ([f0d7671](https://github.com/module-federation/universe/commit/f0d7671569ac34f64017a303739b54880f5220e6)) +- dont patch webpack env var ([757d44b](https://github.com/module-federation/universe/commit/757d44bc74b543f26a022223b5ae2d1d640838ea)) +- enable path fixes ([2f9e14b](https://github.com/module-federation/universe/commit/2f9e14b602c71d357063a8168d8ea8c554bcb2ca)) +- enable path fixes again ([6098fee](https://github.com/module-federation/universe/commit/6098fee3b3734018ec0f4866656709f3b5d20173)) +- **enhanced:** module info duplication ([49b4a57](https://github.com/module-federation/universe/commit/49b4a5736714c1db4510d10cdd5fe0277123caa8)) +- **enhanced:** syntax issue in proxy ([2e5848b](https://github.com/module-federation/universe/commit/2e5848b4be3e3bba46508a427c1bc8f2d3043c8d)) +- ensure chunk handler exists before calling it ([98ba838](https://github.com/module-federation/universe/commit/98ba838f979bbef11f5d678c3bf27a4de534cf9d)) +- ensure custom FS works with target: node or async node preset ([a08fcab](https://github.com/module-federation/universe/commit/a08fcab7dde903966d34be9dab0b34c8896948ca)) +- ensure sharing of react/jsx runtime and dev runtime ([ae890d5](https://github.com/module-federation/universe/commit/ae890d5e5698c729618d602053b4336b067dd34a)) +- export parseRemotes ([12ed54c](https://github.com/module-federation/universe/commit/12ed54c87ba539bc2a79cdee86058f0a2776653e)) +- fix styled-jsx flushing ([207db51](https://github.com/module-federation/universe/commit/207db51c16f9b92c8e0c25f0b2157359488e552d)) +- hot reloading system ([99f733b](https://github.com/module-federation/universe/commit/99f733bbdbd727a99fbaaeab3f92f4b65fa568dd)) +- ignore TS issues in async plugin ([f6e3e7f](https://github.com/module-federation/universe/commit/f6e3e7f9ca6aabdf26752f8f794e1176fc73af1c)) +- import utils manually ([2767191](https://github.com/module-federation/universe/commit/2767191467d9d685704b747d42b5f170da233847)) +- improve backward compat **remote_scope** global ([ac0efa3](https://github.com/module-federation/universe/commit/ac0efa37d975a130aa3badc657fa66d723865a5b)) +- improve externals lookup ([5630eb9](https://github.com/module-federation/universe/commit/5630eb9e891e5a819938f3eb9742a882dac1ef16)) +- improve image loader public path calc ([d86dcde](https://github.com/module-federation/universe/commit/d86dcde344d5d9b7430512672ec26c53ac0f100e)) +- improve logic in runtime module info proxy ([8eea1a8](https://github.com/module-federation/universe/commit/8eea1a84ae6a12f69dbb16d00f52ec902efbdda6)) +- legacy scope duplication on recreation ([347e4c9](https://github.com/module-federation/universe/commit/347e4c96e87ff4f28dce319fc6b2fe40f1cbabee)) +- lint container module ([ea4f105](https://github.com/module-federation/universe/commit/ea4f105e4949f041a8747a0e3ce50e7020598f88)) +- module order of inverted container runtime ([90caa8d](https://github.com/module-federation/universe/commit/90caa8dc80f9af7c6c6f8d7a4a437e337540ddc3)) +- move cache file hashing to next-mf ([11917bf](https://github.com/module-federation/universe/commit/11917bf4500b9ebdb14b46631d89350a98511461)) +- **nextjs-mf:** adding link and image to new shared setup ([8bd3c05](https://github.com/module-federation/universe/commit/8bd3c059a8ebd9c00d3ec2a59afe8a3337c85960)) +- **nextjs-mf:** fix sharing strat to prever host always if react ([759e2ee](https://github.com/module-federation/universe/commit/759e2ee85d71ecde62ef29672fcb58211d2f65e8)) +- **nextjs-mf:** fixed broken prod builds do to missing shared module negotiations. ([07d1931](https://github.com/module-federation/universe/commit/07d19317ef22945fcb27ea577f63babcf7041a85)) +- **nextjs-mf:** starting and loading issues ([0f37165](https://github.com/module-federation/universe/commit/0f371653405ccb4c219432ac8df273effdb60c97)) +- no external helpers ([6c47fd4](https://github.com/module-federation/universe/commit/6c47fd4ce19f2292f6718d201005fba4a8552252)) +- **node:** use ES6 imports and override method in FederationModuleInfoRuntimeModule (#bytedance) ([d420ad9](https://github.com/module-federation/universe/commit/d420ad94b7515123254af45c61704abcc0971511)) +- override semantic-release-plugin-decorators ([18675de](https://github.com/module-federation/universe/commit/18675defef65570d2b3bb6a9caa3fd039badee29)) +- package data ([992d298](https://github.com/module-federation/universe/commit/992d2985c29d0bf86de6739f728fbf64749e7fd0)) +- preset process.env.NEXT_PRIVATE_LOCAL_WEBPACK ([dc236a1](https://github.com/module-federation/universe/commit/dc236a15a4a8ffee42f8e50a78adc80ad4976fbc)) +- reduce noise on async boundary plugin ([9bab3de](https://github.com/module-federation/universe/commit/9bab3de0b556120e60303921881fa4d857fe71d4)) +- remote global share scope ([e05d32f](https://github.com/module-federation/universe/commit/e05d32f489880d6b4e0fc21a3807e619a40bc5b3)) +- remove ensure remote runtime module ([d06c082](https://github.com/module-federation/universe/commit/d06c0823435063dcd277897ab551cd3a9c996d3d)) +- remove hard coded share scope ([105c124](https://github.com/module-federation/universe/commit/105c12441199621b11a85eb5368315175f127523)) +- remove logger in filesystem ([c370ed5](https://github.com/module-federation/universe/commit/c370ed5fdc5fe3423703f29daa40a4227ac51cf2)) +- remove logging on DFS ([40b8c28](https://github.com/module-federation/universe/commit/40b8c28fac9c39fec8623415a36e487152c2ef34)) +- remove logs from flush chunks ([b7d317c](https://github.com/module-federation/universe/commit/b7d317c4b2b0eda2f3530315dbf471289fa6918b)) +- resupport delegate modules ([f4843ec](https://github.com/module-federation/universe/commit/f4843ecd28b4361064be4342565e6d32eafacb2d)) +- search registry for both ident and unique name ([f22dc25](https://github.com/module-federation/universe/commit/f22dc25e5a6374273b1bc51b0e101b57226c5906)) +- server sharing ([1c5c6a8](https://github.com/module-federation/universe/commit/1c5c6a8cc8519c157842ae5bf79655710f7acaaf)) +- set requiredVersion to false on utils ([1e325a6](https://github.com/module-federation/universe/commit/1e325a6dedb4249c18dde8ce3ae7e57ece26a3ae)) +- share styled-jsx/css ([0a44bbd](https://github.com/module-federation/universe/commit/0a44bbdbac5f9b1debb8680894265e3670f0ac51)) +- simplify template ([b4e633b](https://github.com/module-federation/universe/commit/b4e633b6624264456800bc7351c6d815430d42b5)) +- stats plugin updates ([c1db325](https://github.com/module-federation/universe/commit/c1db325d3311b2126964f4ad2ddbfa9d82a50674)) +- switch to @goestav/nx-semantic-release ([63a3350](https://github.com/module-federation/universe/commit/63a3350a6a1a12235e3c9f1e7c724d54f0476356)) +- throw errors if NEXT_PRIVATE_LOCAL_WEBPACK is false ([1256488](https://github.com/module-federation/universe/commit/1256488870ee8d23b0daafe6b6041228652ab883)) +- Ts import error ([6e7974c](https://github.com/module-federation/universe/commit/6e7974c22874378122ab31eea27dddd0604505db)) +- TS imports to webpack ([d506b49](https://github.com/module-federation/universe/commit/d506b492b724ccfb7fdcf6234196ac421564c153)) +- TS imports, missing module methods ([8eb422d](https://github.com/module-federation/universe/commit/8eb422d30e149cb0d96835f036ec73ce1ccafe53)) +- ts in template string ([0a0d03d](https://github.com/module-federation/universe/commit/0a0d03dd9acb465f0b80bdd9787150e586e6bfcf)) +- ts in template string ([579b341](https://github.com/module-federation/universe/commit/579b341a5eb38ca6396da15f9667729ab84d2ff6)) +- ts in template string ([37e790a](https://github.com/module-federation/universe/commit/37e790a7b46ff6d8c8fd2c12cfd5629900db1b53)) +- ts in template string ([0edbbea](https://github.com/module-federation/universe/commit/0edbbeaa42503237b88132252e29a34a79bade51)) +- ts in template string ([1d56efd](https://github.com/module-federation/universe/commit/1d56efdf3d0bc78d19d187fe561fbbf453bada87)) +- ts in template string ([9b8f652](https://github.com/module-federation/universe/commit/9b8f652f96bf6f29d5fc238bb616e19187158a57)) +- ts in template string ([113d703](https://github.com/module-federation/universe/commit/113d7037de8238ed0bcf9418ac1bf3d082fbea66)) +- typescript issues ([0a07481](https://github.com/module-federation/universe/commit/0a07481552e1df6b35506165cbc649996004c318)) +- use access public ([6ab884e](https://github.com/module-federation/universe/commit/6ab884e824063db16a38c55df943a23d94338d4c)) +- use ES5 for renderStartup of entrypoint ([d14324a](https://github.com/module-federation/universe/commit/d14324a9af856fca974a8f9945ba7d0d2a96be48)) ### Features -* container inversion module injection ([52ad258](https://github.com/module-federation/universe/commit/52ad258a8eea90fcf40100e3b2378cd219bc4422)) -* add auto public path support for remote modules (node_auto_public_path) ([b12c984](https://github.com/module-federation/universe/commit/b12c9841aa55027cb7b77e768ff9c0b456120d51)) -* additional plugin exports ([0604461](https://github.com/module-federation/universe/commit/0604461ea8806d4e064955f5edef571a9a45d8d0)) -* AddRuntimeRequirementToPromiseExternal ([9bc5a20](https://github.com/module-federation/universe/commit/9bc5a20b54228de7d1f2554eee10360a34e8d8a1)) -* AsyncBoundaryPlugin ([00227ca](https://github.com/module-federation/universe/commit/00227cabf3a1e7286148e84d5714e020391771f7)) -* checkInvalidContext as tapable hook ([a3eb553](https://github.com/module-federation/universe/commit/a3eb5537ff462ead2230615f578569ec46199f50)) -* **ContainerEntryModule:** fix TypeScript issue, enhance needBuild method [#398](https://github.com/module-federation/universe/issues/398)a60e ([c561e11](https://github.com/module-federation/universe/commit/c561e111a54b253fd194c3b75041577dda50ad4b)), closes [#398a60](https://github.com/module-federation/universe/issues/398a60) -* create and expose AutomaticPublicPathPlugin.ts ([9d0fcdd](https://github.com/module-federation/universe/commit/9d0fcdd2e36fae971f2eec3269980baedf276b35)) -* Dynamic Filesystem ([#1274](https://github.com/module-federation/universe/issues/1274)) ([2bec98a](https://github.com/module-federation/universe/commit/2bec98a2472b44898a7f14ec6868a2368cfb6d82)) -* **enhanced:** async boundary plugin ([17640dc](https://github.com/module-federation/universe/commit/17640dcf3286ccd8c5e66378c0d6bdbc640ba3ce)) -* **enhanced:** Embedded Container Plugin ([66ac81d](https://github.com/module-federation/universe/commit/66ac81db05491eb7bbb618eb267c5331760badd1)) -* **enhanced:** Fork Module Federation ([8682990](https://github.com/module-federation/universe/commit/8682990e7fec6309ce20572958916f747737af90)) -* **enhanced:** Refactor ContainerEntryDependency and ContainerEntryModule for better code readability and maintainability ([e93e7d2](https://github.com/module-federation/universe/commit/e93e7d2fafe2e22f7d2c613095ce1900d7531f29)) -* FederationModuleInfo Runtime Module ([50a1a0c](https://github.com/module-federation/universe/commit/50a1a0c7a37bbe42ab6f2f5559b411567fee0fe9)) -* FederationModuleInfo Runtime Module ([7b09ef6](https://github.com/module-federation/universe/commit/7b09ef6c0f4ee68a1b5caa5f021632059c522b8f)) -* fork module federation ([0ad7430](https://github.com/module-federation/universe/commit/0ad7430f6170458a47144be392133b7b2fa1ade0)) -* implement Bytedance Infra Node Plugin ([82e6801](https://github.com/module-federation/universe/commit/82e680157bbad68fa93800a69149c4c28652cfed)) -* implement Bytedance Infra Node Plugin ([97f283e](https://github.com/module-federation/universe/commit/97f283e4746bf6f048ee27584adde5249c8e577c)) -* implement custom next vanity federation plugin ([5e584e6](https://github.com/module-federation/universe/commit/5e584e6415820f15c32ef683796f02aac72e207d)) -* improve options logic in node federation plugin ([b69b70d](https://github.com/module-federation/universe/commit/b69b70d200c63e3557089e8a0669fc43330c988c)) -* improved async init ([17b1419](https://github.com/module-federation/universe/commit/17b1419ef31ec5661fa06b9f0c297e2771e2a86c)) -* improved async init ([bb19b07](https://github.com/module-federation/universe/commit/bb19b07b5be1bbc28bd6b049ea7aea6510ad17a2)) -* improved async init ([ae3a450](https://github.com/module-federation/universe/commit/ae3a4503ff9de86492b13029d6334b281ddd9493)) -* improved async init ([08aa0fa](https://github.com/module-federation/universe/commit/08aa0faf00781b19a3360af15492142e6f7e0999)) -* improved async init ([019694e](https://github.com/module-federation/universe/commit/019694e55fe1f6bebfdab0701bf9087bf0034b8f)) -* native self forming node federation ([#1291](https://github.com/module-federation/universe/issues/1291)) ([1dd5ed1](https://github.com/module-federation/universe/commit/1dd5ed17c981e036336925e807203e94b58c36d6)) -* new actions, remove gpt integration ([370229e](https://github.com/module-federation/universe/commit/370229e02cc352fcfaeaa0f3cf1f9f2d4966d1bb)) -* **node-remote:** Improve module federation runtime compatibility ([5eb2092](https://github.com/module-federation/universe/commit/5eb209249c44d525c12eff5739bf23a93db08e4f)) -* **node:** auto set public path and improve chunk loading strategy #node_auto_public_path ([65989da](https://github.com/module-federation/universe/commit/65989dab95ee2acee7ec9a5ab321921a278cd078)) -* **node:** enhance error handling and remote container registry in RemotePublicPathRuntimeModule (#bytedance) ([061285e](https://github.com/module-federation/universe/commit/061285e0b6210baa1dd502dc94fd57fd9a8af822)) -* **NodeFederationPlugin:** assign remoteContainerRegistry to importMetaName ([ca33d98](https://github.com/module-federation/universe/commit/ca33d98df63fdb8dac402b1cc0ec8bf95f9f1971)) -* **node:** remove unused import from DynamicFilesystemRuntimeModule ([f9787a9](https://github.com/module-federation/universe/commit/f9787a9a67da936679db388e5c66e012e7452d8a)) -* prefer host modules for next and react ([7f253f1](https://github.com/module-federation/universe/commit/7f253f123b21504148221ef4727c41b3d43a19f0)) -* remove custom jsonp runtime patching ([718c3fc](https://github.com/module-federation/universe/commit/718c3fc497d89d5228680d0949e4192070f59cf9)) -* remove old loadScript hack ([fbe19bc](https://github.com/module-federation/universe/commit/fbe19bc76694c14b6a95c577669c2e8656ede1ba)) -* rewrite next federation vanity plugin ([b8c9859](https://github.com/module-federation/universe/commit/b8c98599ba78102183f59964ccee3d29bbe2bedf)) -* share next/image ([f4b0386](https://github.com/module-federation/universe/commit/f4b03869743cf9188c2227c1e28321367a199955)) -* Static fallback to non auto public path ([3c58780](https://github.com/module-federation/universe/commit/3c587809f1e936fba291eab3d7c790115be5102c)) -* support lazy compilation ([29c234c](https://github.com/module-federation/universe/commit/29c234c14315e000acefc60d635ee486205ca83e)) -* support vmok conventions ([0501da8](https://github.com/module-federation/universe/commit/0501da86eaaab6ea79a3397c2c683086cc591309)) -* support vmok conventions ([d53b586](https://github.com/module-federation/universe/commit/d53b5867719eb7fff32bee2edd3255023d598f44)) -* use enhanced federation plugin ([1ec5f0f](https://github.com/module-federation/universe/commit/1ec5f0f98986b21605714565d3543f92b8b9aeaf)) -* Use enhanced Federation Plugin ([e021d66](https://github.com/module-federation/universe/commit/e021d6667996962f154137d164bed13f53a6a135)) -* **utilities:** update DelegateModulesPlugin and tests (#node_auto_public_path) ([df8bb79](https://github.com/module-federation/universe/commit/df8bb791c3fedef299cb15960546ff5ad9c665ef)) +- container inversion module injection ([52ad258](https://github.com/module-federation/universe/commit/52ad258a8eea90fcf40100e3b2378cd219bc4422)) +- add auto public path support for remote modules (node_auto_public_path) ([b12c984](https://github.com/module-federation/universe/commit/b12c9841aa55027cb7b77e768ff9c0b456120d51)) +- additional plugin exports ([0604461](https://github.com/module-federation/universe/commit/0604461ea8806d4e064955f5edef571a9a45d8d0)) +- AddRuntimeRequirementToPromiseExternal ([9bc5a20](https://github.com/module-federation/universe/commit/9bc5a20b54228de7d1f2554eee10360a34e8d8a1)) +- AsyncBoundaryPlugin ([00227ca](https://github.com/module-federation/universe/commit/00227cabf3a1e7286148e84d5714e020391771f7)) +- checkInvalidContext as tapable hook ([a3eb553](https://github.com/module-federation/universe/commit/a3eb5537ff462ead2230615f578569ec46199f50)) +- **ContainerEntryModule:** fix TypeScript issue, enhance needBuild method [#398](https://github.com/module-federation/universe/issues/398)a60e ([c561e11](https://github.com/module-federation/universe/commit/c561e111a54b253fd194c3b75041577dda50ad4b)), closes [#398a60](https://github.com/module-federation/universe/issues/398a60) +- create and expose AutomaticPublicPathPlugin.ts ([9d0fcdd](https://github.com/module-federation/universe/commit/9d0fcdd2e36fae971f2eec3269980baedf276b35)) +- Dynamic Filesystem ([#1274](https://github.com/module-federation/universe/issues/1274)) ([2bec98a](https://github.com/module-federation/universe/commit/2bec98a2472b44898a7f14ec6868a2368cfb6d82)) +- **enhanced:** async boundary plugin ([17640dc](https://github.com/module-federation/universe/commit/17640dcf3286ccd8c5e66378c0d6bdbc640ba3ce)) +- **enhanced:** Embedded Container Plugin ([66ac81d](https://github.com/module-federation/universe/commit/66ac81db05491eb7bbb618eb267c5331760badd1)) +- **enhanced:** Fork Module Federation ([8682990](https://github.com/module-federation/universe/commit/8682990e7fec6309ce20572958916f747737af90)) +- **enhanced:** Refactor ContainerEntryDependency and ContainerEntryModule for better code readability and maintainability ([e93e7d2](https://github.com/module-federation/universe/commit/e93e7d2fafe2e22f7d2c613095ce1900d7531f29)) +- FederationModuleInfo Runtime Module ([50a1a0c](https://github.com/module-federation/universe/commit/50a1a0c7a37bbe42ab6f2f5559b411567fee0fe9)) +- FederationModuleInfo Runtime Module ([7b09ef6](https://github.com/module-federation/universe/commit/7b09ef6c0f4ee68a1b5caa5f021632059c522b8f)) +- fork module federation ([0ad7430](https://github.com/module-federation/universe/commit/0ad7430f6170458a47144be392133b7b2fa1ade0)) +- implement Bytedance Infra Node Plugin ([82e6801](https://github.com/module-federation/universe/commit/82e680157bbad68fa93800a69149c4c28652cfed)) +- implement Bytedance Infra Node Plugin ([97f283e](https://github.com/module-federation/universe/commit/97f283e4746bf6f048ee27584adde5249c8e577c)) +- implement custom next vanity federation plugin ([5e584e6](https://github.com/module-federation/universe/commit/5e584e6415820f15c32ef683796f02aac72e207d)) +- improve options logic in node federation plugin ([b69b70d](https://github.com/module-federation/universe/commit/b69b70d200c63e3557089e8a0669fc43330c988c)) +- improved async init ([17b1419](https://github.com/module-federation/universe/commit/17b1419ef31ec5661fa06b9f0c297e2771e2a86c)) +- improved async init ([bb19b07](https://github.com/module-federation/universe/commit/bb19b07b5be1bbc28bd6b049ea7aea6510ad17a2)) +- improved async init ([ae3a450](https://github.com/module-federation/universe/commit/ae3a4503ff9de86492b13029d6334b281ddd9493)) +- improved async init ([08aa0fa](https://github.com/module-federation/universe/commit/08aa0faf00781b19a3360af15492142e6f7e0999)) +- improved async init ([019694e](https://github.com/module-federation/universe/commit/019694e55fe1f6bebfdab0701bf9087bf0034b8f)) +- native self forming node federation ([#1291](https://github.com/module-federation/universe/issues/1291)) ([1dd5ed1](https://github.com/module-federation/universe/commit/1dd5ed17c981e036336925e807203e94b58c36d6)) +- new actions, remove gpt integration ([370229e](https://github.com/module-federation/universe/commit/370229e02cc352fcfaeaa0f3cf1f9f2d4966d1bb)) +- **node-remote:** Improve module federation runtime compatibility ([5eb2092](https://github.com/module-federation/universe/commit/5eb209249c44d525c12eff5739bf23a93db08e4f)) +- **node:** auto set public path and improve chunk loading strategy #node_auto_public_path ([65989da](https://github.com/module-federation/universe/commit/65989dab95ee2acee7ec9a5ab321921a278cd078)) +- **node:** enhance error handling and remote container registry in RemotePublicPathRuntimeModule (#bytedance) ([061285e](https://github.com/module-federation/universe/commit/061285e0b6210baa1dd502dc94fd57fd9a8af822)) +- **NodeFederationPlugin:** assign remoteContainerRegistry to importMetaName ([ca33d98](https://github.com/module-federation/universe/commit/ca33d98df63fdb8dac402b1cc0ec8bf95f9f1971)) +- **node:** remove unused import from DynamicFilesystemRuntimeModule ([f9787a9](https://github.com/module-federation/universe/commit/f9787a9a67da936679db388e5c66e012e7452d8a)) +- prefer host modules for next and react ([7f253f1](https://github.com/module-federation/universe/commit/7f253f123b21504148221ef4727c41b3d43a19f0)) +- remove custom jsonp runtime patching ([718c3fc](https://github.com/module-federation/universe/commit/718c3fc497d89d5228680d0949e4192070f59cf9)) +- remove old loadScript hack ([fbe19bc](https://github.com/module-federation/universe/commit/fbe19bc76694c14b6a95c577669c2e8656ede1ba)) +- rewrite next federation vanity plugin ([b8c9859](https://github.com/module-federation/universe/commit/b8c98599ba78102183f59964ccee3d29bbe2bedf)) +- share next/image ([f4b0386](https://github.com/module-federation/universe/commit/f4b03869743cf9188c2227c1e28321367a199955)) +- Static fallback to non auto public path ([3c58780](https://github.com/module-federation/universe/commit/3c587809f1e936fba291eab3d7c790115be5102c)) +- support lazy compilation ([29c234c](https://github.com/module-federation/universe/commit/29c234c14315e000acefc60d635ee486205ca83e)) +- support vmok conventions ([0501da8](https://github.com/module-federation/universe/commit/0501da86eaaab6ea79a3397c2c683086cc591309)) +- support vmok conventions ([d53b586](https://github.com/module-federation/universe/commit/d53b5867719eb7fff32bee2edd3255023d598f44)) +- use enhanced federation plugin ([1ec5f0f](https://github.com/module-federation/universe/commit/1ec5f0f98986b21605714565d3543f92b8b9aeaf)) +- Use enhanced Federation Plugin ([e021d66](https://github.com/module-federation/universe/commit/e021d6667996962f154137d164bed13f53a6a135)) +- **utilities:** update DelegateModulesPlugin and tests (#node_auto_public_path) ([df8bb79](https://github.com/module-federation/universe/commit/df8bb791c3fedef299cb15960546ff5ad9c665ef)) ## [8.1.1](https://github.com/module-federation/universe/compare/nextjs-mf-8.1.0...nextjs-mf-8.1.1) (2023-10-12) From 748c073adf5f48e5ac2b7b281e6ce739b9e58299 Mon Sep 17 00:00:00 2001 From: semantic-release-bot Date: Mon, 6 Nov 2023 23:06:39 +0000 Subject: [PATCH 018/185] chore(release): Release enhanced v0.2.0-canary.1 [skip ci] --- packages/enhanced/CHANGELOG.md | 18 ++++++++++++++++++ packages/enhanced/package.json | 2 +- 2 files changed, 19 insertions(+), 1 deletion(-) diff --git a/packages/enhanced/CHANGELOG.md b/packages/enhanced/CHANGELOG.md index 2afdd40f19b..6e9b92a6dae 100644 --- a/packages/enhanced/CHANGELOG.md +++ b/packages/enhanced/CHANGELOG.md @@ -1,3 +1,21 @@ +# [0.2.0-canary.1](https://github.com/module-federation/universe/compare/enhanced-0.1.0...enhanced-0.2.0-canary.1) (2023-11-06) + + +### Bug Fixes + +* **deps:** update dependency typedoc to v0.25.2 ([46c6524](https://github.com/module-federation/universe/commit/46c65247e187cee9e15625402c1570ac351bb1fe)) +* **deps:** update dependency undici to v5.26.2 [security] ([410a8b8](https://github.com/module-federation/universe/commit/410a8b8bd1558dfb5119ae10941d2b3816a0d0e0)) +* override semantic-release-plugin-decorators ([18675de](https://github.com/module-federation/universe/commit/18675defef65570d2b3bb6a9caa3fd039badee29)) +* switch to @goestav/nx-semantic-release ([63a3350](https://github.com/module-federation/universe/commit/63a3350a6a1a12235e3c9f1e7c724d54f0476356)) + + +### Features + +* **enhanced:** new async boundary plugin design ([a4ac1ac](https://github.com/module-federation/universe/commit/a4ac1acff974f74db6395c31134de14d9c344b6f)) +* **enhanced:** Rewrite Async Boundary based on bytedance version ([fa05dd6](https://github.com/module-federation/universe/commit/fa05dd6bce2dd577b1e3fd84533459a04dbe195a)) +* **enhanced:** Support Async Mode and option ([3c33b8e](https://github.com/module-federation/universe/commit/3c33b8ea3b483de5dcc3e5da9fb40c9826fdb7f7)) +* new actions, remove gpt integration ([370229e](https://github.com/module-federation/universe/commit/370229e02cc352fcfaeaa0f3cf1f9f2d4966d1bb)) + # Changelog This file was generated using [@jscutlery/semver](https://github.com/jscutlery/semver). diff --git a/packages/enhanced/package.json b/packages/enhanced/package.json index dc229072825..77055051ef5 100644 --- a/packages/enhanced/package.json +++ b/packages/enhanced/package.json @@ -1,6 +1,6 @@ { "name": "@module-federation/enhanced", - "version": "0.1.0", + "version": "0.2.0-canary.1", "type": "commonjs", "main": "src/index.js", "types": "src/index.d.ts", From 828ea47671ff00023377b508ae9e030fcdf69e2c Mon Sep 17 00:00:00 2001 From: semantic-release-bot Date: Mon, 6 Nov 2023 23:06:52 +0000 Subject: [PATCH 019/185] chore(release): Release nextjs-mf v8.1.0-canary.2 [skip ci] --- packages/nextjs-mf/CHANGELOG.md | 14 ++++++++++++++ packages/nextjs-mf/package.json | 2 +- 2 files changed, 15 insertions(+), 1 deletion(-) diff --git a/packages/nextjs-mf/CHANGELOG.md b/packages/nextjs-mf/CHANGELOG.md index 22137a2701b..14de6852e4a 100644 --- a/packages/nextjs-mf/CHANGELOG.md +++ b/packages/nextjs-mf/CHANGELOG.md @@ -1,3 +1,17 @@ +# [8.1.0-canary.2](https://github.com/module-federation/universe/compare/nextjs-mf-8.1.0-canary.1...nextjs-mf-8.1.0-canary.2) (2023-11-06) + + +### Bug Fixes + +* **deps:** update dependency undici to v5.26.2 [security] ([410a8b8](https://github.com/module-federation/universe/commit/410a8b8bd1558dfb5119ae10941d2b3816a0d0e0)) + + +### Features + +* **enhanced:** new async boundary plugin design ([a4ac1ac](https://github.com/module-federation/universe/commit/a4ac1acff974f74db6395c31134de14d9c344b6f)) +* **enhanced:** Rewrite Async Boundary based on bytedance version ([fa05dd6](https://github.com/module-federation/universe/commit/fa05dd6bce2dd577b1e3fd84533459a04dbe195a)) +* **enhanced:** Support Async Mode and option ([3c33b8e](https://github.com/module-federation/universe/commit/3c33b8ea3b483de5dcc3e5da9fb40c9826fdb7f7)) + # [8.1.0-canary.1](https://github.com/module-federation/universe/compare/nextjs-mf-8.0.0...nextjs-mf-8.1.0-canary.1) (2023-10-23) ### Bug Fixes diff --git a/packages/nextjs-mf/package.json b/packages/nextjs-mf/package.json index 37eaf8b67c2..dd77c9c5e6e 100644 --- a/packages/nextjs-mf/package.json +++ b/packages/nextjs-mf/package.json @@ -1,6 +1,6 @@ { "name": "@module-federation/nextjs-mf", - "version": "8.1.0-canary.1", + "version": "8.1.0-canary.2", "license": "MIT", "main": "src/index.js", "types": "src/index.d.ts", From 647234632616ef559ac2afc5706c83663dd31f83 Mon Sep 17 00:00:00 2001 From: semantic-release-bot Date: Mon, 6 Nov 2023 23:10:11 +0000 Subject: [PATCH 020/185] chore(release): Release node v2.1.0-canary.1 [skip ci] --- packages/node/CHANGELOG.md | 96 ++++++++++++++++++++++++++++++++++++++ packages/node/package.json | 2 +- 2 files changed, 97 insertions(+), 1 deletion(-) diff --git a/packages/node/CHANGELOG.md b/packages/node/CHANGELOG.md index faa608de664..7f373cf8ad2 100644 --- a/packages/node/CHANGELOG.md +++ b/packages/node/CHANGELOG.md @@ -1,3 +1,99 @@ +# [2.1.0-canary.1](https://github.com/module-federation/universe/compare/node-2.0.1...node-2.1.0-canary.1) (2023-11-06) + + +### Bug Fixes + +* add exported file ([19b1afb](https://github.com/module-federation/universe/commit/19b1afbd58572897f36b16926f841e35d154c712)) +* add missing serialize method on RemoteModule ([e7ac801](https://github.com/module-federation/universe/commit/e7ac801151b08dbb5ca025bd8ac03683f792f92f)) +* add override to remoteModule ([875038a](https://github.com/module-federation/universe/commit/875038ad68dfed05822c1bc7c68ae91e57282f4f)) +* Auto Public Path, detect multiple output targets ([65f17b1](https://github.com/module-federation/universe/commit/65f17b189f37e0ad9e72bb0bf04463e9c5455929)) +* bad impleentation during federation port ([cc2e53f](https://github.com/module-federation/universe/commit/cc2e53f0351fb94c9068223ad6b8d990a913ab53)) +* broken versioning issues in consumes ([e7fada2](https://github.com/module-federation/universe/commit/e7fada211b1e58dc52eafeff4210a9ce62636f9d)) +* change exports for module info runtime ([f40c538](https://github.com/module-federation/universe/commit/f40c538221353a61938cadf624c9235ec8eb4cce)) +* chunk flushing ([c9df545](https://github.com/module-federation/universe/commit/c9df5451c84e6458b392884492bf669bf7383d5c)) +* **deps:** update dependency axios to v1.5.1 ([ae9a06a](https://github.com/module-federation/universe/commit/ae9a06a0cc35fad27a0b493a25370b92617c39fb)) +* **deps:** update dependency core-js to v3.33.0 ([30894ca](https://github.com/module-federation/universe/commit/30894cafbe5dea4350dc7c633548038d7ec5f8a8)) +* **deps:** update dependency typedoc to v0.25.2 ([46c6524](https://github.com/module-federation/universe/commit/46c65247e187cee9e15625402c1570ac351bb1fe)) +* **deps:** update dependency undici to v5.25.2 ([da3e539](https://github.com/module-federation/universe/commit/da3e539a41ed23ccb5086b1dd428fbee0f8d652c)) +* **deps:** update dependency undici to v5.25.4 ([1d4f91e](https://github.com/module-federation/universe/commit/1d4f91ec93da4326c8a42eef28f150d5d09738bb)) +* **deps:** update dependency undici to v5.26.2 [security] ([410a8b8](https://github.com/module-federation/universe/commit/410a8b8bd1558dfb5119ae10941d2b3816a0d0e0)) +* **deps:** update dependency unplugin to v1.5.0 ([936b3f8](https://github.com/module-federation/universe/commit/936b3f8d8061fd9d481d1788fb35b88588928d14)) +* dont crash offline remotes ([f0d7671](https://github.com/module-federation/universe/commit/f0d7671569ac34f64017a303739b54880f5220e6)) +* **enhanced:** module info duplication ([49b4a57](https://github.com/module-federation/universe/commit/49b4a5736714c1db4510d10cdd5fe0277123caa8)) +* **enhanced:** syntax issue in proxy ([2e5848b](https://github.com/module-federation/universe/commit/2e5848b4be3e3bba46508a427c1bc8f2d3043c8d)) +* ensure chunk handler exists before calling it ([98ba838](https://github.com/module-federation/universe/commit/98ba838f979bbef11f5d678c3bf27a4de534cf9d)) +* ensure custom FS works with target: node or async node preset ([a08fcab](https://github.com/module-federation/universe/commit/a08fcab7dde903966d34be9dab0b34c8896948ca)) +* export parseRemotes ([12ed54c](https://github.com/module-federation/universe/commit/12ed54c87ba539bc2a79cdee86058f0a2776653e)) +* hot reloading system ([99f733b](https://github.com/module-federation/universe/commit/99f733bbdbd727a99fbaaeab3f92f4b65fa568dd)) +* import utils manually ([2767191](https://github.com/module-federation/universe/commit/2767191467d9d685704b747d42b5f170da233847)) +* improve backward compat __remote_scope__ global ([ac0efa3](https://github.com/module-federation/universe/commit/ac0efa37d975a130aa3badc657fa66d723865a5b)) +* improve logic in runtime module info proxy ([8eea1a8](https://github.com/module-federation/universe/commit/8eea1a84ae6a12f69dbb16d00f52ec902efbdda6)) +* legacy scope duplication on recreation ([347e4c9](https://github.com/module-federation/universe/commit/347e4c96e87ff4f28dce319fc6b2fe40f1cbabee)) +* no external helpers ([6c47fd4](https://github.com/module-federation/universe/commit/6c47fd4ce19f2292f6718d201005fba4a8552252)) +* **node:** use ES6 imports and override method in FederationModuleInfoRuntimeModule (#bytedance) ([d420ad9](https://github.com/module-federation/universe/commit/d420ad94b7515123254af45c61704abcc0971511)) +* override semantic-release-plugin-decorators ([18675de](https://github.com/module-federation/universe/commit/18675defef65570d2b3bb6a9caa3fd039badee29)) +* package data ([992d298](https://github.com/module-federation/universe/commit/992d2985c29d0bf86de6739f728fbf64749e7fd0)) +* remote global share scope ([e05d32f](https://github.com/module-federation/universe/commit/e05d32f489880d6b4e0fc21a3807e619a40bc5b3)) +* remove ensure remote runtime module ([d06c082](https://github.com/module-federation/universe/commit/d06c0823435063dcd277897ab551cd3a9c996d3d)) +* remove logger in filesystem ([c370ed5](https://github.com/module-federation/universe/commit/c370ed5fdc5fe3423703f29daa40a4227ac51cf2)) +* remove logging on DFS ([40b8c28](https://github.com/module-federation/universe/commit/40b8c28fac9c39fec8623415a36e487152c2ef34)) +* remove logs from flush chunks ([b7d317c](https://github.com/module-federation/universe/commit/b7d317c4b2b0eda2f3530315dbf471289fa6918b)) +* search registry for both ident and unique name ([f22dc25](https://github.com/module-federation/universe/commit/f22dc25e5a6374273b1bc51b0e101b57226c5906)) +* simplify template ([b4e633b](https://github.com/module-federation/universe/commit/b4e633b6624264456800bc7351c6d815430d42b5)) +* stats plugin updates ([c1db325](https://github.com/module-federation/universe/commit/c1db325d3311b2126964f4ad2ddbfa9d82a50674)) +* switch to @goestav/nx-semantic-release ([63a3350](https://github.com/module-federation/universe/commit/63a3350a6a1a12235e3c9f1e7c724d54f0476356)) +* Ts import error ([6e7974c](https://github.com/module-federation/universe/commit/6e7974c22874378122ab31eea27dddd0604505db)) +* TS imports to webpack ([d506b49](https://github.com/module-federation/universe/commit/d506b492b724ccfb7fdcf6234196ac421564c153)) +* TS imports, missing module methods ([8eb422d](https://github.com/module-federation/universe/commit/8eb422d30e149cb0d96835f036ec73ce1ccafe53)) +* ts in template string ([579b341](https://github.com/module-federation/universe/commit/579b341a5eb38ca6396da15f9667729ab84d2ff6)) +* ts in template string ([37e790a](https://github.com/module-federation/universe/commit/37e790a7b46ff6d8c8fd2c12cfd5629900db1b53)) +* ts in template string ([0edbbea](https://github.com/module-federation/universe/commit/0edbbeaa42503237b88132252e29a34a79bade51)) +* ts in template string ([1d56efd](https://github.com/module-federation/universe/commit/1d56efdf3d0bc78d19d187fe561fbbf453bada87)) +* ts in template string ([9b8f652](https://github.com/module-federation/universe/commit/9b8f652f96bf6f29d5fc238bb616e19187158a57)) +* ts in template string ([113d703](https://github.com/module-federation/universe/commit/113d7037de8238ed0bcf9418ac1bf3d082fbea66)) +* typescript issues ([0a07481](https://github.com/module-federation/universe/commit/0a07481552e1df6b35506165cbc649996004c318)) + + +### Features + +* add auto public path support for remote modules (node_auto_public_path) ([b12c984](https://github.com/module-federation/universe/commit/b12c9841aa55027cb7b77e768ff9c0b456120d51)) +* additional plugin exports ([0604461](https://github.com/module-federation/universe/commit/0604461ea8806d4e064955f5edef571a9a45d8d0)) +* AddRuntimeRequirementToPromiseExternal ([9bc5a20](https://github.com/module-federation/universe/commit/9bc5a20b54228de7d1f2554eee10360a34e8d8a1)) +* AsyncBoundaryPlugin ([00227ca](https://github.com/module-federation/universe/commit/00227cabf3a1e7286148e84d5714e020391771f7)) +* checkInvalidContext as tapable hook ([a3eb553](https://github.com/module-federation/universe/commit/a3eb5537ff462ead2230615f578569ec46199f50)) +* **ContainerEntryModule:** fix TypeScript issue, enhance needBuild method [#398](https://github.com/module-federation/universe/issues/398)a60e ([c561e11](https://github.com/module-federation/universe/commit/c561e111a54b253fd194c3b75041577dda50ad4b)), closes [#398a60](https://github.com/module-federation/universe/issues/398a60) +* create and expose AutomaticPublicPathPlugin.ts ([9d0fcdd](https://github.com/module-federation/universe/commit/9d0fcdd2e36fae971f2eec3269980baedf276b35)) +* Dynamic Filesystem ([#1274](https://github.com/module-federation/universe/issues/1274)) ([2bec98a](https://github.com/module-federation/universe/commit/2bec98a2472b44898a7f14ec6868a2368cfb6d82)) +* **enhanced:** Fork Module Federation ([8682990](https://github.com/module-federation/universe/commit/8682990e7fec6309ce20572958916f747737af90)) +* **enhanced:** new async boundary plugin design ([a4ac1ac](https://github.com/module-federation/universe/commit/a4ac1acff974f74db6395c31134de14d9c344b6f)) +* **enhanced:** Refactor ContainerEntryDependency and ContainerEntryModule for better code readability and maintainability ([e93e7d2](https://github.com/module-federation/universe/commit/e93e7d2fafe2e22f7d2c613095ce1900d7531f29)) +* **enhanced:** Rewrite Async Boundary based on bytedance version ([fa05dd6](https://github.com/module-federation/universe/commit/fa05dd6bce2dd577b1e3fd84533459a04dbe195a)) +* **enhanced:** Support Async Mode and option ([3c33b8e](https://github.com/module-federation/universe/commit/3c33b8ea3b483de5dcc3e5da9fb40c9826fdb7f7)) +* FederationModuleInfo Runtime Module ([50a1a0c](https://github.com/module-federation/universe/commit/50a1a0c7a37bbe42ab6f2f5559b411567fee0fe9)) +* FederationModuleInfo Runtime Module ([7b09ef6](https://github.com/module-federation/universe/commit/7b09ef6c0f4ee68a1b5caa5f021632059c522b8f)) +* fork module federation ([0ad7430](https://github.com/module-federation/universe/commit/0ad7430f6170458a47144be392133b7b2fa1ade0)) +* implement Bytedance Infra Node Plugin ([82e6801](https://github.com/module-federation/universe/commit/82e680157bbad68fa93800a69149c4c28652cfed)) +* implement Bytedance Infra Node Plugin ([97f283e](https://github.com/module-federation/universe/commit/97f283e4746bf6f048ee27584adde5249c8e577c)) +* improve options logic in node federation plugin ([b69b70d](https://github.com/module-federation/universe/commit/b69b70d200c63e3557089e8a0669fc43330c988c)) +* improved async init ([17b1419](https://github.com/module-federation/universe/commit/17b1419ef31ec5661fa06b9f0c297e2771e2a86c)) +* improved async init ([bb19b07](https://github.com/module-federation/universe/commit/bb19b07b5be1bbc28bd6b049ea7aea6510ad17a2)) +* improved async init ([ae3a450](https://github.com/module-federation/universe/commit/ae3a4503ff9de86492b13029d6334b281ddd9493)) +* improved async init ([019694e](https://github.com/module-federation/universe/commit/019694e55fe1f6bebfdab0701bf9087bf0034b8f)) +* native self forming node federation ([#1291](https://github.com/module-federation/universe/issues/1291)) ([1dd5ed1](https://github.com/module-federation/universe/commit/1dd5ed17c981e036336925e807203e94b58c36d6)) +* new actions, remove gpt integration ([370229e](https://github.com/module-federation/universe/commit/370229e02cc352fcfaeaa0f3cf1f9f2d4966d1bb)) +* **node-remote:** Improve module federation runtime compatibility ([5eb2092](https://github.com/module-federation/universe/commit/5eb209249c44d525c12eff5739bf23a93db08e4f)) +* **node:** auto set public path and improve chunk loading strategy #node_auto_public_path ([65989da](https://github.com/module-federation/universe/commit/65989dab95ee2acee7ec9a5ab321921a278cd078)) +* **node:** enhance error handling and remote container registry in RemotePublicPathRuntimeModule (#bytedance) ([061285e](https://github.com/module-federation/universe/commit/061285e0b6210baa1dd502dc94fd57fd9a8af822)) +* **NodeFederationPlugin:** assign remoteContainerRegistry to importMetaName ([ca33d98](https://github.com/module-federation/universe/commit/ca33d98df63fdb8dac402b1cc0ec8bf95f9f1971)) +* **node:** remove unused import from DynamicFilesystemRuntimeModule ([f9787a9](https://github.com/module-federation/universe/commit/f9787a9a67da936679db388e5c66e012e7452d8a)) +* remove old loadScript hack ([fbe19bc](https://github.com/module-federation/universe/commit/fbe19bc76694c14b6a95c577669c2e8656ede1ba)) +* Static fallback to non auto public path ([3c58780](https://github.com/module-federation/universe/commit/3c587809f1e936fba291eab3d7c790115be5102c)) +* support lazy compilation ([29c234c](https://github.com/module-federation/universe/commit/29c234c14315e000acefc60d635ee486205ca83e)) +* support vmok conventions ([0501da8](https://github.com/module-federation/universe/commit/0501da86eaaab6ea79a3397c2c683086cc591309)) +* support vmok conventions ([d53b586](https://github.com/module-federation/universe/commit/d53b5867719eb7fff32bee2edd3255023d598f44)) +* Use enhanced Federation Plugin ([e021d66](https://github.com/module-federation/universe/commit/e021d6667996962f154137d164bed13f53a6a135)) +* **utilities:** update DelegateModulesPlugin and tests (#node_auto_public_path) ([df8bb79](https://github.com/module-federation/universe/commit/df8bb791c3fedef299cb15960546ff5ad9c665ef)) + # Changelog This file was generated using [@jscutlery/semver](https://github.com/jscutlery/semver). diff --git a/packages/node/package.json b/packages/node/package.json index 772875d89e9..2e90227fd67 100644 --- a/packages/node/package.json +++ b/packages/node/package.json @@ -1,7 +1,7 @@ { "public": true, "name": "@module-federation/node", - "version": "2.0.2-beta.6", + "version": "2.1.0-canary.1", "type": "commonjs", "main": "src/index.js", "exports": { From 9ed15edd212680e7fb4fc055addc4fabe5f657bb Mon Sep 17 00:00:00 2001 From: semantic-release-bot Date: Mon, 6 Nov 2023 23:15:28 +0000 Subject: [PATCH 021/185] chore(release): Release native-federation-typescript v1.0.0-canary.1 [skip ci] --- .../native-federation-typescript/CHANGELOG.md | 230 ++++++++++++++++++ .../native-federation-typescript/package.json | 2 +- 2 files changed, 231 insertions(+), 1 deletion(-) diff --git a/packages/native-federation-typescript/CHANGELOG.md b/packages/native-federation-typescript/CHANGELOG.md index e58113270cd..88b7267d562 100644 --- a/packages/native-federation-typescript/CHANGELOG.md +++ b/packages/native-federation-typescript/CHANGELOG.md @@ -1,3 +1,233 @@ +# [1.0.0-canary.1](https://github.com/module-federation/universe/compare/native-federation-typescript-0.2.6...native-federation-typescript-1.0.0-canary.1) (2023-11-06) + + +### Bug Fixes + +* **deps:** update dependency antd to v4.24.14 ([#1309](https://github.com/module-federation/universe/issues/1309)) ([d0a2314](https://github.com/module-federation/universe/commit/d0a231470e37dbad85a11df1f12695657ba3b984)) +* **deps:** update dependency axios to v1.5.0 ([#1275](https://github.com/module-federation/universe/issues/1275)) ([f163df1](https://github.com/module-federation/universe/commit/f163df1073740bf4218bb35ba57cea5dc409fe43)) +* **deps:** update dependency axios to v1.5.1 ([ae9a06a](https://github.com/module-federation/universe/commit/ae9a06a0cc35fad27a0b493a25370b92617c39fb)) +* **deps:** update dependency core-js to v3.32.2 ([18d2746](https://github.com/module-federation/universe/commit/18d2746763f38fe295a14df3f1bcd4218fade5b8)) +* **deps:** update dependency core-js to v3.33.0 ([30894ca](https://github.com/module-federation/universe/commit/30894cafbe5dea4350dc7c633548038d7ec5f8a8)) +* **deps:** update dependency fast-glob to v3.3.1 ([#1197](https://github.com/module-federation/universe/issues/1197)) ([5743543](https://github.com/module-federation/universe/commit/57435430bd0912e3bf370ce08b46f610b12d00e3)) +* **deps:** update dependency react-router-dom to v6.15.0 ([#1276](https://github.com/module-federation/universe/issues/1276)) ([850e2fa](https://github.com/module-federation/universe/commit/850e2fac60f49b456aef3b5df9827fc3ac5a6006)) +* **deps:** update dependency react-router-dom to v6.16.0 ([0618339](https://github.com/module-federation/universe/commit/061833912f7e5748011cd60ed679a68c1b659f77)) +* **deps:** update dependency typedoc to ^0.25.0 ([#1277](https://github.com/module-federation/universe/issues/1277)) ([8d6a72e](https://github.com/module-federation/universe/commit/8d6a72e18a57b69b2f63802621e8b4b479554fed)) +* **deps:** update dependency typedoc to v0.25.1 ([#1304](https://github.com/module-federation/universe/issues/1304)) ([abf84fe](https://github.com/module-federation/universe/commit/abf84fefd5c20b5de7c9a74d1c49235f44d36dc6)) +* **deps:** update dependency typedoc to v0.25.2 ([46c6524](https://github.com/module-federation/universe/commit/46c65247e187cee9e15625402c1570ac351bb1fe)) +* **deps:** update dependency undici to v5.24.0 ([573e644](https://github.com/module-federation/universe/commit/573e644333da6d24cb4286ce08221a1aa82415e4)) +* **deps:** update dependency undici to v5.25.2 ([da3e539](https://github.com/module-federation/universe/commit/da3e539a41ed23ccb5086b1dd428fbee0f8d652c)) +* **deps:** update dependency undici to v5.25.4 ([1d4f91e](https://github.com/module-federation/universe/commit/1d4f91ec93da4326c8a42eef28f150d5d09738bb)) +* **deps:** update dependency undici to v5.26.2 [security] ([410a8b8](https://github.com/module-federation/universe/commit/410a8b8bd1558dfb5119ae10941d2b3816a0d0e0)) +* **deps:** update dependency unplugin to v1.5.0 ([936b3f8](https://github.com/module-federation/universe/commit/936b3f8d8061fd9d481d1788fb35b88588928d14)) +* Fix call undefined delegate ([#1149](https://github.com/module-federation/universe/issues/1149)) ([87a5896](https://github.com/module-federation/universe/commit/87a5896221a726578c3433071755fba3465824f4)), closes [#1151](https://github.com/module-federation/universe/issues/1151) +* override semantic-release-plugin-decorators ([18675de](https://github.com/module-federation/universe/commit/18675defef65570d2b3bb6a9caa3fd039badee29)) +* switch to @goestav/nx-semantic-release ([63a3350](https://github.com/module-federation/universe/commit/63a3350a6a1a12235e3c9f1e7c724d54f0476356)) + + +### Features + +* core package for module federation ([#1093](https://github.com/module-federation/universe/issues/1093)) ([d460400](https://github.com/module-federation/universe/commit/d46040053e9b627321b5fe8e05556c5bb727c238)), closes [#851](https://github.com/module-federation/universe/issues/851) [#864](https://github.com/module-federation/universe/issues/864) [#835](https://github.com/module-federation/universe/issues/835) [#851](https://github.com/module-federation/universe/issues/851) [#864](https://github.com/module-federation/universe/issues/864) [#871](https://github.com/module-federation/universe/issues/871) [#851](https://github.com/module-federation/universe/issues/851) [#864](https://github.com/module-federation/universe/issues/864) [#872](https://github.com/module-federation/universe/issues/872) [#875](https://github.com/module-federation/universe/issues/875) [#884](https://github.com/module-federation/universe/issues/884) [#887](https://github.com/module-federation/universe/issues/887) [#893](https://github.com/module-federation/universe/issues/893) [#885](https://github.com/module-federation/universe/issues/885) [#899](https://github.com/module-federation/universe/issues/899) [#904](https://github.com/module-federation/universe/issues/904) [#932](https://github.com/module-federation/universe/issues/932) [#936](https://github.com/module-federation/universe/issues/936) [#959](https://github.com/module-federation/universe/issues/959) [#960](https://github.com/module-federation/universe/issues/960) [#969](https://github.com/module-federation/universe/issues/969) [#971](https://github.com/module-federation/universe/issues/971) [#1234](https://github.com/module-federation/universe/issues/1234) [#1235](https://github.com/module-federation/universe/issues/1235) +* Dynamic Filesystem ([#1274](https://github.com/module-federation/universe/issues/1274)) ([2bec98a](https://github.com/module-federation/universe/commit/2bec98a2472b44898a7f14ec6868a2368cfb6d82)) +* fork module federation ([0ad7430](https://github.com/module-federation/universe/commit/0ad7430f6170458a47144be392133b7b2fa1ade0)) +* improved async init ([ae3a450](https://github.com/module-federation/universe/commit/ae3a4503ff9de86492b13029d6334b281ddd9493)) +* native self forming node federation ([#1291](https://github.com/module-federation/universe/issues/1291)) ([1dd5ed1](https://github.com/module-federation/universe/commit/1dd5ed17c981e036336925e807203e94b58c36d6)) +* new actions, remove gpt integration ([370229e](https://github.com/module-federation/universe/commit/370229e02cc352fcfaeaa0f3cf1f9f2d4966d1bb)) +* **node:** node federation demo/testing apps added ([27d545d](https://github.com/module-federation/universe/commit/27d545d99095da7134c392dbcd9fb135a170f6ef)) +* **typedoc-parsetr:** merged main ([cf6e65a](https://github.com/module-federation/universe/commit/cf6e65a4aa895d7c2dba8fdbd8ec22ec7bd8f514)) +* **typedoc-parsetr:** merged main ([2ff0d5a](https://github.com/module-federation/universe/commit/2ff0d5a075df3f241742cc7e516cd0378e8e1b3e)) +* **typedoc-parsetr:** python script implementation ([0a533cb](https://github.com/module-federation/universe/commit/0a533cb60e0c3ca269ab45df740c1367be175e80)) + + +### BREAKING CHANGES + +* automaticAsyncBoundary option has been removed + +* fix: exclude specific pages from page map automatically + +* refactor: conslidate codebase + +* fix: improve hot reload share recovery + +* refactor: remove server jsonp template + +* chore: remove dead code from runtime modules + +* fix: clean up jsonp getCustomJsonpCode + +getting chunk loading global from compiler output options + +* feat: adding cleanInitArrays runtime helper + +* chore: remove share scope hoist and module hoisting system + +* chore: cleanup code + +* chore: remove dead code from add module runtime plugin + +likely can remove whole plugin in future + +* chore: remove logs from delegate modules + +* chore: remove old utils + +* fix: add warning on auto page stitch + +* fix: remove commented out code from InvertedContainerPlugin.ts + +* chore: improve logging to see if its local load or remote load + +* chore: clean up old custom promises factories + +* fix: remove container proxy code + +* fix: remove container proxy code +* automaticAsyncBoundary option has been removed + +* fix: exclude specific pages from page map automatically + +* refactor: conslidate codebase + +* fix: improve hot reload share recovery + +* refactor: remove server jsonp template + +* chore: remove dead code from runtime modules + +* fix: clean up jsonp getCustomJsonpCode + +getting chunk loading global from compiler output options + +* feat: adding cleanInitArrays runtime helper + +* chore: remove share scope hoist and module hoisting system + +* chore: cleanup code + +* chore: remove dead code from add module runtime plugin + +likely can remove whole plugin in future + +* chore: remove logs from delegate modules + +* chore: remove old utils + +* fix: add warning on auto page stitch + +* fix: remove commented out code from InvertedContainerPlugin.ts + +* chore: improve logging to see if its local load or remote load + +* chore: clean up old custom promises factories + +* fix: remove container proxy code + +* fix: remove container proxy code + +* chore: fix project.json + +* debugging + +* fix: resolve backmerge issues with build + +* Merge branch 'kill_child_compilers' into fix_backmerge_issues + +# Conflicts: +# package-lock.json +# package.json +# packages/nextjs-mf/src/plugins/NextFederationPlugin/index.ts +# packages/nextjs-mf/src/plugins/container/InvertedContainerPlugin.ts +# packages/nextjs-mf/src/plugins/container/InvertedContainerRuntimeModule.ts + +* feat: enable eager sharing + +* refactor: improve module hooks for eager loading and search + +* refactor: cleanup custom jsonp and make es5 + +* refactor: cleanup inverted container code + +* refactor: cleanup inverted container code +* automaticAsyncBoundary option has been removed + +* fix: exclude specific pages from page map automatically + +* refactor: conslidate codebase + +* fix: improve hot reload share recovery + +* refactor: remove server jsonp template + +* chore: remove dead code from runtime modules + +* fix: clean up jsonp getCustomJsonpCode + +getting chunk loading global from compiler output options + +* feat: adding cleanInitArrays runtime helper + +* chore: remove share scope hoist and module hoisting system + +* chore: cleanup code + +* chore: remove dead code from add module runtime plugin + +likely can remove whole plugin in future + +* chore: remove logs from delegate modules + +* chore: remove old utils + +* fix: add warning on auto page stitch + +* fix: remove commented out code from InvertedContainerPlugin.ts + +* chore: improve logging to see if its local load or remote load + +* chore: clean up old custom promises factories + +* fix: remove container proxy code + +* fix: remove container proxy code + +* fix: resolve backmerge issues with build + +* Merge branch 'kill_child_compilers' into fix_backmerge_issues + +# Conflicts: +# package-lock.json +# package.json +# packages/nextjs-mf/src/plugins/NextFederationPlugin/index.ts +# packages/nextjs-mf/src/plugins/container/InvertedContainerPlugin.ts +# packages/nextjs-mf/src/plugins/container/InvertedContainerRuntimeModule.ts + +* feat: enable eager sharing + +* refactor: improve module hooks for eager loading and search + +* refactor: cleanup custom jsonp and make es5 + +* refactor: cleanup inverted container code + +* refactor: cleanup inverted container code + +* ci: fix install step with npm and NX + +* test: remove tests for now + +* chore(utils): release version 1.7.3-beta.0 + +* chore(utils): release version 1.7.3 + +* chore(node): release version 0.14.4-beta.0 + +* chore(node): release version 0.14.4 + +* chore(nextjs-mf): release version 6.4.1-beta.4 + +* fix: remove debugging runtime variable + +* chore(nextjs-mf): release version 6.4.1-beta.5 + # Changelog This file was generated using [@jscutlery/semver](https://github.com/jscutlery/semver). diff --git a/packages/native-federation-typescript/package.json b/packages/native-federation-typescript/package.json index a6fb022bd82..c4313be817d 100644 --- a/packages/native-federation-typescript/package.json +++ b/packages/native-federation-typescript/package.json @@ -1,6 +1,6 @@ { "name": "@module-federation/native-federation-typescript", - "version": "0.2.6", + "version": "1.0.0-canary.1", "description": "Bundler agnostic unplugin to share federated types", "keywords": [ "module federation", From b7e56ac582a53d093b026b8d34c177efa039afbe Mon Sep 17 00:00:00 2001 From: semantic-release-bot Date: Mon, 6 Nov 2023 23:19:58 +0000 Subject: [PATCH 022/185] chore(release): Release core v1.0.0-canary.1 [skip ci] --- packages/core/CHANGELOG.md | 512 +++++++++++++++++++++++++++++++++++++ packages/core/package.json | 2 +- 2 files changed, 513 insertions(+), 1 deletion(-) create mode 100644 packages/core/CHANGELOG.md diff --git a/packages/core/CHANGELOG.md b/packages/core/CHANGELOG.md new file mode 100644 index 00000000000..e7dae046c14 --- /dev/null +++ b/packages/core/CHANGELOG.md @@ -0,0 +1,512 @@ +# 1.0.0-canary.1 (2023-11-06) + + +### Bug Fixes + +* cannot convert undefined object ([#406](https://github.com/module-federation/universe/issues/406)) ([f049bc9](https://github.com/module-federation/universe/commit/f049bc93c987f0ba918ecb345d1b3ee824715672)) +* deps ([#855](https://github.com/module-federation/universe/issues/855)) ([51fd134](https://github.com/module-federation/universe/commit/51fd134b6ffe501ac2a69df9ce8025f77900edd1)) +* **deps:** update dependency @swc/helpers to ~0.4.0 ([#348](https://github.com/module-federation/universe/issues/348)) ([36ee624](https://github.com/module-federation/universe/commit/36ee624d4c939ffb9884b776c44887686bfef846)) +* **deps:** update dependency antd to v4.24.10 ([#849](https://github.com/module-federation/universe/issues/849)) ([6daf946](https://github.com/module-federation/universe/commit/6daf946f63632cd0a1734e83b83cce06dae2862c)) +* **deps:** update dependency antd to v4.24.11 ([#1004](https://github.com/module-federation/universe/issues/1004)) ([e372fc1](https://github.com/module-federation/universe/commit/e372fc15dddec483f63714802e7aa91ef7dca916)) +* **deps:** update dependency antd to v4.24.11 ([#1029](https://github.com/module-federation/universe/issues/1029)) ([f9e64c0](https://github.com/module-federation/universe/commit/f9e64c04aa1e5802fdc0cdc8f07f2ee728c3ff1c)) +* **deps:** update dependency antd to v4.24.12 ([#1074](https://github.com/module-federation/universe/issues/1074)) ([46c25e0](https://github.com/module-federation/universe/commit/46c25e0a873ada88d2888a4e995bfa7133c01953)) +* **deps:** update dependency antd to v4.24.14 ([#1309](https://github.com/module-federation/universe/issues/1309)) ([d0a2314](https://github.com/module-federation/universe/commit/d0a231470e37dbad85a11df1f12695657ba3b984)) +* **deps:** update dependency antd to v4.24.7 ([#426](https://github.com/module-federation/universe/issues/426)) ([fbd3faa](https://github.com/module-federation/universe/commit/fbd3faa961032d22e86d12e86ce3f751d8f962e6)) +* **deps:** update dependency antd to v4.24.8 ([#586](https://github.com/module-federation/universe/issues/586)) ([5099896](https://github.com/module-federation/universe/commit/509989632bbdccd4b0945a04b43fa9dfb73bb476)) +* **deps:** update dependency antd to v4.24.9 ([#765](https://github.com/module-federation/universe/issues/765)) ([eabe2ec](https://github.com/module-federation/universe/commit/eabe2ec55c61123c26b0c94503973621a1efaa7b)) +* **deps:** update dependency antd to v4.24.9 ([#779](https://github.com/module-federation/universe/issues/779)) ([7b6de1b](https://github.com/module-federation/universe/commit/7b6de1b4e17e3ad97e6910e870e68fcd505e25d3)) +* **deps:** update dependency axios to v1 ([#534](https://github.com/module-federation/universe/issues/534)) ([ae5b885](https://github.com/module-federation/universe/commit/ae5b8858825546376551a775be3a31748e9adeef)) +* **deps:** update dependency axios to v1.3.5 ([#736](https://github.com/module-federation/universe/issues/736)) ([ad9a463](https://github.com/module-federation/universe/commit/ad9a463ea26af133fc145404e3351a5c04d5077f)) +* **deps:** update dependency axios to v1.3.6 ([#762](https://github.com/module-federation/universe/issues/762)) ([b72d2c7](https://github.com/module-federation/universe/commit/b72d2c7b536b6c08ef663e1a13db7c996b84753e)) +* **deps:** update dependency axios to v1.4.0 ([#821](https://github.com/module-federation/universe/issues/821)) ([c5e1546](https://github.com/module-federation/universe/commit/c5e154697e83ee457a17dafaaea67b6f7239ac92)) +* **deps:** update dependency axios to v1.5.0 ([#1275](https://github.com/module-federation/universe/issues/1275)) ([f163df1](https://github.com/module-federation/universe/commit/f163df1073740bf4218bb35ba57cea5dc409fe43)) +* **deps:** update dependency axios to v1.5.1 ([ae9a06a](https://github.com/module-federation/universe/commit/ae9a06a0cc35fad27a0b493a25370b92617c39fb)) +* **deps:** update dependency core-js to v3.29.1 ([#643](https://github.com/module-federation/universe/issues/643)) ([cf4dada](https://github.com/module-federation/universe/commit/cf4dada8c62074e52f972ae3aceace7fde360b5a)) +* **deps:** update dependency core-js to v3.30.1 ([#754](https://github.com/module-federation/universe/issues/754)) ([252549a](https://github.com/module-federation/universe/commit/252549af57b0288aba43eecb120effa502748375)) +* **deps:** update dependency core-js to v3.31.0 ([#1048](https://github.com/module-federation/universe/issues/1048)) ([96a99f2](https://github.com/module-federation/universe/commit/96a99f2f531b165f14aa36c73eef0691abe3f12c)) +* **deps:** update dependency core-js to v3.32.2 ([18d2746](https://github.com/module-federation/universe/commit/18d2746763f38fe295a14df3f1bcd4218fade5b8)) +* **deps:** update dependency core-js to v3.33.0 ([30894ca](https://github.com/module-federation/universe/commit/30894cafbe5dea4350dc7c633548038d7ec5f8a8)) +* **deps:** update dependency fast-glob to v3.3.0 ([#1078](https://github.com/module-federation/universe/issues/1078)) ([14bb0b5](https://github.com/module-federation/universe/commit/14bb0b5e7ca6a72190fa9d9df817b57586221b66)) +* **deps:** update dependency fast-glob to v3.3.1 ([#1197](https://github.com/module-federation/universe/issues/1197)) ([5743543](https://github.com/module-federation/universe/commit/57435430bd0912e3bf370ce08b46f610b12d00e3)) +* **deps:** update dependency js-cookie to v3.0.4 ([#773](https://github.com/module-federation/universe/issues/773)) ([f26af6d](https://github.com/module-federation/universe/commit/f26af6db494726a2728b9dd1d0b1e677177c1bf0)) +* **deps:** update dependency js-cookie to v3.0.5 ([#1005](https://github.com/module-federation/universe/issues/1005)) ([345da70](https://github.com/module-federation/universe/commit/345da70b4ec46d955d64e8e7efc13daa24b73f0a)) +* **deps:** update dependency react-router-dom to v6.10.0 ([#755](https://github.com/module-federation/universe/issues/755)) ([bd22cbe](https://github.com/module-federation/universe/commit/bd22cbee9be6dd3b301fbcb2b464b0c697d65689)) +* **deps:** update dependency react-router-dom to v6.11.0 ([#830](https://github.com/module-federation/universe/issues/830)) ([d9366bf](https://github.com/module-federation/universe/commit/d9366bf58f255918c97784960f99a828c3e665e0)) +* **deps:** update dependency react-router-dom to v6.11.1 ([#846](https://github.com/module-federation/universe/issues/846)) ([299cb0d](https://github.com/module-federation/universe/commit/299cb0d0351f1a9cb7c03279eb6a62deb4a3f2d6)) +* **deps:** update dependency react-router-dom to v6.11.2 ([#889](https://github.com/module-federation/universe/issues/889)) ([a191608](https://github.com/module-federation/universe/commit/a19160805ce7da8cad4642f6f8e08762acb74947)) +* **deps:** update dependency react-router-dom to v6.14.0 ([#1049](https://github.com/module-federation/universe/issues/1049)) ([ada4160](https://github.com/module-federation/universe/commit/ada416019bbbf589a5a39094b5f608db39a456b2)) +* **deps:** update dependency react-router-dom to v6.14.1 ([#1081](https://github.com/module-federation/universe/issues/1081)) ([8515c31](https://github.com/module-federation/universe/commit/8515c314ae2d6159c25fc0fcdc992b24c1fa1a93)) +* **deps:** update dependency react-router-dom to v6.15.0 ([#1276](https://github.com/module-federation/universe/issues/1276)) ([850e2fa](https://github.com/module-federation/universe/commit/850e2fac60f49b456aef3b5df9827fc3ac5a6006)) +* **deps:** update dependency react-router-dom to v6.16.0 ([0618339](https://github.com/module-federation/universe/commit/061833912f7e5748011cd60ed679a68c1b659f77)) +* **deps:** update dependency react-router-dom to v6.8.0 ([#428](https://github.com/module-federation/universe/issues/428)) ([274e713](https://github.com/module-federation/universe/commit/274e713104de49485380e2af700afdd63ae50da5)) +* **deps:** update dependency react-router-dom to v6.9.0 ([#663](https://github.com/module-federation/universe/issues/663)) ([1a934f5](https://github.com/module-federation/universe/commit/1a934f55afc40e0efa686dbb2082d426d07b9d32)) +* **deps:** update dependency tsup to v7 ([#1042](https://github.com/module-federation/universe/issues/1042)) ([f319c8a](https://github.com/module-federation/universe/commit/f319c8a8d876e547eeadd59e5bde30dcc367edaf)) +* **deps:** update dependency typedoc to ^0.25.0 ([#1277](https://github.com/module-federation/universe/issues/1277)) ([8d6a72e](https://github.com/module-federation/universe/commit/8d6a72e18a57b69b2f63802621e8b4b479554fed)) +* **deps:** update dependency typedoc to v0.25.1 ([#1304](https://github.com/module-federation/universe/issues/1304)) ([abf84fe](https://github.com/module-federation/universe/commit/abf84fefd5c20b5de7c9a74d1c49235f44d36dc6)) +* **deps:** update dependency typedoc to v0.25.2 ([46c6524](https://github.com/module-federation/universe/commit/46c65247e187cee9e15625402c1570ac351bb1fe)) +* **deps:** update dependency undici to v5.24.0 ([573e644](https://github.com/module-federation/universe/commit/573e644333da6d24cb4286ce08221a1aa82415e4)) +* **deps:** update dependency undici to v5.25.2 ([da3e539](https://github.com/module-federation/universe/commit/da3e539a41ed23ccb5086b1dd428fbee0f8d652c)) +* **deps:** update dependency undici to v5.25.4 ([1d4f91e](https://github.com/module-federation/universe/commit/1d4f91ec93da4326c8a42eef28f150d5d09738bb)) +* **deps:** update dependency undici to v5.26.2 [security] ([410a8b8](https://github.com/module-federation/universe/commit/410a8b8bd1558dfb5119ae10941d2b3816a0d0e0)) +* **deps:** update dependency unplugin to v1.5.0 ([936b3f8](https://github.com/module-federation/universe/commit/936b3f8d8061fd9d481d1788fb35b88588928d14)) +* **federatedtypesplugin:** modify remote url used to import remote types ([#496](https://github.com/module-federation/universe/issues/496)) ([e91a68a](https://github.com/module-federation/universe/commit/e91a68a96bb2c374f3a0e84eba73baeeb2913698)), closes [#495](https://github.com/module-federation/universe/issues/495) +* **federation-boundary:** make custom boundary optional ([#570](https://github.com/module-federation/universe/issues/570)) ([e43a387](https://github.com/module-federation/universe/commit/e43a387f90587d62a78c40584ed9104328202f8e)) +* Fix call undefined delegate ([#1149](https://github.com/module-federation/universe/issues/1149)) ([87a5896](https://github.com/module-federation/universe/commit/87a5896221a726578c3433071755fba3465824f4)), closes [#1151](https://github.com/module-federation/universe/issues/1151) +* flush CSS chunks, cache bust remote entry on render ([#269](https://github.com/module-federation/universe/issues/269)) ([85a216a](https://github.com/module-federation/universe/commit/85a216a8fd34ae849630ff5b42bacb26c855a9ce)) +* Improve logic ([#387](https://github.com/module-federation/universe/issues/387)) ([0eb7f1b](https://github.com/module-federation/universe/commit/0eb7f1bb77ef0a72ad26adeea1b508fbae60656f)) +* native federation in readme ([710e685](https://github.com/module-federation/universe/commit/710e68575cc8dfbef684c5c72637b539f7b29773)) +* override semantic-release-plugin-decorators ([18675de](https://github.com/module-federation/universe/commit/18675defef65570d2b3bb6a9caa3fd039badee29)) +* **package.json:** fix package export fields for utils ([#285](https://github.com/module-federation/universe/issues/285)) ([99d6b77](https://github.com/module-federation/universe/commit/99d6b779696b5dbebea9cf3c870a5caa5d9d7c6f)) +* remove unused dependencies nx added to typescript package ([#690](https://github.com/module-federation/universe/issues/690)) ([c87e7d7](https://github.com/module-federation/universe/commit/c87e7d74226f060bbd2aff7e65df691e69f6f82a)) +* resolve NX build version issues ([#578](https://github.com/module-federation/universe/issues/578)) ([84d3dde](https://github.com/module-federation/universe/commit/84d3dde0d3eff37e14c759456f7a56690c776f27)) +* safely build url to download type files ([#694](https://github.com/module-federation/universe/issues/694)) ([ee5429d](https://github.com/module-federation/universe/commit/ee5429dea3469ff1bf020f84d88e96caf1075d07)) +* set peer dependencies ([#341](https://github.com/module-federation/universe/issues/341)) ([fec9608](https://github.com/module-federation/universe/commit/fec960813a4e3859a5fb24863bb55e463a2fdfa3)) +* support dynamic import of esm modules ([#296](https://github.com/module-federation/universe/issues/296)) ([cf28356](https://github.com/module-federation/universe/commit/cf28356728354e1f63c0d588035dd115398f8641)) +* switch to @goestav/nx-semantic-release ([63a3350](https://github.com/module-federation/universe/commit/63a3350a6a1a12235e3c9f1e7c724d54f0476356)) +* **typescript:** use node-fetch to download TS types ([#565](https://github.com/module-federation/universe/issues/565)) ([f668b1f](https://github.com/module-federation/universe/commit/f668b1fa11f05ff5d15e6581c27b5da9ad454ed2)) +* Utilities - Remove module side effect ([#488](https://github.com/module-federation/universe/issues/488)) ([3554de7](https://github.com/module-federation/universe/commit/3554de7912eaf7b379a6a863677c4b01da0ccf2c)), closes [#487](https://github.com/module-federation/universe/issues/487) [#500](https://github.com/module-federation/universe/issues/500) [#496](https://github.com/module-federation/universe/issues/496) [#495](https://github.com/module-federation/universe/issues/495) [#492](https://github.com/module-federation/universe/issues/492) [#455](https://github.com/module-federation/universe/issues/455) [#491](https://github.com/module-federation/universe/issues/491) [#496](https://github.com/module-federation/universe/issues/496) [#495](https://github.com/module-federation/universe/issues/495) + + +### Features + +* Automatic Async boundary loader ([#330](https://github.com/module-federation/universe/issues/330)) ([7e3c08c](https://github.com/module-federation/universe/commit/7e3c08cf7835c0407bdce7ed6865b864153074a4)) +* add automic page-map generation ([#101](https://github.com/module-federation/universe/issues/101)) ([87b61a2](https://github.com/module-federation/universe/commit/87b61a281d4b8f9eeb65251bc1d8675e2e2b4366)), closes [#102](https://github.com/module-federation/universe/issues/102) +* add storybook addon that supports Module Federation remote containers ([#598](https://github.com/module-federation/universe/issues/598)) ([7547b02](https://github.com/module-federation/universe/commit/7547b02937fdef2831060d6a7bfd337d2cc3355c)) +* Allow Container Utils to work Server Side ([#723](https://github.com/module-federation/universe/issues/723)) ([232ba24](https://github.com/module-federation/universe/commit/232ba24072f19bd32d1f745d4edf1518e548df50)) +* change module sharing strategy ([#469](https://github.com/module-federation/universe/issues/469)) ([5fecf86](https://github.com/module-federation/universe/commit/5fecf867f34b20e2c7cea3909a1f306d46d92bf3)) +* core package for module federation ([#1093](https://github.com/module-federation/universe/issues/1093)) ([d460400](https://github.com/module-federation/universe/commit/d46040053e9b627321b5fe8e05556c5bb727c238)), closes [#851](https://github.com/module-federation/universe/issues/851) [#864](https://github.com/module-federation/universe/issues/864) [#835](https://github.com/module-federation/universe/issues/835) [#851](https://github.com/module-federation/universe/issues/851) [#864](https://github.com/module-federation/universe/issues/864) [#871](https://github.com/module-federation/universe/issues/871) [#851](https://github.com/module-federation/universe/issues/851) [#864](https://github.com/module-federation/universe/issues/864) [#872](https://github.com/module-federation/universe/issues/872) [#875](https://github.com/module-federation/universe/issues/875) [#884](https://github.com/module-federation/universe/issues/884) [#887](https://github.com/module-federation/universe/issues/887) [#893](https://github.com/module-federation/universe/issues/893) [#885](https://github.com/module-federation/universe/issues/885) [#899](https://github.com/module-federation/universe/issues/899) [#904](https://github.com/module-federation/universe/issues/904) [#932](https://github.com/module-federation/universe/issues/932) [#936](https://github.com/module-federation/universe/issues/936) [#959](https://github.com/module-federation/universe/issues/959) [#960](https://github.com/module-federation/universe/issues/960) [#969](https://github.com/module-federation/universe/issues/969) [#971](https://github.com/module-federation/universe/issues/971) [#1234](https://github.com/module-federation/universe/issues/1234) [#1235](https://github.com/module-federation/universe/issues/1235) +* Delegate Modules ([#509](https://github.com/module-federation/universe/issues/509)) ([1a085e7](https://github.com/module-federation/universe/commit/1a085e7e03ca0afd5c64389b4b169f3db3382f6b)) +* **docs:** add i18n support ([#608](https://github.com/module-federation/universe/issues/608)) ([ce3d4b6](https://github.com/module-federation/universe/commit/ce3d4b607b75746d8db7d096b8db932922dcb11a)) +* **docs:** initial docs ui ([#869](https://github.com/module-federation/universe/issues/869)) ([7b1252e](https://github.com/module-federation/universe/commit/7b1252eeef1627e0aa59df70ed9c918b8328ed20)) +* Dynamic Filesystem ([#1274](https://github.com/module-federation/universe/issues/1274)) ([2bec98a](https://github.com/module-federation/universe/commit/2bec98a2472b44898a7f14ec6868a2368cfb6d82)) +* federated types for Typescript based projects ([#245](https://github.com/module-federation/universe/issues/245)) ([4a5e282](https://github.com/module-federation/universe/commit/4a5e2824400cc843fa0c0504936a68c6c9f33946)), closes [#244](https://github.com/module-federation/universe/issues/244) +* fork module federation ([0ad7430](https://github.com/module-federation/universe/commit/0ad7430f6170458a47144be392133b7b2fa1ade0)) +* improved async init ([ae3a450](https://github.com/module-federation/universe/commit/ae3a4503ff9de86492b13029d6334b281ddd9493)) +* Medusa Support in NextFederationPlugin ([#609](https://github.com/module-federation/universe/issues/609)) ([0bbba38](https://github.com/module-federation/universe/commit/0bbba384c45b7d149b7a6be2dfbe9851b541b528)), closes [#606](https://github.com/module-federation/universe/issues/606) +* Move Repo to NX ([#154](https://github.com/module-federation/universe/issues/154)) ([d2a4dfa](https://github.com/module-federation/universe/commit/d2a4dfac7fcdaa2b6a21e3d2973808d01649da61)), closes [#199](https://github.com/module-federation/universe/issues/199) [#205](https://github.com/module-federation/universe/issues/205) [#144](https://github.com/module-federation/universe/issues/144) [#212](https://github.com/module-federation/universe/issues/212) +* native self forming node federation ([#1291](https://github.com/module-federation/universe/issues/1291)) ([1dd5ed1](https://github.com/module-federation/universe/commit/1dd5ed17c981e036336925e807203e94b58c36d6)) +* native-federation-typescript plugin ([#692](https://github.com/module-federation/universe/issues/692)) ([b41c5aa](https://github.com/module-federation/universe/commit/b41c5aacfeda0fada5b426086658235edfd86cdd)) +* new actions, remove gpt integration ([370229e](https://github.com/module-federation/universe/commit/370229e02cc352fcfaeaa0f3cf1f9f2d4966d1bb)) +* Next Federation 7 ([#726](https://github.com/module-federation/universe/issues/726)) ([d50ca1e](https://github.com/module-federation/universe/commit/d50ca1e4636c4e0a402190f6e9c3f69ed9ec8eac)), closes [#851](https://github.com/module-federation/universe/issues/851) [#864](https://github.com/module-federation/universe/issues/864) [#835](https://github.com/module-federation/universe/issues/835) [#851](https://github.com/module-federation/universe/issues/851) [#864](https://github.com/module-federation/universe/issues/864) [#871](https://github.com/module-federation/universe/issues/871) [#851](https://github.com/module-federation/universe/issues/851) [#864](https://github.com/module-federation/universe/issues/864) [#872](https://github.com/module-federation/universe/issues/872) [#875](https://github.com/module-federation/universe/issues/875) [#884](https://github.com/module-federation/universe/issues/884) [#887](https://github.com/module-federation/universe/issues/887) [#893](https://github.com/module-federation/universe/issues/893) [#885](https://github.com/module-federation/universe/issues/885) [#899](https://github.com/module-federation/universe/issues/899) [#904](https://github.com/module-federation/universe/issues/904) [#932](https://github.com/module-federation/universe/issues/932) [#936](https://github.com/module-federation/universe/issues/936) [#959](https://github.com/module-federation/universe/issues/959) [#960](https://github.com/module-federation/universe/issues/960) [#969](https://github.com/module-federation/universe/issues/969) [#971](https://github.com/module-federation/universe/issues/971) [#974](https://github.com/module-federation/universe/issues/974) [#984](https://github.com/module-federation/universe/issues/984) [#986](https://github.com/module-federation/universe/issues/986) [#1015](https://github.com/module-federation/universe/issues/1015) [#1086](https://github.com/module-federation/universe/issues/1086) [#1084](https://github.com/module-federation/universe/issues/1084) +* **node:** add flag to control logging ([eebab83](https://github.com/module-federation/universe/commit/eebab83762a08d82393f04ed03c0af026356653a)) +* **node:** node federation demo/testing apps added ([27d545d](https://github.com/module-federation/universe/commit/27d545d99095da7134c392dbcd9fb135a170f6ef)) +* Remove MF plugin from Typescript plugin ([#607](https://github.com/module-federation/universe/issues/607)) ([94e9149](https://github.com/module-federation/universe/commit/94e9149c4be12cc3e2627da7d7a9e11289cab894)), closes [#608](https://github.com/module-federation/universe/issues/608) [#608](https://github.com/module-federation/universe/issues/608) +* setup docs ([#549](https://github.com/module-federation/universe/issues/549)) ([b139d92](https://github.com/module-federation/universe/commit/b139d92032226102bb594695865979921d941944)) +* test command ([3ade629](https://github.com/module-federation/universe/commit/3ade629488f4ea1549314b82b41caef9a046da9f)) +* **typedoc-parsetr:** merged main ([cf6e65a](https://github.com/module-federation/universe/commit/cf6e65a4aa895d7c2dba8fdbd8ec22ec7bd8f514)) +* **typedoc-parsetr:** merged main ([2ff0d5a](https://github.com/module-federation/universe/commit/2ff0d5a075df3f241742cc7e516cd0378e8e1b3e)) +* **typedoc-parsetr:** python script implementation ([0a533cb](https://github.com/module-federation/universe/commit/0a533cb60e0c3ca269ab45df740c1367be175e80)) +* **typescript:** excessive recompilation prevention ([#306](https://github.com/module-federation/universe/issues/306)) ([6e1967f](https://github.com/module-federation/universe/commit/6e1967f019afb25dfbcfe83627b08ae8b1fe97b2)) +* **typescript:** support vue typescript compiler ([#542](https://github.com/module-federation/universe/issues/542)) ([cde5952](https://github.com/module-federation/universe/commit/cde5952c42ec19f87c5bc4dddb8d8be6f97c1c55)), closes [#502](https://github.com/module-federation/universe/issues/502) +* update the `next` peer dep in nextjs-mf ([#221](https://github.com/module-federation/universe/issues/221)) ([d9b1677](https://github.com/module-federation/universe/commit/d9b16776b1c4ed61e6c0e0414ed452d7312c1806)) +* **website:** initial version of module federation website ([#751](https://github.com/module-federation/universe/issues/751)) ([9b4ec04](https://github.com/module-federation/universe/commit/9b4ec048652f0d2237e9401912ead7c5bbe060c4)) + + +### Reverts + +* Revert "chore: upgrade nx" (#1064) ([3eadaf6](https://github.com/module-federation/universe/commit/3eadaf6f2d8ecc64b45c8e10dbc93f18293f45d5)), closes [#1064](https://github.com/module-federation/universe/issues/1064) + + +### BREAKING CHANGES + +* automaticAsyncBoundary option has been removed + +* fix: exclude specific pages from page map automatically + +* refactor: conslidate codebase + +* fix: improve hot reload share recovery + +* refactor: remove server jsonp template + +* chore: remove dead code from runtime modules + +* fix: clean up jsonp getCustomJsonpCode + +getting chunk loading global from compiler output options + +* feat: adding cleanInitArrays runtime helper + +* chore: remove share scope hoist and module hoisting system + +* chore: cleanup code + +* chore: remove dead code from add module runtime plugin + +likely can remove whole plugin in future + +* chore: remove logs from delegate modules + +* chore: remove old utils + +* fix: add warning on auto page stitch + +* fix: remove commented out code from InvertedContainerPlugin.ts + +* chore: improve logging to see if its local load or remote load + +* chore: clean up old custom promises factories + +* fix: remove container proxy code + +* fix: remove container proxy code +* automaticAsyncBoundary option has been removed + +* fix: exclude specific pages from page map automatically + +* refactor: conslidate codebase + +* fix: improve hot reload share recovery + +* refactor: remove server jsonp template + +* chore: remove dead code from runtime modules + +* fix: clean up jsonp getCustomJsonpCode + +getting chunk loading global from compiler output options + +* feat: adding cleanInitArrays runtime helper + +* chore: remove share scope hoist and module hoisting system + +* chore: cleanup code + +* chore: remove dead code from add module runtime plugin + +likely can remove whole plugin in future + +* chore: remove logs from delegate modules + +* chore: remove old utils + +* fix: add warning on auto page stitch + +* fix: remove commented out code from InvertedContainerPlugin.ts + +* chore: improve logging to see if its local load or remote load + +* chore: clean up old custom promises factories + +* fix: remove container proxy code + +* fix: remove container proxy code + +* chore: fix project.json + +* debugging + +* fix: resolve backmerge issues with build + +* Merge branch 'kill_child_compilers' into fix_backmerge_issues + +# Conflicts: +# package-lock.json +# package.json +# packages/nextjs-mf/src/plugins/NextFederationPlugin/index.ts +# packages/nextjs-mf/src/plugins/container/InvertedContainerPlugin.ts +# packages/nextjs-mf/src/plugins/container/InvertedContainerRuntimeModule.ts + +* feat: enable eager sharing + +* refactor: improve module hooks for eager loading and search + +* refactor: cleanup custom jsonp and make es5 + +* refactor: cleanup inverted container code + +* refactor: cleanup inverted container code +* automaticAsyncBoundary option has been removed + +* fix: exclude specific pages from page map automatically + +* refactor: conslidate codebase + +* fix: improve hot reload share recovery + +* refactor: remove server jsonp template + +* chore: remove dead code from runtime modules + +* fix: clean up jsonp getCustomJsonpCode + +getting chunk loading global from compiler output options + +* feat: adding cleanInitArrays runtime helper + +* chore: remove share scope hoist and module hoisting system + +* chore: cleanup code + +* chore: remove dead code from add module runtime plugin + +likely can remove whole plugin in future + +* chore: remove logs from delegate modules + +* chore: remove old utils + +* fix: add warning on auto page stitch + +* fix: remove commented out code from InvertedContainerPlugin.ts + +* chore: improve logging to see if its local load or remote load + +* chore: clean up old custom promises factories + +* fix: remove container proxy code + +* fix: remove container proxy code + +* fix: resolve backmerge issues with build + +* Merge branch 'kill_child_compilers' into fix_backmerge_issues + +# Conflicts: +# package-lock.json +# package.json +# packages/nextjs-mf/src/plugins/NextFederationPlugin/index.ts +# packages/nextjs-mf/src/plugins/container/InvertedContainerPlugin.ts +# packages/nextjs-mf/src/plugins/container/InvertedContainerRuntimeModule.ts + +* feat: enable eager sharing + +* refactor: improve module hooks for eager loading and search + +* refactor: cleanup custom jsonp and make es5 + +* refactor: cleanup inverted container code + +* refactor: cleanup inverted container code + +* ci: fix install step with npm and NX + +* test: remove tests for now + +* chore(utils): release version 1.7.3-beta.0 + +* chore(utils): release version 1.7.3 + +* chore(node): release version 0.14.4-beta.0 + +* chore(node): release version 0.14.4 + +* chore(nextjs-mf): release version 6.4.1-beta.4 + +* fix: remove debugging runtime variable + +* chore(nextjs-mf): release version 6.4.1-beta.5 +* automaticAsyncBoundary option has been removed + +* fix: exclude specific pages from page map automatically + +* refactor: conslidate codebase + +* fix: improve hot reload share recovery + +* refactor: remove server jsonp template + +* chore: remove dead code from runtime modules + +* fix: clean up jsonp getCustomJsonpCode + +getting chunk loading global from compiler output options + +* feat: adding cleanInitArrays runtime helper + +* chore: remove share scope hoist and module hoisting system + +* chore: cleanup code + +* chore: remove dead code from add module runtime plugin + +likely can remove whole plugin in future + +* chore: remove logs from delegate modules + +* chore: remove old utils + +* fix: add warning on auto page stitch + +* fix: remove commented out code from InvertedContainerPlugin.ts + +* chore: improve logging to see if its local load or remote load + +* chore: clean up old custom promises factories + +* fix: remove container proxy code + +* fix: remove container proxy code +* automaticAsyncBoundary option has been removed + +* fix: exclude specific pages from page map automatically + +* refactor: conslidate codebase + +* fix: improve hot reload share recovery + +* refactor: remove server jsonp template + +* chore: remove dead code from runtime modules + +* fix: clean up jsonp getCustomJsonpCode + +getting chunk loading global from compiler output options + +* feat: adding cleanInitArrays runtime helper + +* chore: remove share scope hoist and module hoisting system + +* chore: cleanup code + +* chore: remove dead code from add module runtime plugin + +likely can remove whole plugin in future + +* chore: remove logs from delegate modules + +* chore: remove old utils + +* fix: add warning on auto page stitch + +* fix: remove commented out code from InvertedContainerPlugin.ts + +* chore: improve logging to see if its local load or remote load + +* chore: clean up old custom promises factories + +* fix: remove container proxy code + +* fix: remove container proxy code + +* chore: fix project.json + +* debugging + +* fix: resolve backmerge issues with build + +* Merge branch 'kill_child_compilers' into fix_backmerge_issues + +# Conflicts: +# package-lock.json +# package.json +# packages/nextjs-mf/src/plugins/NextFederationPlugin/index.ts +# packages/nextjs-mf/src/plugins/container/InvertedContainerPlugin.ts +# packages/nextjs-mf/src/plugins/container/InvertedContainerRuntimeModule.ts + +* feat: enable eager sharing + +* refactor: improve module hooks for eager loading and search + +* refactor: cleanup custom jsonp and make es5 + +* refactor: cleanup inverted container code + +* refactor: cleanup inverted container code +* automaticAsyncBoundary option has been removed + +* fix: exclude specific pages from page map automatically + +* refactor: conslidate codebase + +* fix: improve hot reload share recovery + +* refactor: remove server jsonp template + +* chore: remove dead code from runtime modules + +* fix: clean up jsonp getCustomJsonpCode + +getting chunk loading global from compiler output options + +* feat: adding cleanInitArrays runtime helper + +* chore: remove share scope hoist and module hoisting system + +* chore: cleanup code + +* chore: remove dead code from add module runtime plugin + +likely can remove whole plugin in future + +* chore: remove logs from delegate modules + +* chore: remove old utils + +* fix: add warning on auto page stitch + +* fix: remove commented out code from InvertedContainerPlugin.ts + +* chore: improve logging to see if its local load or remote load + +* chore: clean up old custom promises factories + +* fix: remove container proxy code + +* fix: remove container proxy code + +* fix: resolve backmerge issues with build + +* Merge branch 'kill_child_compilers' into fix_backmerge_issues + +# Conflicts: +# package-lock.json +# package.json +# packages/nextjs-mf/src/plugins/NextFederationPlugin/index.ts +# packages/nextjs-mf/src/plugins/container/InvertedContainerPlugin.ts +# packages/nextjs-mf/src/plugins/container/InvertedContainerRuntimeModule.ts + +* feat: enable eager sharing + +* refactor: improve module hooks for eager loading and search + +* refactor: cleanup custom jsonp and make es5 + +* refactor: cleanup inverted container code + +* refactor: cleanup inverted container code + +* ci: fix install step with npm and NX + +* test: remove tests for now + +* chore(utils): release version 1.7.3-beta.0 + +* chore(utils): release version 1.7.3 + +* chore(node): release version 0.14.4-beta.0 + +* chore(node): release version 0.14.4 + +* chore(nextjs-mf): release version 6.4.1-beta.4 + +* fix: remove debugging runtime variable + +* chore(nextjs-mf): release version 6.4.1-beta.5 +* Previously, we used to "rekey" all shared packages used in a host in order to prevent eager consumption issues. However, this caused unforeseen issues when trying to share a singleton package, as the package would end up being bundled multiple times per page. + +As a result, we have had to stop rekeying shared modules in userland and only do so on internal Next packages themselves. + +If you need to dangerously share a package using the old method, you can do so by using the following code: + + const shared = { + fakeLodash: { + import: "lodash", + shareKey: "lodash", + } + } + +Please note that this method is now considered dangerous and should be used with caution. + +* update build release + +* update build release +* **typescript:** Reimplemented the whole plugin from round-up to enhance performance, prevent excessive recompilation and other issues. + +Some key changes to the plugin includes: + +- Downloading remote types before compilation starts. +- Caching remote types for better performance. +- Ability to provide Plugin options. + +Please go through plugin `readme.md` file to understand what's changed and how to use the plugin. diff --git a/packages/core/package.json b/packages/core/package.json index 0d7c410e5cf..252f2a04d0e 100644 --- a/packages/core/package.json +++ b/packages/core/package.json @@ -1,6 +1,6 @@ { "name": "@module-federation/core", - "version": "0.0.1", + "version": "1.0.0-canary.1", "type": "commonjs", "main": "src/index.js", "types": "src/index.d.ts", From 6c58e81c688931b0bd5781772985a936cd4c4e65 Mon Sep 17 00:00:00 2001 From: semantic-release-bot Date: Mon, 6 Nov 2023 23:24:15 +0000 Subject: [PATCH 023/185] chore(release): Release native-federation-tests v1.0.0-canary.1 [skip ci] --- packages/native-federation-tests/CHANGELOG.md | 430 ++++++++++++++++++ packages/native-federation-tests/package.json | 2 +- 2 files changed, 431 insertions(+), 1 deletion(-) diff --git a/packages/native-federation-tests/CHANGELOG.md b/packages/native-federation-tests/CHANGELOG.md index 0882b320bdc..933cac69710 100644 --- a/packages/native-federation-tests/CHANGELOG.md +++ b/packages/native-federation-tests/CHANGELOG.md @@ -1,3 +1,433 @@ +# [1.0.0-canary.1](https://github.com/module-federation/universe/compare/native-federation-tests-0.2.1...native-federation-tests-1.0.0-canary.1) (2023-11-06) + + +### Bug Fixes + +* **deps:** update dependency antd to v4.24.11 ([#1029](https://github.com/module-federation/universe/issues/1029)) ([f9e64c0](https://github.com/module-federation/universe/commit/f9e64c04aa1e5802fdc0cdc8f07f2ee728c3ff1c)) +* **deps:** update dependency antd to v4.24.12 ([#1074](https://github.com/module-federation/universe/issues/1074)) ([46c25e0](https://github.com/module-federation/universe/commit/46c25e0a873ada88d2888a4e995bfa7133c01953)) +* **deps:** update dependency antd to v4.24.14 ([#1309](https://github.com/module-federation/universe/issues/1309)) ([d0a2314](https://github.com/module-federation/universe/commit/d0a231470e37dbad85a11df1f12695657ba3b984)) +* **deps:** update dependency axios to v1.5.0 ([#1275](https://github.com/module-federation/universe/issues/1275)) ([f163df1](https://github.com/module-federation/universe/commit/f163df1073740bf4218bb35ba57cea5dc409fe43)) +* **deps:** update dependency axios to v1.5.1 ([ae9a06a](https://github.com/module-federation/universe/commit/ae9a06a0cc35fad27a0b493a25370b92617c39fb)) +* **deps:** update dependency core-js to v3.31.0 ([#1048](https://github.com/module-federation/universe/issues/1048)) ([96a99f2](https://github.com/module-federation/universe/commit/96a99f2f531b165f14aa36c73eef0691abe3f12c)) +* **deps:** update dependency core-js to v3.32.2 ([18d2746](https://github.com/module-federation/universe/commit/18d2746763f38fe295a14df3f1bcd4218fade5b8)) +* **deps:** update dependency core-js to v3.33.0 ([30894ca](https://github.com/module-federation/universe/commit/30894cafbe5dea4350dc7c633548038d7ec5f8a8)) +* **deps:** update dependency fast-glob to v3.3.0 ([#1078](https://github.com/module-federation/universe/issues/1078)) ([14bb0b5](https://github.com/module-federation/universe/commit/14bb0b5e7ca6a72190fa9d9df817b57586221b66)) +* **deps:** update dependency fast-glob to v3.3.1 ([#1197](https://github.com/module-federation/universe/issues/1197)) ([5743543](https://github.com/module-federation/universe/commit/57435430bd0912e3bf370ce08b46f610b12d00e3)) +* **deps:** update dependency react-router-dom to v6.14.0 ([#1049](https://github.com/module-federation/universe/issues/1049)) ([ada4160](https://github.com/module-federation/universe/commit/ada416019bbbf589a5a39094b5f608db39a456b2)) +* **deps:** update dependency react-router-dom to v6.14.1 ([#1081](https://github.com/module-federation/universe/issues/1081)) ([8515c31](https://github.com/module-federation/universe/commit/8515c314ae2d6159c25fc0fcdc992b24c1fa1a93)) +* **deps:** update dependency react-router-dom to v6.15.0 ([#1276](https://github.com/module-federation/universe/issues/1276)) ([850e2fa](https://github.com/module-federation/universe/commit/850e2fac60f49b456aef3b5df9827fc3ac5a6006)) +* **deps:** update dependency react-router-dom to v6.16.0 ([0618339](https://github.com/module-federation/universe/commit/061833912f7e5748011cd60ed679a68c1b659f77)) +* **deps:** update dependency tsup to v7 ([#1042](https://github.com/module-federation/universe/issues/1042)) ([f319c8a](https://github.com/module-federation/universe/commit/f319c8a8d876e547eeadd59e5bde30dcc367edaf)) +* **deps:** update dependency typedoc to ^0.25.0 ([#1277](https://github.com/module-federation/universe/issues/1277)) ([8d6a72e](https://github.com/module-federation/universe/commit/8d6a72e18a57b69b2f63802621e8b4b479554fed)) +* **deps:** update dependency typedoc to v0.25.1 ([#1304](https://github.com/module-federation/universe/issues/1304)) ([abf84fe](https://github.com/module-federation/universe/commit/abf84fefd5c20b5de7c9a74d1c49235f44d36dc6)) +* **deps:** update dependency typedoc to v0.25.2 ([46c6524](https://github.com/module-federation/universe/commit/46c65247e187cee9e15625402c1570ac351bb1fe)) +* **deps:** update dependency undici to v5.24.0 ([573e644](https://github.com/module-federation/universe/commit/573e644333da6d24cb4286ce08221a1aa82415e4)) +* **deps:** update dependency undici to v5.25.2 ([da3e539](https://github.com/module-federation/universe/commit/da3e539a41ed23ccb5086b1dd428fbee0f8d652c)) +* **deps:** update dependency undici to v5.25.4 ([1d4f91e](https://github.com/module-federation/universe/commit/1d4f91ec93da4326c8a42eef28f150d5d09738bb)) +* **deps:** update dependency undici to v5.26.2 [security] ([410a8b8](https://github.com/module-federation/universe/commit/410a8b8bd1558dfb5119ae10941d2b3816a0d0e0)) +* **deps:** update dependency unplugin to v1.5.0 ([936b3f8](https://github.com/module-federation/universe/commit/936b3f8d8061fd9d481d1788fb35b88588928d14)) +* Fix call undefined delegate ([#1149](https://github.com/module-federation/universe/issues/1149)) ([87a5896](https://github.com/module-federation/universe/commit/87a5896221a726578c3433071755fba3465824f4)), closes [#1151](https://github.com/module-federation/universe/issues/1151) +* override semantic-release-plugin-decorators ([18675de](https://github.com/module-federation/universe/commit/18675defef65570d2b3bb6a9caa3fd039badee29)) +* switch to @goestav/nx-semantic-release ([63a3350](https://github.com/module-federation/universe/commit/63a3350a6a1a12235e3c9f1e7c724d54f0476356)) + + +### Features + +* core package for module federation ([#1093](https://github.com/module-federation/universe/issues/1093)) ([d460400](https://github.com/module-federation/universe/commit/d46040053e9b627321b5fe8e05556c5bb727c238)), closes [#851](https://github.com/module-federation/universe/issues/851) [#864](https://github.com/module-federation/universe/issues/864) [#835](https://github.com/module-federation/universe/issues/835) [#851](https://github.com/module-federation/universe/issues/851) [#864](https://github.com/module-federation/universe/issues/864) [#871](https://github.com/module-federation/universe/issues/871) [#851](https://github.com/module-federation/universe/issues/851) [#864](https://github.com/module-federation/universe/issues/864) [#872](https://github.com/module-federation/universe/issues/872) [#875](https://github.com/module-federation/universe/issues/875) [#884](https://github.com/module-federation/universe/issues/884) [#887](https://github.com/module-federation/universe/issues/887) [#893](https://github.com/module-federation/universe/issues/893) [#885](https://github.com/module-federation/universe/issues/885) [#899](https://github.com/module-federation/universe/issues/899) [#904](https://github.com/module-federation/universe/issues/904) [#932](https://github.com/module-federation/universe/issues/932) [#936](https://github.com/module-federation/universe/issues/936) [#959](https://github.com/module-federation/universe/issues/959) [#960](https://github.com/module-federation/universe/issues/960) [#969](https://github.com/module-federation/universe/issues/969) [#971](https://github.com/module-federation/universe/issues/971) [#1234](https://github.com/module-federation/universe/issues/1234) [#1235](https://github.com/module-federation/universe/issues/1235) +* Dynamic Filesystem ([#1274](https://github.com/module-federation/universe/issues/1274)) ([2bec98a](https://github.com/module-federation/universe/commit/2bec98a2472b44898a7f14ec6868a2368cfb6d82)) +* fork module federation ([0ad7430](https://github.com/module-federation/universe/commit/0ad7430f6170458a47144be392133b7b2fa1ade0)) +* improved async init ([ae3a450](https://github.com/module-federation/universe/commit/ae3a4503ff9de86492b13029d6334b281ddd9493)) +* native self forming node federation ([#1291](https://github.com/module-federation/universe/issues/1291)) ([1dd5ed1](https://github.com/module-federation/universe/commit/1dd5ed17c981e036336925e807203e94b58c36d6)) +* new actions, remove gpt integration ([370229e](https://github.com/module-federation/universe/commit/370229e02cc352fcfaeaa0f3cf1f9f2d4966d1bb)) +* Next Federation 7 ([#726](https://github.com/module-federation/universe/issues/726)) ([d50ca1e](https://github.com/module-federation/universe/commit/d50ca1e4636c4e0a402190f6e9c3f69ed9ec8eac)), closes [#851](https://github.com/module-federation/universe/issues/851) [#864](https://github.com/module-federation/universe/issues/864) [#835](https://github.com/module-federation/universe/issues/835) [#851](https://github.com/module-federation/universe/issues/851) [#864](https://github.com/module-federation/universe/issues/864) [#871](https://github.com/module-federation/universe/issues/871) [#851](https://github.com/module-federation/universe/issues/851) [#864](https://github.com/module-federation/universe/issues/864) [#872](https://github.com/module-federation/universe/issues/872) [#875](https://github.com/module-federation/universe/issues/875) [#884](https://github.com/module-federation/universe/issues/884) [#887](https://github.com/module-federation/universe/issues/887) [#893](https://github.com/module-federation/universe/issues/893) [#885](https://github.com/module-federation/universe/issues/885) [#899](https://github.com/module-federation/universe/issues/899) [#904](https://github.com/module-federation/universe/issues/904) [#932](https://github.com/module-federation/universe/issues/932) [#936](https://github.com/module-federation/universe/issues/936) [#959](https://github.com/module-federation/universe/issues/959) [#960](https://github.com/module-federation/universe/issues/960) [#969](https://github.com/module-federation/universe/issues/969) [#971](https://github.com/module-federation/universe/issues/971) [#974](https://github.com/module-federation/universe/issues/974) [#984](https://github.com/module-federation/universe/issues/984) [#986](https://github.com/module-federation/universe/issues/986) [#1015](https://github.com/module-federation/universe/issues/1015) [#1086](https://github.com/module-federation/universe/issues/1086) [#1084](https://github.com/module-federation/universe/issues/1084) +* **node:** node federation demo/testing apps added ([27d545d](https://github.com/module-federation/universe/commit/27d545d99095da7134c392dbcd9fb135a170f6ef)) +* **typedoc-parsetr:** merged main ([cf6e65a](https://github.com/module-federation/universe/commit/cf6e65a4aa895d7c2dba8fdbd8ec22ec7bd8f514)) +* **typedoc-parsetr:** merged main ([2ff0d5a](https://github.com/module-federation/universe/commit/2ff0d5a075df3f241742cc7e516cd0378e8e1b3e)) +* **typedoc-parsetr:** python script implementation ([0a533cb](https://github.com/module-federation/universe/commit/0a533cb60e0c3ca269ab45df740c1367be175e80)) + + +### Reverts + +* Revert "chore: upgrade nx" (#1064) ([3eadaf6](https://github.com/module-federation/universe/commit/3eadaf6f2d8ecc64b45c8e10dbc93f18293f45d5)), closes [#1064](https://github.com/module-federation/universe/issues/1064) + + +### BREAKING CHANGES + +* automaticAsyncBoundary option has been removed + +* fix: exclude specific pages from page map automatically + +* refactor: conslidate codebase + +* fix: improve hot reload share recovery + +* refactor: remove server jsonp template + +* chore: remove dead code from runtime modules + +* fix: clean up jsonp getCustomJsonpCode + +getting chunk loading global from compiler output options + +* feat: adding cleanInitArrays runtime helper + +* chore: remove share scope hoist and module hoisting system + +* chore: cleanup code + +* chore: remove dead code from add module runtime plugin + +likely can remove whole plugin in future + +* chore: remove logs from delegate modules + +* chore: remove old utils + +* fix: add warning on auto page stitch + +* fix: remove commented out code from InvertedContainerPlugin.ts + +* chore: improve logging to see if its local load or remote load + +* chore: clean up old custom promises factories + +* fix: remove container proxy code + +* fix: remove container proxy code +* automaticAsyncBoundary option has been removed + +* fix: exclude specific pages from page map automatically + +* refactor: conslidate codebase + +* fix: improve hot reload share recovery + +* refactor: remove server jsonp template + +* chore: remove dead code from runtime modules + +* fix: clean up jsonp getCustomJsonpCode + +getting chunk loading global from compiler output options + +* feat: adding cleanInitArrays runtime helper + +* chore: remove share scope hoist and module hoisting system + +* chore: cleanup code + +* chore: remove dead code from add module runtime plugin + +likely can remove whole plugin in future + +* chore: remove logs from delegate modules + +* chore: remove old utils + +* fix: add warning on auto page stitch + +* fix: remove commented out code from InvertedContainerPlugin.ts + +* chore: improve logging to see if its local load or remote load + +* chore: clean up old custom promises factories + +* fix: remove container proxy code + +* fix: remove container proxy code + +* chore: fix project.json + +* debugging + +* fix: resolve backmerge issues with build + +* Merge branch 'kill_child_compilers' into fix_backmerge_issues + +# Conflicts: +# package-lock.json +# package.json +# packages/nextjs-mf/src/plugins/NextFederationPlugin/index.ts +# packages/nextjs-mf/src/plugins/container/InvertedContainerPlugin.ts +# packages/nextjs-mf/src/plugins/container/InvertedContainerRuntimeModule.ts + +* feat: enable eager sharing + +* refactor: improve module hooks for eager loading and search + +* refactor: cleanup custom jsonp and make es5 + +* refactor: cleanup inverted container code + +* refactor: cleanup inverted container code +* automaticAsyncBoundary option has been removed + +* fix: exclude specific pages from page map automatically + +* refactor: conslidate codebase + +* fix: improve hot reload share recovery + +* refactor: remove server jsonp template + +* chore: remove dead code from runtime modules + +* fix: clean up jsonp getCustomJsonpCode + +getting chunk loading global from compiler output options + +* feat: adding cleanInitArrays runtime helper + +* chore: remove share scope hoist and module hoisting system + +* chore: cleanup code + +* chore: remove dead code from add module runtime plugin + +likely can remove whole plugin in future + +* chore: remove logs from delegate modules + +* chore: remove old utils + +* fix: add warning on auto page stitch + +* fix: remove commented out code from InvertedContainerPlugin.ts + +* chore: improve logging to see if its local load or remote load + +* chore: clean up old custom promises factories + +* fix: remove container proxy code + +* fix: remove container proxy code + +* fix: resolve backmerge issues with build + +* Merge branch 'kill_child_compilers' into fix_backmerge_issues + +# Conflicts: +# package-lock.json +# package.json +# packages/nextjs-mf/src/plugins/NextFederationPlugin/index.ts +# packages/nextjs-mf/src/plugins/container/InvertedContainerPlugin.ts +# packages/nextjs-mf/src/plugins/container/InvertedContainerRuntimeModule.ts + +* feat: enable eager sharing + +* refactor: improve module hooks for eager loading and search + +* refactor: cleanup custom jsonp and make es5 + +* refactor: cleanup inverted container code + +* refactor: cleanup inverted container code + +* ci: fix install step with npm and NX + +* test: remove tests for now + +* chore(utils): release version 1.7.3-beta.0 + +* chore(utils): release version 1.7.3 + +* chore(node): release version 0.14.4-beta.0 + +* chore(node): release version 0.14.4 + +* chore(nextjs-mf): release version 6.4.1-beta.4 + +* fix: remove debugging runtime variable + +* chore(nextjs-mf): release version 6.4.1-beta.5 +* automaticAsyncBoundary option has been removed + +* fix: exclude specific pages from page map automatically + +* refactor: conslidate codebase + +* fix: improve hot reload share recovery + +* refactor: remove server jsonp template + +* chore: remove dead code from runtime modules + +* fix: clean up jsonp getCustomJsonpCode + +getting chunk loading global from compiler output options + +* feat: adding cleanInitArrays runtime helper + +* chore: remove share scope hoist and module hoisting system + +* chore: cleanup code + +* chore: remove dead code from add module runtime plugin + +likely can remove whole plugin in future + +* chore: remove logs from delegate modules + +* chore: remove old utils + +* fix: add warning on auto page stitch + +* fix: remove commented out code from InvertedContainerPlugin.ts + +* chore: improve logging to see if its local load or remote load + +* chore: clean up old custom promises factories + +* fix: remove container proxy code + +* fix: remove container proxy code +* automaticAsyncBoundary option has been removed + +* fix: exclude specific pages from page map automatically + +* refactor: conslidate codebase + +* fix: improve hot reload share recovery + +* refactor: remove server jsonp template + +* chore: remove dead code from runtime modules + +* fix: clean up jsonp getCustomJsonpCode + +getting chunk loading global from compiler output options + +* feat: adding cleanInitArrays runtime helper + +* chore: remove share scope hoist and module hoisting system + +* chore: cleanup code + +* chore: remove dead code from add module runtime plugin + +likely can remove whole plugin in future + +* chore: remove logs from delegate modules + +* chore: remove old utils + +* fix: add warning on auto page stitch + +* fix: remove commented out code from InvertedContainerPlugin.ts + +* chore: improve logging to see if its local load or remote load + +* chore: clean up old custom promises factories + +* fix: remove container proxy code + +* fix: remove container proxy code + +* chore: fix project.json + +* debugging + +* fix: resolve backmerge issues with build + +* Merge branch 'kill_child_compilers' into fix_backmerge_issues + +# Conflicts: +# package-lock.json +# package.json +# packages/nextjs-mf/src/plugins/NextFederationPlugin/index.ts +# packages/nextjs-mf/src/plugins/container/InvertedContainerPlugin.ts +# packages/nextjs-mf/src/plugins/container/InvertedContainerRuntimeModule.ts + +* feat: enable eager sharing + +* refactor: improve module hooks for eager loading and search + +* refactor: cleanup custom jsonp and make es5 + +* refactor: cleanup inverted container code + +* refactor: cleanup inverted container code +* automaticAsyncBoundary option has been removed + +* fix: exclude specific pages from page map automatically + +* refactor: conslidate codebase + +* fix: improve hot reload share recovery + +* refactor: remove server jsonp template + +* chore: remove dead code from runtime modules + +* fix: clean up jsonp getCustomJsonpCode + +getting chunk loading global from compiler output options + +* feat: adding cleanInitArrays runtime helper + +* chore: remove share scope hoist and module hoisting system + +* chore: cleanup code + +* chore: remove dead code from add module runtime plugin + +likely can remove whole plugin in future + +* chore: remove logs from delegate modules + +* chore: remove old utils + +* fix: add warning on auto page stitch + +* fix: remove commented out code from InvertedContainerPlugin.ts + +* chore: improve logging to see if its local load or remote load + +* chore: clean up old custom promises factories + +* fix: remove container proxy code + +* fix: remove container proxy code + +* fix: resolve backmerge issues with build + +* Merge branch 'kill_child_compilers' into fix_backmerge_issues + +# Conflicts: +# package-lock.json +# package.json +# packages/nextjs-mf/src/plugins/NextFederationPlugin/index.ts +# packages/nextjs-mf/src/plugins/container/InvertedContainerPlugin.ts +# packages/nextjs-mf/src/plugins/container/InvertedContainerRuntimeModule.ts + +* feat: enable eager sharing + +* refactor: improve module hooks for eager loading and search + +* refactor: cleanup custom jsonp and make es5 + +* refactor: cleanup inverted container code + +* refactor: cleanup inverted container code + +* ci: fix install step with npm and NX + +* test: remove tests for now + +* chore(utils): release version 1.7.3-beta.0 + +* chore(utils): release version 1.7.3 + +* chore(node): release version 0.14.4-beta.0 + +* chore(node): release version 0.14.4 + +* chore(nextjs-mf): release version 6.4.1-beta.4 + +* fix: remove debugging runtime variable + +* chore(nextjs-mf): release version 6.4.1-beta.5 + # Changelog This file was generated using [@jscutlery/semver](https://github.com/jscutlery/semver). diff --git a/packages/native-federation-tests/package.json b/packages/native-federation-tests/package.json index ff5ed9800c2..c9932419350 100644 --- a/packages/native-federation-tests/package.json +++ b/packages/native-federation-tests/package.json @@ -1,6 +1,6 @@ { "name": "@module-federation/native-federation-tests", - "version": "0.2.1", + "version": "1.0.0-canary.1", "description": "Bundler agnostic unplugin to share federated tests", "publishConfig": { "access": "public" From ca3dcbc2d7f0d3842f6eeb22dac64dd6f19c3a16 Mon Sep 17 00:00:00 2001 From: ScriptedAlchemy Date: Mon, 6 Nov 2023 21:00:11 -0800 Subject: [PATCH 024/185] feat(enhanced): AsyncBoundary support ESM targets and remix_run framework outputs If esm output, use top level await to hold eager boundary on exports, then return sync exports as normal --- .../src/lib/container/AsyncBoundaryPlugin.ts | 262 ++++++++++-------- 1 file changed, 154 insertions(+), 108 deletions(-) diff --git a/packages/enhanced/src/lib/container/AsyncBoundaryPlugin.ts b/packages/enhanced/src/lib/container/AsyncBoundaryPlugin.ts index bca2a124377..b6c796dcfde 100644 --- a/packages/enhanced/src/lib/container/AsyncBoundaryPlugin.ts +++ b/packages/enhanced/src/lib/container/AsyncBoundaryPlugin.ts @@ -10,131 +10,177 @@ interface Options { excludeChunk?: (chunk: Chunk) => boolean; } -// Class to handle asynchronous entry startup class AsyncEntryStartupPlugin { private _options: Options; + private _runtimeChunks: Map; constructor(options?: Options) { this._options = options || {}; + this._runtimeChunks = new Map(); } apply(compiler: Compiler): void { - const chunkRuntimes = new Map(); - compiler.hooks.thisCompilation.tap( - 'AsyncEntryStartupPlugin', - (compilation: Compilation) => { - compiler.webpack.javascript.JavascriptModulesPlugin.getCompilationHooks( - compilation, - ).renderStartup.tap( - 'AsyncEntryStartupPlugin', - ( - source: any, - renderContext: Module, - upperContext: { chunk: Chunk }, - ) => { - // Check if single runtime chunk is enabled - if (compiler?.options?.optimization?.runtimeChunk) { - if (upperContext?.chunk.hasRuntime()) { - chunkRuntimes.set(upperContext.chunk.id, upperContext.chunk); - return source; - } - } + compiler.hooks.thisCompilation.tap('AsyncEntryStartupPlugin', (compilation: Compilation) => { + this.collectRuntimeChunks(compilation); + this.handleRenderStartup(compiler, compilation); + }); + } - // Check if excludeChunk is provided, use it to decide further processing - if ( - this._options.excludeChunk && - this._options.excludeChunk(upperContext.chunk) - ) { - return source; + private collectRuntimeChunks(compilation: Compilation): void { + compilation.hooks.beforeChunkAssets.tap('CollectRuntimeChunksPlugin', () => { + for (const chunk of compilation.chunks) { + if (chunk.hasRuntime() && chunk.id !== null) { + this._runtimeChunks.set(chunk.id, chunk); + for (const dependentChunk of compilation.chunkGraph.getChunkEntryDependentChunksIterable(chunk)) { + if (dependentChunk.id !== null) { + this._runtimeChunks.set(dependentChunk.id, dependentChunk); } + } + } + } + }); + } - const runtime = chunkRuntimes.get(upperContext.chunk.runtime); - - // Get the runtime requirements of the chunk - const requirements = - compilation.chunkGraph.getTreeRuntimeRequirements( - runtime || upperContext.chunk, - ); - - let remotes = ''; - let shared = ''; - const hasRemoteModules = - compilation.chunkGraph.getChunkModulesIterableBySourceType( - upperContext.chunk, - 'remote', - ); - - // Check if the chunk has remote get scope - if ( - requirements.has(RuntimeGlobals.currentRemoteGetScope) || - hasRemoteModules || - requirements.has('__webpack_require__.vmok') - ) { - remotes = `if(__webpack_require__.f && __webpack_require__.f.remotes) __webpack_require__.f.remotes(${JSON.stringify( - upperContext.chunk.id, - )}, promiseTrack);`; + private handleRenderStartup(compiler: Compiler, compilation: Compilation): void { + compiler.webpack.javascript.JavascriptModulesPlugin.getCompilationHooks(compilation).renderStartup.tap( + 'AsyncEntryStartupPlugin', + (source: any, renderContext: Module, upperContext: { chunk: Chunk }) => { + // Check if this._runtimeChunks contains any runtime chunks + if (this._runtimeChunks.size > 0 && upperContext.chunk.id) { + if (upperContext?.chunk.hasRuntime()) { + this._runtimeChunks.set(upperContext.chunk.id, upperContext.chunk); + return source; + } + } + + // Check if excludeChunk is provided, use it to decide further processing + if ( + this._options.excludeChunk && + this._options.excludeChunk(upperContext.chunk) + ) { + return source; + } + + const runtime = new Set(); + if (typeof upperContext.chunk.runtime === 'string' || typeof upperContext.chunk.runtime === 'number') { + if (this._runtimeChunks.has(upperContext.chunk.runtime)) { + runtime.add(this._runtimeChunks.get(upperContext.chunk.runtime)); + } else { + runtime.add(upperContext.chunk); + } + } else if (upperContext.chunk.runtime && typeof upperContext.chunk.runtime[Symbol.iterator] === 'function') { + for (const runtimeItem of upperContext.chunk.runtime) { + if (this._runtimeChunks.has(runtimeItem)) { + runtime.add(this._runtimeChunks.get(runtimeItem)); } - - // Check if the chunk has share scope map or initialize sharing - if ( - requirements.has(RuntimeGlobals.shareScopeMap) || - requirements.has(RuntimeGlobals.initializeSharing) + } + } + if (runtime.size === 0) { + runtime.add(upperContext.chunk); + } + // Get the runtime requirements of the chunk + let remotes = ''; + let shared = ''; + + for (const runtimeItem of runtime) { + const requirements = + compilation.chunkGraph.getTreeRuntimeRequirements( + runtimeItem as Chunk, + ); + + const hasRemoteModules = + compilation.chunkGraph.getChunkModulesIterableBySourceType( + upperContext.chunk, + 'remote', + ); + + const consumeShares = + compilation.chunkGraph.getChunkModulesIterableBySourceType( + upperContext.chunk, + 'consume-shared', + ); + + // Check if the chunk has remote get scope + if ( + requirements.has(RuntimeGlobals.currentRemoteGetScope) || + hasRemoteModules || + requirements.has('__webpack_require__.vmok') + ) { + remotes = `if(__webpack_require__.f && __webpack_require__.f.remotes) __webpack_require__.f.remotes(${JSON.stringify( + upperContext.chunk.id, + )}, promiseTrack);`; + } + + // Check if the chunk has share scope map or initialize sharing + if ( + requirements.has(RuntimeGlobals.shareScopeMap) || + requirements.has(RuntimeGlobals.initializeSharing) || + consumeShares + ) { + shared = `if(__webpack_require__.f && __webpack_require__.f.consumes) __webpack_require__.f.consumes(${JSON.stringify( + upperContext.chunk.id, + )}, promiseTrack);`; + } + } + + // If no remotes or shared, return the source + if (!remotes && !shared) { + return source; + } + + // Get the entry modules of the chunk + const entryModules = + compilation.chunkGraph.getChunkEntryModulesIterable( + upperContext.chunk, + ); + + const initialEntryModules = []; + + // Iterate over the entry modules + for (const entryModule of entryModules) { + const entryModuleID = compilation.chunkGraph.getModuleId(entryModule) + if (entryModuleID) { + let shouldInclude = false; + + // Check if eager is a function and call it + if (typeof this._options.eager === 'function') { + shouldInclude = this._options.eager(entryModule); + } else if ( + this._options.eager && + this._options.eager.test(entryModule.identifier()) ) { - shared = `if(__webpack_require__.f && __webpack_require__.f.consumes) __webpack_require__.f.consumes(${JSON.stringify( - upperContext.chunk.id, - )}, promiseTrack);`; + // Check if eager is a RegExp and test it + shouldInclude = true; } - // If no remotes or shared, return the source - if (!remotes && !shared) { - return source; - } - - // Get the entry modules of the chunk - const entryModules = - compilation.chunkGraph.getChunkEntryModulesIterable( - upperContext.chunk, + // If shouldInclude is true, push the module to initialEntryModules + if (shouldInclude) { + initialEntryModules.push( + `__webpack_require__(${JSON.stringify(entryModuleID)});`, ); - - const initialEntryModules = []; - - // Iterate over the entry modules - for (const entryModule of entryModules) { - if (entryModule.id) { - let shouldInclude = false; - - // Check if eager is a function and call it - if (typeof this._options.eager === 'function') { - shouldInclude = this._options.eager(entryModule); - } else if ( - this._options.eager && - this._options.eager.test(entryModule.identifier()) - ) { - // Check if eager is a RegExp and test it - shouldInclude = true; - } - - // If shouldInclude is true, push the module to initialEntryModules - if (shouldInclude) { - initialEntryModules.push( - `__webpack_require__(${JSON.stringify(entryModule.id)});`, - ); - } - } } - - return Template.asString([ - 'var promiseTrack = [];', - Template.asString(initialEntryModules), - shared, - remotes, - 'var __webpack_exports__ = Promise.all(promiseTrack).then(function() {', - Template.indent(source.source()), - Template.indent('return __webpack_exports__'), - '});', - ]); - }, - ); + } + } + if(compiler.options?.experiments?.topLevelAwait && compiler.options?.experiments?.outputModule) { + return Template.asString([ + 'var promiseTrack = [];', + Template.asString(initialEntryModules), + shared, + remotes, + 'await Promise.all(promiseTrack)', + Template.indent(source.source()), + ]); + } + return Template.asString([ + 'var promiseTrack = [];', + Template.asString(initialEntryModules), + shared, + remotes, + 'var __webpack_exports__ = Promise.all(promiseTrack).then(function() {', + Template.indent(source.source()), + Template.indent('return __webpack_exports__'), + '});', + ]); }, ); } From f1e8079971dbdc791f80e322bb7c5a7fc2683909 Mon Sep 17 00:00:00 2001 From: ScriptedAlchemy Date: Mon, 6 Nov 2023 21:58:30 -0800 Subject: [PATCH 025/185] style: linting --- packages/core/CHANGELOG.md | 588 +++++++++--------- packages/enhanced/CHANGELOG.md | 18 +- .../src/lib/container/AsyncBoundaryPlugin.ts | 60 +- packages/native-federation-tests/CHANGELOG.md | 468 +++++++------- .../native-federation-typescript/CHANGELOG.md | 255 ++++---- packages/nextjs-mf/CHANGELOG.md | 10 +- packages/node/CHANGELOG.md | 174 +++--- packages/typescript/CHANGELOG.md | 16 +- 8 files changed, 821 insertions(+), 768 deletions(-) diff --git a/packages/core/CHANGELOG.md b/packages/core/CHANGELOG.md index e7dae046c14..3e546e49a95 100644 --- a/packages/core/CHANGELOG.md +++ b/packages/core/CHANGELOG.md @@ -1,489 +1,505 @@ # 1.0.0-canary.1 (2023-11-06) - ### Bug Fixes -* cannot convert undefined object ([#406](https://github.com/module-federation/universe/issues/406)) ([f049bc9](https://github.com/module-federation/universe/commit/f049bc93c987f0ba918ecb345d1b3ee824715672)) -* deps ([#855](https://github.com/module-federation/universe/issues/855)) ([51fd134](https://github.com/module-federation/universe/commit/51fd134b6ffe501ac2a69df9ce8025f77900edd1)) -* **deps:** update dependency @swc/helpers to ~0.4.0 ([#348](https://github.com/module-federation/universe/issues/348)) ([36ee624](https://github.com/module-federation/universe/commit/36ee624d4c939ffb9884b776c44887686bfef846)) -* **deps:** update dependency antd to v4.24.10 ([#849](https://github.com/module-federation/universe/issues/849)) ([6daf946](https://github.com/module-federation/universe/commit/6daf946f63632cd0a1734e83b83cce06dae2862c)) -* **deps:** update dependency antd to v4.24.11 ([#1004](https://github.com/module-federation/universe/issues/1004)) ([e372fc1](https://github.com/module-federation/universe/commit/e372fc15dddec483f63714802e7aa91ef7dca916)) -* **deps:** update dependency antd to v4.24.11 ([#1029](https://github.com/module-federation/universe/issues/1029)) ([f9e64c0](https://github.com/module-federation/universe/commit/f9e64c04aa1e5802fdc0cdc8f07f2ee728c3ff1c)) -* **deps:** update dependency antd to v4.24.12 ([#1074](https://github.com/module-federation/universe/issues/1074)) ([46c25e0](https://github.com/module-federation/universe/commit/46c25e0a873ada88d2888a4e995bfa7133c01953)) -* **deps:** update dependency antd to v4.24.14 ([#1309](https://github.com/module-federation/universe/issues/1309)) ([d0a2314](https://github.com/module-federation/universe/commit/d0a231470e37dbad85a11df1f12695657ba3b984)) -* **deps:** update dependency antd to v4.24.7 ([#426](https://github.com/module-federation/universe/issues/426)) ([fbd3faa](https://github.com/module-federation/universe/commit/fbd3faa961032d22e86d12e86ce3f751d8f962e6)) -* **deps:** update dependency antd to v4.24.8 ([#586](https://github.com/module-federation/universe/issues/586)) ([5099896](https://github.com/module-federation/universe/commit/509989632bbdccd4b0945a04b43fa9dfb73bb476)) -* **deps:** update dependency antd to v4.24.9 ([#765](https://github.com/module-federation/universe/issues/765)) ([eabe2ec](https://github.com/module-federation/universe/commit/eabe2ec55c61123c26b0c94503973621a1efaa7b)) -* **deps:** update dependency antd to v4.24.9 ([#779](https://github.com/module-federation/universe/issues/779)) ([7b6de1b](https://github.com/module-federation/universe/commit/7b6de1b4e17e3ad97e6910e870e68fcd505e25d3)) -* **deps:** update dependency axios to v1 ([#534](https://github.com/module-federation/universe/issues/534)) ([ae5b885](https://github.com/module-federation/universe/commit/ae5b8858825546376551a775be3a31748e9adeef)) -* **deps:** update dependency axios to v1.3.5 ([#736](https://github.com/module-federation/universe/issues/736)) ([ad9a463](https://github.com/module-federation/universe/commit/ad9a463ea26af133fc145404e3351a5c04d5077f)) -* **deps:** update dependency axios to v1.3.6 ([#762](https://github.com/module-federation/universe/issues/762)) ([b72d2c7](https://github.com/module-federation/universe/commit/b72d2c7b536b6c08ef663e1a13db7c996b84753e)) -* **deps:** update dependency axios to v1.4.0 ([#821](https://github.com/module-federation/universe/issues/821)) ([c5e1546](https://github.com/module-federation/universe/commit/c5e154697e83ee457a17dafaaea67b6f7239ac92)) -* **deps:** update dependency axios to v1.5.0 ([#1275](https://github.com/module-federation/universe/issues/1275)) ([f163df1](https://github.com/module-federation/universe/commit/f163df1073740bf4218bb35ba57cea5dc409fe43)) -* **deps:** update dependency axios to v1.5.1 ([ae9a06a](https://github.com/module-federation/universe/commit/ae9a06a0cc35fad27a0b493a25370b92617c39fb)) -* **deps:** update dependency core-js to v3.29.1 ([#643](https://github.com/module-federation/universe/issues/643)) ([cf4dada](https://github.com/module-federation/universe/commit/cf4dada8c62074e52f972ae3aceace7fde360b5a)) -* **deps:** update dependency core-js to v3.30.1 ([#754](https://github.com/module-federation/universe/issues/754)) ([252549a](https://github.com/module-federation/universe/commit/252549af57b0288aba43eecb120effa502748375)) -* **deps:** update dependency core-js to v3.31.0 ([#1048](https://github.com/module-federation/universe/issues/1048)) ([96a99f2](https://github.com/module-federation/universe/commit/96a99f2f531b165f14aa36c73eef0691abe3f12c)) -* **deps:** update dependency core-js to v3.32.2 ([18d2746](https://github.com/module-federation/universe/commit/18d2746763f38fe295a14df3f1bcd4218fade5b8)) -* **deps:** update dependency core-js to v3.33.0 ([30894ca](https://github.com/module-federation/universe/commit/30894cafbe5dea4350dc7c633548038d7ec5f8a8)) -* **deps:** update dependency fast-glob to v3.3.0 ([#1078](https://github.com/module-federation/universe/issues/1078)) ([14bb0b5](https://github.com/module-federation/universe/commit/14bb0b5e7ca6a72190fa9d9df817b57586221b66)) -* **deps:** update dependency fast-glob to v3.3.1 ([#1197](https://github.com/module-federation/universe/issues/1197)) ([5743543](https://github.com/module-federation/universe/commit/57435430bd0912e3bf370ce08b46f610b12d00e3)) -* **deps:** update dependency js-cookie to v3.0.4 ([#773](https://github.com/module-federation/universe/issues/773)) ([f26af6d](https://github.com/module-federation/universe/commit/f26af6db494726a2728b9dd1d0b1e677177c1bf0)) -* **deps:** update dependency js-cookie to v3.0.5 ([#1005](https://github.com/module-federation/universe/issues/1005)) ([345da70](https://github.com/module-federation/universe/commit/345da70b4ec46d955d64e8e7efc13daa24b73f0a)) -* **deps:** update dependency react-router-dom to v6.10.0 ([#755](https://github.com/module-federation/universe/issues/755)) ([bd22cbe](https://github.com/module-federation/universe/commit/bd22cbee9be6dd3b301fbcb2b464b0c697d65689)) -* **deps:** update dependency react-router-dom to v6.11.0 ([#830](https://github.com/module-federation/universe/issues/830)) ([d9366bf](https://github.com/module-federation/universe/commit/d9366bf58f255918c97784960f99a828c3e665e0)) -* **deps:** update dependency react-router-dom to v6.11.1 ([#846](https://github.com/module-federation/universe/issues/846)) ([299cb0d](https://github.com/module-federation/universe/commit/299cb0d0351f1a9cb7c03279eb6a62deb4a3f2d6)) -* **deps:** update dependency react-router-dom to v6.11.2 ([#889](https://github.com/module-federation/universe/issues/889)) ([a191608](https://github.com/module-federation/universe/commit/a19160805ce7da8cad4642f6f8e08762acb74947)) -* **deps:** update dependency react-router-dom to v6.14.0 ([#1049](https://github.com/module-federation/universe/issues/1049)) ([ada4160](https://github.com/module-federation/universe/commit/ada416019bbbf589a5a39094b5f608db39a456b2)) -* **deps:** update dependency react-router-dom to v6.14.1 ([#1081](https://github.com/module-federation/universe/issues/1081)) ([8515c31](https://github.com/module-federation/universe/commit/8515c314ae2d6159c25fc0fcdc992b24c1fa1a93)) -* **deps:** update dependency react-router-dom to v6.15.0 ([#1276](https://github.com/module-federation/universe/issues/1276)) ([850e2fa](https://github.com/module-federation/universe/commit/850e2fac60f49b456aef3b5df9827fc3ac5a6006)) -* **deps:** update dependency react-router-dom to v6.16.0 ([0618339](https://github.com/module-federation/universe/commit/061833912f7e5748011cd60ed679a68c1b659f77)) -* **deps:** update dependency react-router-dom to v6.8.0 ([#428](https://github.com/module-federation/universe/issues/428)) ([274e713](https://github.com/module-federation/universe/commit/274e713104de49485380e2af700afdd63ae50da5)) -* **deps:** update dependency react-router-dom to v6.9.0 ([#663](https://github.com/module-federation/universe/issues/663)) ([1a934f5](https://github.com/module-federation/universe/commit/1a934f55afc40e0efa686dbb2082d426d07b9d32)) -* **deps:** update dependency tsup to v7 ([#1042](https://github.com/module-federation/universe/issues/1042)) ([f319c8a](https://github.com/module-federation/universe/commit/f319c8a8d876e547eeadd59e5bde30dcc367edaf)) -* **deps:** update dependency typedoc to ^0.25.0 ([#1277](https://github.com/module-federation/universe/issues/1277)) ([8d6a72e](https://github.com/module-federation/universe/commit/8d6a72e18a57b69b2f63802621e8b4b479554fed)) -* **deps:** update dependency typedoc to v0.25.1 ([#1304](https://github.com/module-federation/universe/issues/1304)) ([abf84fe](https://github.com/module-federation/universe/commit/abf84fefd5c20b5de7c9a74d1c49235f44d36dc6)) -* **deps:** update dependency typedoc to v0.25.2 ([46c6524](https://github.com/module-federation/universe/commit/46c65247e187cee9e15625402c1570ac351bb1fe)) -* **deps:** update dependency undici to v5.24.0 ([573e644](https://github.com/module-federation/universe/commit/573e644333da6d24cb4286ce08221a1aa82415e4)) -* **deps:** update dependency undici to v5.25.2 ([da3e539](https://github.com/module-federation/universe/commit/da3e539a41ed23ccb5086b1dd428fbee0f8d652c)) -* **deps:** update dependency undici to v5.25.4 ([1d4f91e](https://github.com/module-federation/universe/commit/1d4f91ec93da4326c8a42eef28f150d5d09738bb)) -* **deps:** update dependency undici to v5.26.2 [security] ([410a8b8](https://github.com/module-federation/universe/commit/410a8b8bd1558dfb5119ae10941d2b3816a0d0e0)) -* **deps:** update dependency unplugin to v1.5.0 ([936b3f8](https://github.com/module-federation/universe/commit/936b3f8d8061fd9d481d1788fb35b88588928d14)) -* **federatedtypesplugin:** modify remote url used to import remote types ([#496](https://github.com/module-federation/universe/issues/496)) ([e91a68a](https://github.com/module-federation/universe/commit/e91a68a96bb2c374f3a0e84eba73baeeb2913698)), closes [#495](https://github.com/module-federation/universe/issues/495) -* **federation-boundary:** make custom boundary optional ([#570](https://github.com/module-federation/universe/issues/570)) ([e43a387](https://github.com/module-federation/universe/commit/e43a387f90587d62a78c40584ed9104328202f8e)) -* Fix call undefined delegate ([#1149](https://github.com/module-federation/universe/issues/1149)) ([87a5896](https://github.com/module-federation/universe/commit/87a5896221a726578c3433071755fba3465824f4)), closes [#1151](https://github.com/module-federation/universe/issues/1151) -* flush CSS chunks, cache bust remote entry on render ([#269](https://github.com/module-federation/universe/issues/269)) ([85a216a](https://github.com/module-federation/universe/commit/85a216a8fd34ae849630ff5b42bacb26c855a9ce)) -* Improve logic ([#387](https://github.com/module-federation/universe/issues/387)) ([0eb7f1b](https://github.com/module-federation/universe/commit/0eb7f1bb77ef0a72ad26adeea1b508fbae60656f)) -* native federation in readme ([710e685](https://github.com/module-federation/universe/commit/710e68575cc8dfbef684c5c72637b539f7b29773)) -* override semantic-release-plugin-decorators ([18675de](https://github.com/module-federation/universe/commit/18675defef65570d2b3bb6a9caa3fd039badee29)) -* **package.json:** fix package export fields for utils ([#285](https://github.com/module-federation/universe/issues/285)) ([99d6b77](https://github.com/module-federation/universe/commit/99d6b779696b5dbebea9cf3c870a5caa5d9d7c6f)) -* remove unused dependencies nx added to typescript package ([#690](https://github.com/module-federation/universe/issues/690)) ([c87e7d7](https://github.com/module-federation/universe/commit/c87e7d74226f060bbd2aff7e65df691e69f6f82a)) -* resolve NX build version issues ([#578](https://github.com/module-federation/universe/issues/578)) ([84d3dde](https://github.com/module-federation/universe/commit/84d3dde0d3eff37e14c759456f7a56690c776f27)) -* safely build url to download type files ([#694](https://github.com/module-federation/universe/issues/694)) ([ee5429d](https://github.com/module-federation/universe/commit/ee5429dea3469ff1bf020f84d88e96caf1075d07)) -* set peer dependencies ([#341](https://github.com/module-federation/universe/issues/341)) ([fec9608](https://github.com/module-federation/universe/commit/fec960813a4e3859a5fb24863bb55e463a2fdfa3)) -* support dynamic import of esm modules ([#296](https://github.com/module-federation/universe/issues/296)) ([cf28356](https://github.com/module-federation/universe/commit/cf28356728354e1f63c0d588035dd115398f8641)) -* switch to @goestav/nx-semantic-release ([63a3350](https://github.com/module-federation/universe/commit/63a3350a6a1a12235e3c9f1e7c724d54f0476356)) -* **typescript:** use node-fetch to download TS types ([#565](https://github.com/module-federation/universe/issues/565)) ([f668b1f](https://github.com/module-federation/universe/commit/f668b1fa11f05ff5d15e6581c27b5da9ad454ed2)) -* Utilities - Remove module side effect ([#488](https://github.com/module-federation/universe/issues/488)) ([3554de7](https://github.com/module-federation/universe/commit/3554de7912eaf7b379a6a863677c4b01da0ccf2c)), closes [#487](https://github.com/module-federation/universe/issues/487) [#500](https://github.com/module-federation/universe/issues/500) [#496](https://github.com/module-federation/universe/issues/496) [#495](https://github.com/module-federation/universe/issues/495) [#492](https://github.com/module-federation/universe/issues/492) [#455](https://github.com/module-federation/universe/issues/455) [#491](https://github.com/module-federation/universe/issues/491) [#496](https://github.com/module-federation/universe/issues/496) [#495](https://github.com/module-federation/universe/issues/495) - +- cannot convert undefined object ([#406](https://github.com/module-federation/universe/issues/406)) ([f049bc9](https://github.com/module-federation/universe/commit/f049bc93c987f0ba918ecb345d1b3ee824715672)) +- deps ([#855](https://github.com/module-federation/universe/issues/855)) ([51fd134](https://github.com/module-federation/universe/commit/51fd134b6ffe501ac2a69df9ce8025f77900edd1)) +- **deps:** update dependency @swc/helpers to ~0.4.0 ([#348](https://github.com/module-federation/universe/issues/348)) ([36ee624](https://github.com/module-federation/universe/commit/36ee624d4c939ffb9884b776c44887686bfef846)) +- **deps:** update dependency antd to v4.24.10 ([#849](https://github.com/module-federation/universe/issues/849)) ([6daf946](https://github.com/module-federation/universe/commit/6daf946f63632cd0a1734e83b83cce06dae2862c)) +- **deps:** update dependency antd to v4.24.11 ([#1004](https://github.com/module-federation/universe/issues/1004)) ([e372fc1](https://github.com/module-federation/universe/commit/e372fc15dddec483f63714802e7aa91ef7dca916)) +- **deps:** update dependency antd to v4.24.11 ([#1029](https://github.com/module-federation/universe/issues/1029)) ([f9e64c0](https://github.com/module-federation/universe/commit/f9e64c04aa1e5802fdc0cdc8f07f2ee728c3ff1c)) +- **deps:** update dependency antd to v4.24.12 ([#1074](https://github.com/module-federation/universe/issues/1074)) ([46c25e0](https://github.com/module-federation/universe/commit/46c25e0a873ada88d2888a4e995bfa7133c01953)) +- **deps:** update dependency antd to v4.24.14 ([#1309](https://github.com/module-federation/universe/issues/1309)) ([d0a2314](https://github.com/module-federation/universe/commit/d0a231470e37dbad85a11df1f12695657ba3b984)) +- **deps:** update dependency antd to v4.24.7 ([#426](https://github.com/module-federation/universe/issues/426)) ([fbd3faa](https://github.com/module-federation/universe/commit/fbd3faa961032d22e86d12e86ce3f751d8f962e6)) +- **deps:** update dependency antd to v4.24.8 ([#586](https://github.com/module-federation/universe/issues/586)) ([5099896](https://github.com/module-federation/universe/commit/509989632bbdccd4b0945a04b43fa9dfb73bb476)) +- **deps:** update dependency antd to v4.24.9 ([#765](https://github.com/module-federation/universe/issues/765)) ([eabe2ec](https://github.com/module-federation/universe/commit/eabe2ec55c61123c26b0c94503973621a1efaa7b)) +- **deps:** update dependency antd to v4.24.9 ([#779](https://github.com/module-federation/universe/issues/779)) ([7b6de1b](https://github.com/module-federation/universe/commit/7b6de1b4e17e3ad97e6910e870e68fcd505e25d3)) +- **deps:** update dependency axios to v1 ([#534](https://github.com/module-federation/universe/issues/534)) ([ae5b885](https://github.com/module-federation/universe/commit/ae5b8858825546376551a775be3a31748e9adeef)) +- **deps:** update dependency axios to v1.3.5 ([#736](https://github.com/module-federation/universe/issues/736)) ([ad9a463](https://github.com/module-federation/universe/commit/ad9a463ea26af133fc145404e3351a5c04d5077f)) +- **deps:** update dependency axios to v1.3.6 ([#762](https://github.com/module-federation/universe/issues/762)) ([b72d2c7](https://github.com/module-federation/universe/commit/b72d2c7b536b6c08ef663e1a13db7c996b84753e)) +- **deps:** update dependency axios to v1.4.0 ([#821](https://github.com/module-federation/universe/issues/821)) ([c5e1546](https://github.com/module-federation/universe/commit/c5e154697e83ee457a17dafaaea67b6f7239ac92)) +- **deps:** update dependency axios to v1.5.0 ([#1275](https://github.com/module-federation/universe/issues/1275)) ([f163df1](https://github.com/module-federation/universe/commit/f163df1073740bf4218bb35ba57cea5dc409fe43)) +- **deps:** update dependency axios to v1.5.1 ([ae9a06a](https://github.com/module-federation/universe/commit/ae9a06a0cc35fad27a0b493a25370b92617c39fb)) +- **deps:** update dependency core-js to v3.29.1 ([#643](https://github.com/module-federation/universe/issues/643)) ([cf4dada](https://github.com/module-federation/universe/commit/cf4dada8c62074e52f972ae3aceace7fde360b5a)) +- **deps:** update dependency core-js to v3.30.1 ([#754](https://github.com/module-federation/universe/issues/754)) ([252549a](https://github.com/module-federation/universe/commit/252549af57b0288aba43eecb120effa502748375)) +- **deps:** update dependency core-js to v3.31.0 ([#1048](https://github.com/module-federation/universe/issues/1048)) ([96a99f2](https://github.com/module-federation/universe/commit/96a99f2f531b165f14aa36c73eef0691abe3f12c)) +- **deps:** update dependency core-js to v3.32.2 ([18d2746](https://github.com/module-federation/universe/commit/18d2746763f38fe295a14df3f1bcd4218fade5b8)) +- **deps:** update dependency core-js to v3.33.0 ([30894ca](https://github.com/module-federation/universe/commit/30894cafbe5dea4350dc7c633548038d7ec5f8a8)) +- **deps:** update dependency fast-glob to v3.3.0 ([#1078](https://github.com/module-federation/universe/issues/1078)) ([14bb0b5](https://github.com/module-federation/universe/commit/14bb0b5e7ca6a72190fa9d9df817b57586221b66)) +- **deps:** update dependency fast-glob to v3.3.1 ([#1197](https://github.com/module-federation/universe/issues/1197)) ([5743543](https://github.com/module-federation/universe/commit/57435430bd0912e3bf370ce08b46f610b12d00e3)) +- **deps:** update dependency js-cookie to v3.0.4 ([#773](https://github.com/module-federation/universe/issues/773)) ([f26af6d](https://github.com/module-federation/universe/commit/f26af6db494726a2728b9dd1d0b1e677177c1bf0)) +- **deps:** update dependency js-cookie to v3.0.5 ([#1005](https://github.com/module-federation/universe/issues/1005)) ([345da70](https://github.com/module-federation/universe/commit/345da70b4ec46d955d64e8e7efc13daa24b73f0a)) +- **deps:** update dependency react-router-dom to v6.10.0 ([#755](https://github.com/module-federation/universe/issues/755)) ([bd22cbe](https://github.com/module-federation/universe/commit/bd22cbee9be6dd3b301fbcb2b464b0c697d65689)) +- **deps:** update dependency react-router-dom to v6.11.0 ([#830](https://github.com/module-federation/universe/issues/830)) ([d9366bf](https://github.com/module-federation/universe/commit/d9366bf58f255918c97784960f99a828c3e665e0)) +- **deps:** update dependency react-router-dom to v6.11.1 ([#846](https://github.com/module-federation/universe/issues/846)) ([299cb0d](https://github.com/module-federation/universe/commit/299cb0d0351f1a9cb7c03279eb6a62deb4a3f2d6)) +- **deps:** update dependency react-router-dom to v6.11.2 ([#889](https://github.com/module-federation/universe/issues/889)) ([a191608](https://github.com/module-federation/universe/commit/a19160805ce7da8cad4642f6f8e08762acb74947)) +- **deps:** update dependency react-router-dom to v6.14.0 ([#1049](https://github.com/module-federation/universe/issues/1049)) ([ada4160](https://github.com/module-federation/universe/commit/ada416019bbbf589a5a39094b5f608db39a456b2)) +- **deps:** update dependency react-router-dom to v6.14.1 ([#1081](https://github.com/module-federation/universe/issues/1081)) ([8515c31](https://github.com/module-federation/universe/commit/8515c314ae2d6159c25fc0fcdc992b24c1fa1a93)) +- **deps:** update dependency react-router-dom to v6.15.0 ([#1276](https://github.com/module-federation/universe/issues/1276)) ([850e2fa](https://github.com/module-federation/universe/commit/850e2fac60f49b456aef3b5df9827fc3ac5a6006)) +- **deps:** update dependency react-router-dom to v6.16.0 ([0618339](https://github.com/module-federation/universe/commit/061833912f7e5748011cd60ed679a68c1b659f77)) +- **deps:** update dependency react-router-dom to v6.8.0 ([#428](https://github.com/module-federation/universe/issues/428)) ([274e713](https://github.com/module-federation/universe/commit/274e713104de49485380e2af700afdd63ae50da5)) +- **deps:** update dependency react-router-dom to v6.9.0 ([#663](https://github.com/module-federation/universe/issues/663)) ([1a934f5](https://github.com/module-federation/universe/commit/1a934f55afc40e0efa686dbb2082d426d07b9d32)) +- **deps:** update dependency tsup to v7 ([#1042](https://github.com/module-federation/universe/issues/1042)) ([f319c8a](https://github.com/module-federation/universe/commit/f319c8a8d876e547eeadd59e5bde30dcc367edaf)) +- **deps:** update dependency typedoc to ^0.25.0 ([#1277](https://github.com/module-federation/universe/issues/1277)) ([8d6a72e](https://github.com/module-federation/universe/commit/8d6a72e18a57b69b2f63802621e8b4b479554fed)) +- **deps:** update dependency typedoc to v0.25.1 ([#1304](https://github.com/module-federation/universe/issues/1304)) ([abf84fe](https://github.com/module-federation/universe/commit/abf84fefd5c20b5de7c9a74d1c49235f44d36dc6)) +- **deps:** update dependency typedoc to v0.25.2 ([46c6524](https://github.com/module-federation/universe/commit/46c65247e187cee9e15625402c1570ac351bb1fe)) +- **deps:** update dependency undici to v5.24.0 ([573e644](https://github.com/module-federation/universe/commit/573e644333da6d24cb4286ce08221a1aa82415e4)) +- **deps:** update dependency undici to v5.25.2 ([da3e539](https://github.com/module-federation/universe/commit/da3e539a41ed23ccb5086b1dd428fbee0f8d652c)) +- **deps:** update dependency undici to v5.25.4 ([1d4f91e](https://github.com/module-federation/universe/commit/1d4f91ec93da4326c8a42eef28f150d5d09738bb)) +- **deps:** update dependency undici to v5.26.2 [security] ([410a8b8](https://github.com/module-federation/universe/commit/410a8b8bd1558dfb5119ae10941d2b3816a0d0e0)) +- **deps:** update dependency unplugin to v1.5.0 ([936b3f8](https://github.com/module-federation/universe/commit/936b3f8d8061fd9d481d1788fb35b88588928d14)) +- **federatedtypesplugin:** modify remote url used to import remote types ([#496](https://github.com/module-federation/universe/issues/496)) ([e91a68a](https://github.com/module-federation/universe/commit/e91a68a96bb2c374f3a0e84eba73baeeb2913698)), closes [#495](https://github.com/module-federation/universe/issues/495) +- **federation-boundary:** make custom boundary optional ([#570](https://github.com/module-federation/universe/issues/570)) ([e43a387](https://github.com/module-federation/universe/commit/e43a387f90587d62a78c40584ed9104328202f8e)) +- Fix call undefined delegate ([#1149](https://github.com/module-federation/universe/issues/1149)) ([87a5896](https://github.com/module-federation/universe/commit/87a5896221a726578c3433071755fba3465824f4)), closes [#1151](https://github.com/module-federation/universe/issues/1151) +- flush CSS chunks, cache bust remote entry on render ([#269](https://github.com/module-federation/universe/issues/269)) ([85a216a](https://github.com/module-federation/universe/commit/85a216a8fd34ae849630ff5b42bacb26c855a9ce)) +- Improve logic ([#387](https://github.com/module-federation/universe/issues/387)) ([0eb7f1b](https://github.com/module-federation/universe/commit/0eb7f1bb77ef0a72ad26adeea1b508fbae60656f)) +- native federation in readme ([710e685](https://github.com/module-federation/universe/commit/710e68575cc8dfbef684c5c72637b539f7b29773)) +- override semantic-release-plugin-decorators ([18675de](https://github.com/module-federation/universe/commit/18675defef65570d2b3bb6a9caa3fd039badee29)) +- **package.json:** fix package export fields for utils ([#285](https://github.com/module-federation/universe/issues/285)) ([99d6b77](https://github.com/module-federation/universe/commit/99d6b779696b5dbebea9cf3c870a5caa5d9d7c6f)) +- remove unused dependencies nx added to typescript package ([#690](https://github.com/module-federation/universe/issues/690)) ([c87e7d7](https://github.com/module-federation/universe/commit/c87e7d74226f060bbd2aff7e65df691e69f6f82a)) +- resolve NX build version issues ([#578](https://github.com/module-federation/universe/issues/578)) ([84d3dde](https://github.com/module-federation/universe/commit/84d3dde0d3eff37e14c759456f7a56690c776f27)) +- safely build url to download type files ([#694](https://github.com/module-federation/universe/issues/694)) ([ee5429d](https://github.com/module-federation/universe/commit/ee5429dea3469ff1bf020f84d88e96caf1075d07)) +- set peer dependencies ([#341](https://github.com/module-federation/universe/issues/341)) ([fec9608](https://github.com/module-federation/universe/commit/fec960813a4e3859a5fb24863bb55e463a2fdfa3)) +- support dynamic import of esm modules ([#296](https://github.com/module-federation/universe/issues/296)) ([cf28356](https://github.com/module-federation/universe/commit/cf28356728354e1f63c0d588035dd115398f8641)) +- switch to @goestav/nx-semantic-release ([63a3350](https://github.com/module-federation/universe/commit/63a3350a6a1a12235e3c9f1e7c724d54f0476356)) +- **typescript:** use node-fetch to download TS types ([#565](https://github.com/module-federation/universe/issues/565)) ([f668b1f](https://github.com/module-federation/universe/commit/f668b1fa11f05ff5d15e6581c27b5da9ad454ed2)) +- Utilities - Remove module side effect ([#488](https://github.com/module-federation/universe/issues/488)) ([3554de7](https://github.com/module-federation/universe/commit/3554de7912eaf7b379a6a863677c4b01da0ccf2c)), closes [#487](https://github.com/module-federation/universe/issues/487) [#500](https://github.com/module-federation/universe/issues/500) [#496](https://github.com/module-federation/universe/issues/496) [#495](https://github.com/module-federation/universe/issues/495) [#492](https://github.com/module-federation/universe/issues/492) [#455](https://github.com/module-federation/universe/issues/455) [#491](https://github.com/module-federation/universe/issues/491) [#496](https://github.com/module-federation/universe/issues/496) [#495](https://github.com/module-federation/universe/issues/495) ### Features -* Automatic Async boundary loader ([#330](https://github.com/module-federation/universe/issues/330)) ([7e3c08c](https://github.com/module-federation/universe/commit/7e3c08cf7835c0407bdce7ed6865b864153074a4)) -* add automic page-map generation ([#101](https://github.com/module-federation/universe/issues/101)) ([87b61a2](https://github.com/module-federation/universe/commit/87b61a281d4b8f9eeb65251bc1d8675e2e2b4366)), closes [#102](https://github.com/module-federation/universe/issues/102) -* add storybook addon that supports Module Federation remote containers ([#598](https://github.com/module-federation/universe/issues/598)) ([7547b02](https://github.com/module-federation/universe/commit/7547b02937fdef2831060d6a7bfd337d2cc3355c)) -* Allow Container Utils to work Server Side ([#723](https://github.com/module-federation/universe/issues/723)) ([232ba24](https://github.com/module-federation/universe/commit/232ba24072f19bd32d1f745d4edf1518e548df50)) -* change module sharing strategy ([#469](https://github.com/module-federation/universe/issues/469)) ([5fecf86](https://github.com/module-federation/universe/commit/5fecf867f34b20e2c7cea3909a1f306d46d92bf3)) -* core package for module federation ([#1093](https://github.com/module-federation/universe/issues/1093)) ([d460400](https://github.com/module-federation/universe/commit/d46040053e9b627321b5fe8e05556c5bb727c238)), closes [#851](https://github.com/module-federation/universe/issues/851) [#864](https://github.com/module-federation/universe/issues/864) [#835](https://github.com/module-federation/universe/issues/835) [#851](https://github.com/module-federation/universe/issues/851) [#864](https://github.com/module-federation/universe/issues/864) [#871](https://github.com/module-federation/universe/issues/871) [#851](https://github.com/module-federation/universe/issues/851) [#864](https://github.com/module-federation/universe/issues/864) [#872](https://github.com/module-federation/universe/issues/872) [#875](https://github.com/module-federation/universe/issues/875) [#884](https://github.com/module-federation/universe/issues/884) [#887](https://github.com/module-federation/universe/issues/887) [#893](https://github.com/module-federation/universe/issues/893) [#885](https://github.com/module-federation/universe/issues/885) [#899](https://github.com/module-federation/universe/issues/899) [#904](https://github.com/module-federation/universe/issues/904) [#932](https://github.com/module-federation/universe/issues/932) [#936](https://github.com/module-federation/universe/issues/936) [#959](https://github.com/module-federation/universe/issues/959) [#960](https://github.com/module-federation/universe/issues/960) [#969](https://github.com/module-federation/universe/issues/969) [#971](https://github.com/module-federation/universe/issues/971) [#1234](https://github.com/module-federation/universe/issues/1234) [#1235](https://github.com/module-federation/universe/issues/1235) -* Delegate Modules ([#509](https://github.com/module-federation/universe/issues/509)) ([1a085e7](https://github.com/module-federation/universe/commit/1a085e7e03ca0afd5c64389b4b169f3db3382f6b)) -* **docs:** add i18n support ([#608](https://github.com/module-federation/universe/issues/608)) ([ce3d4b6](https://github.com/module-federation/universe/commit/ce3d4b607b75746d8db7d096b8db932922dcb11a)) -* **docs:** initial docs ui ([#869](https://github.com/module-federation/universe/issues/869)) ([7b1252e](https://github.com/module-federation/universe/commit/7b1252eeef1627e0aa59df70ed9c918b8328ed20)) -* Dynamic Filesystem ([#1274](https://github.com/module-federation/universe/issues/1274)) ([2bec98a](https://github.com/module-federation/universe/commit/2bec98a2472b44898a7f14ec6868a2368cfb6d82)) -* federated types for Typescript based projects ([#245](https://github.com/module-federation/universe/issues/245)) ([4a5e282](https://github.com/module-federation/universe/commit/4a5e2824400cc843fa0c0504936a68c6c9f33946)), closes [#244](https://github.com/module-federation/universe/issues/244) -* fork module federation ([0ad7430](https://github.com/module-federation/universe/commit/0ad7430f6170458a47144be392133b7b2fa1ade0)) -* improved async init ([ae3a450](https://github.com/module-federation/universe/commit/ae3a4503ff9de86492b13029d6334b281ddd9493)) -* Medusa Support in NextFederationPlugin ([#609](https://github.com/module-federation/universe/issues/609)) ([0bbba38](https://github.com/module-federation/universe/commit/0bbba384c45b7d149b7a6be2dfbe9851b541b528)), closes [#606](https://github.com/module-federation/universe/issues/606) -* Move Repo to NX ([#154](https://github.com/module-federation/universe/issues/154)) ([d2a4dfa](https://github.com/module-federation/universe/commit/d2a4dfac7fcdaa2b6a21e3d2973808d01649da61)), closes [#199](https://github.com/module-federation/universe/issues/199) [#205](https://github.com/module-federation/universe/issues/205) [#144](https://github.com/module-federation/universe/issues/144) [#212](https://github.com/module-federation/universe/issues/212) -* native self forming node federation ([#1291](https://github.com/module-federation/universe/issues/1291)) ([1dd5ed1](https://github.com/module-federation/universe/commit/1dd5ed17c981e036336925e807203e94b58c36d6)) -* native-federation-typescript plugin ([#692](https://github.com/module-federation/universe/issues/692)) ([b41c5aa](https://github.com/module-federation/universe/commit/b41c5aacfeda0fada5b426086658235edfd86cdd)) -* new actions, remove gpt integration ([370229e](https://github.com/module-federation/universe/commit/370229e02cc352fcfaeaa0f3cf1f9f2d4966d1bb)) -* Next Federation 7 ([#726](https://github.com/module-federation/universe/issues/726)) ([d50ca1e](https://github.com/module-federation/universe/commit/d50ca1e4636c4e0a402190f6e9c3f69ed9ec8eac)), closes [#851](https://github.com/module-federation/universe/issues/851) [#864](https://github.com/module-federation/universe/issues/864) [#835](https://github.com/module-federation/universe/issues/835) [#851](https://github.com/module-federation/universe/issues/851) [#864](https://github.com/module-federation/universe/issues/864) [#871](https://github.com/module-federation/universe/issues/871) [#851](https://github.com/module-federation/universe/issues/851) [#864](https://github.com/module-federation/universe/issues/864) [#872](https://github.com/module-federation/universe/issues/872) [#875](https://github.com/module-federation/universe/issues/875) [#884](https://github.com/module-federation/universe/issues/884) [#887](https://github.com/module-federation/universe/issues/887) [#893](https://github.com/module-federation/universe/issues/893) [#885](https://github.com/module-federation/universe/issues/885) [#899](https://github.com/module-federation/universe/issues/899) [#904](https://github.com/module-federation/universe/issues/904) [#932](https://github.com/module-federation/universe/issues/932) [#936](https://github.com/module-federation/universe/issues/936) [#959](https://github.com/module-federation/universe/issues/959) [#960](https://github.com/module-federation/universe/issues/960) [#969](https://github.com/module-federation/universe/issues/969) [#971](https://github.com/module-federation/universe/issues/971) [#974](https://github.com/module-federation/universe/issues/974) [#984](https://github.com/module-federation/universe/issues/984) [#986](https://github.com/module-federation/universe/issues/986) [#1015](https://github.com/module-federation/universe/issues/1015) [#1086](https://github.com/module-federation/universe/issues/1086) [#1084](https://github.com/module-federation/universe/issues/1084) -* **node:** add flag to control logging ([eebab83](https://github.com/module-federation/universe/commit/eebab83762a08d82393f04ed03c0af026356653a)) -* **node:** node federation demo/testing apps added ([27d545d](https://github.com/module-federation/universe/commit/27d545d99095da7134c392dbcd9fb135a170f6ef)) -* Remove MF plugin from Typescript plugin ([#607](https://github.com/module-federation/universe/issues/607)) ([94e9149](https://github.com/module-federation/universe/commit/94e9149c4be12cc3e2627da7d7a9e11289cab894)), closes [#608](https://github.com/module-federation/universe/issues/608) [#608](https://github.com/module-federation/universe/issues/608) -* setup docs ([#549](https://github.com/module-federation/universe/issues/549)) ([b139d92](https://github.com/module-federation/universe/commit/b139d92032226102bb594695865979921d941944)) -* test command ([3ade629](https://github.com/module-federation/universe/commit/3ade629488f4ea1549314b82b41caef9a046da9f)) -* **typedoc-parsetr:** merged main ([cf6e65a](https://github.com/module-federation/universe/commit/cf6e65a4aa895d7c2dba8fdbd8ec22ec7bd8f514)) -* **typedoc-parsetr:** merged main ([2ff0d5a](https://github.com/module-federation/universe/commit/2ff0d5a075df3f241742cc7e516cd0378e8e1b3e)) -* **typedoc-parsetr:** python script implementation ([0a533cb](https://github.com/module-federation/universe/commit/0a533cb60e0c3ca269ab45df740c1367be175e80)) -* **typescript:** excessive recompilation prevention ([#306](https://github.com/module-federation/universe/issues/306)) ([6e1967f](https://github.com/module-federation/universe/commit/6e1967f019afb25dfbcfe83627b08ae8b1fe97b2)) -* **typescript:** support vue typescript compiler ([#542](https://github.com/module-federation/universe/issues/542)) ([cde5952](https://github.com/module-federation/universe/commit/cde5952c42ec19f87c5bc4dddb8d8be6f97c1c55)), closes [#502](https://github.com/module-federation/universe/issues/502) -* update the `next` peer dep in nextjs-mf ([#221](https://github.com/module-federation/universe/issues/221)) ([d9b1677](https://github.com/module-federation/universe/commit/d9b16776b1c4ed61e6c0e0414ed452d7312c1806)) -* **website:** initial version of module federation website ([#751](https://github.com/module-federation/universe/issues/751)) ([9b4ec04](https://github.com/module-federation/universe/commit/9b4ec048652f0d2237e9401912ead7c5bbe060c4)) - +- Automatic Async boundary loader ([#330](https://github.com/module-federation/universe/issues/330)) ([7e3c08c](https://github.com/module-federation/universe/commit/7e3c08cf7835c0407bdce7ed6865b864153074a4)) +- add automic page-map generation ([#101](https://github.com/module-federation/universe/issues/101)) ([87b61a2](https://github.com/module-federation/universe/commit/87b61a281d4b8f9eeb65251bc1d8675e2e2b4366)), closes [#102](https://github.com/module-federation/universe/issues/102) +- add storybook addon that supports Module Federation remote containers ([#598](https://github.com/module-federation/universe/issues/598)) ([7547b02](https://github.com/module-federation/universe/commit/7547b02937fdef2831060d6a7bfd337d2cc3355c)) +- Allow Container Utils to work Server Side ([#723](https://github.com/module-federation/universe/issues/723)) ([232ba24](https://github.com/module-federation/universe/commit/232ba24072f19bd32d1f745d4edf1518e548df50)) +- change module sharing strategy ([#469](https://github.com/module-federation/universe/issues/469)) ([5fecf86](https://github.com/module-federation/universe/commit/5fecf867f34b20e2c7cea3909a1f306d46d92bf3)) +- core package for module federation ([#1093](https://github.com/module-federation/universe/issues/1093)) ([d460400](https://github.com/module-federation/universe/commit/d46040053e9b627321b5fe8e05556c5bb727c238)), closes [#851](https://github.com/module-federation/universe/issues/851) [#864](https://github.com/module-federation/universe/issues/864) [#835](https://github.com/module-federation/universe/issues/835) [#851](https://github.com/module-federation/universe/issues/851) [#864](https://github.com/module-federation/universe/issues/864) [#871](https://github.com/module-federation/universe/issues/871) [#851](https://github.com/module-federation/universe/issues/851) [#864](https://github.com/module-federation/universe/issues/864) [#872](https://github.com/module-federation/universe/issues/872) [#875](https://github.com/module-federation/universe/issues/875) [#884](https://github.com/module-federation/universe/issues/884) [#887](https://github.com/module-federation/universe/issues/887) [#893](https://github.com/module-federation/universe/issues/893) [#885](https://github.com/module-federation/universe/issues/885) [#899](https://github.com/module-federation/universe/issues/899) [#904](https://github.com/module-federation/universe/issues/904) [#932](https://github.com/module-federation/universe/issues/932) [#936](https://github.com/module-federation/universe/issues/936) [#959](https://github.com/module-federation/universe/issues/959) [#960](https://github.com/module-federation/universe/issues/960) [#969](https://github.com/module-federation/universe/issues/969) [#971](https://github.com/module-federation/universe/issues/971) [#1234](https://github.com/module-federation/universe/issues/1234) [#1235](https://github.com/module-federation/universe/issues/1235) +- Delegate Modules ([#509](https://github.com/module-federation/universe/issues/509)) ([1a085e7](https://github.com/module-federation/universe/commit/1a085e7e03ca0afd5c64389b4b169f3db3382f6b)) +- **docs:** add i18n support ([#608](https://github.com/module-federation/universe/issues/608)) ([ce3d4b6](https://github.com/module-federation/universe/commit/ce3d4b607b75746d8db7d096b8db932922dcb11a)) +- **docs:** initial docs ui ([#869](https://github.com/module-federation/universe/issues/869)) ([7b1252e](https://github.com/module-federation/universe/commit/7b1252eeef1627e0aa59df70ed9c918b8328ed20)) +- Dynamic Filesystem ([#1274](https://github.com/module-federation/universe/issues/1274)) ([2bec98a](https://github.com/module-federation/universe/commit/2bec98a2472b44898a7f14ec6868a2368cfb6d82)) +- federated types for Typescript based projects ([#245](https://github.com/module-federation/universe/issues/245)) ([4a5e282](https://github.com/module-federation/universe/commit/4a5e2824400cc843fa0c0504936a68c6c9f33946)), closes [#244](https://github.com/module-federation/universe/issues/244) +- fork module federation ([0ad7430](https://github.com/module-federation/universe/commit/0ad7430f6170458a47144be392133b7b2fa1ade0)) +- improved async init ([ae3a450](https://github.com/module-federation/universe/commit/ae3a4503ff9de86492b13029d6334b281ddd9493)) +- Medusa Support in NextFederationPlugin ([#609](https://github.com/module-federation/universe/issues/609)) ([0bbba38](https://github.com/module-federation/universe/commit/0bbba384c45b7d149b7a6be2dfbe9851b541b528)), closes [#606](https://github.com/module-federation/universe/issues/606) +- Move Repo to NX ([#154](https://github.com/module-federation/universe/issues/154)) ([d2a4dfa](https://github.com/module-federation/universe/commit/d2a4dfac7fcdaa2b6a21e3d2973808d01649da61)), closes [#199](https://github.com/module-federation/universe/issues/199) [#205](https://github.com/module-federation/universe/issues/205) [#144](https://github.com/module-federation/universe/issues/144) [#212](https://github.com/module-federation/universe/issues/212) +- native self forming node federation ([#1291](https://github.com/module-federation/universe/issues/1291)) ([1dd5ed1](https://github.com/module-federation/universe/commit/1dd5ed17c981e036336925e807203e94b58c36d6)) +- native-federation-typescript plugin ([#692](https://github.com/module-federation/universe/issues/692)) ([b41c5aa](https://github.com/module-federation/universe/commit/b41c5aacfeda0fada5b426086658235edfd86cdd)) +- new actions, remove gpt integration ([370229e](https://github.com/module-federation/universe/commit/370229e02cc352fcfaeaa0f3cf1f9f2d4966d1bb)) +- Next Federation 7 ([#726](https://github.com/module-federation/universe/issues/726)) ([d50ca1e](https://github.com/module-federation/universe/commit/d50ca1e4636c4e0a402190f6e9c3f69ed9ec8eac)), closes [#851](https://github.com/module-federation/universe/issues/851) [#864](https://github.com/module-federation/universe/issues/864) [#835](https://github.com/module-federation/universe/issues/835) [#851](https://github.com/module-federation/universe/issues/851) [#864](https://github.com/module-federation/universe/issues/864) [#871](https://github.com/module-federation/universe/issues/871) [#851](https://github.com/module-federation/universe/issues/851) [#864](https://github.com/module-federation/universe/issues/864) [#872](https://github.com/module-federation/universe/issues/872) [#875](https://github.com/module-federation/universe/issues/875) [#884](https://github.com/module-federation/universe/issues/884) [#887](https://github.com/module-federation/universe/issues/887) [#893](https://github.com/module-federation/universe/issues/893) [#885](https://github.com/module-federation/universe/issues/885) [#899](https://github.com/module-federation/universe/issues/899) [#904](https://github.com/module-federation/universe/issues/904) [#932](https://github.com/module-federation/universe/issues/932) [#936](https://github.com/module-federation/universe/issues/936) [#959](https://github.com/module-federation/universe/issues/959) [#960](https://github.com/module-federation/universe/issues/960) [#969](https://github.com/module-federation/universe/issues/969) [#971](https://github.com/module-federation/universe/issues/971) [#974](https://github.com/module-federation/universe/issues/974) [#984](https://github.com/module-federation/universe/issues/984) [#986](https://github.com/module-federation/universe/issues/986) [#1015](https://github.com/module-federation/universe/issues/1015) [#1086](https://github.com/module-federation/universe/issues/1086) [#1084](https://github.com/module-federation/universe/issues/1084) +- **node:** add flag to control logging ([eebab83](https://github.com/module-federation/universe/commit/eebab83762a08d82393f04ed03c0af026356653a)) +- **node:** node federation demo/testing apps added ([27d545d](https://github.com/module-federation/universe/commit/27d545d99095da7134c392dbcd9fb135a170f6ef)) +- Remove MF plugin from Typescript plugin ([#607](https://github.com/module-federation/universe/issues/607)) ([94e9149](https://github.com/module-federation/universe/commit/94e9149c4be12cc3e2627da7d7a9e11289cab894)), closes [#608](https://github.com/module-federation/universe/issues/608) [#608](https://github.com/module-federation/universe/issues/608) +- setup docs ([#549](https://github.com/module-federation/universe/issues/549)) ([b139d92](https://github.com/module-federation/universe/commit/b139d92032226102bb594695865979921d941944)) +- test command ([3ade629](https://github.com/module-federation/universe/commit/3ade629488f4ea1549314b82b41caef9a046da9f)) +- **typedoc-parsetr:** merged main ([cf6e65a](https://github.com/module-federation/universe/commit/cf6e65a4aa895d7c2dba8fdbd8ec22ec7bd8f514)) +- **typedoc-parsetr:** merged main ([2ff0d5a](https://github.com/module-federation/universe/commit/2ff0d5a075df3f241742cc7e516cd0378e8e1b3e)) +- **typedoc-parsetr:** python script implementation ([0a533cb](https://github.com/module-federation/universe/commit/0a533cb60e0c3ca269ab45df740c1367be175e80)) +- **typescript:** excessive recompilation prevention ([#306](https://github.com/module-federation/universe/issues/306)) ([6e1967f](https://github.com/module-federation/universe/commit/6e1967f019afb25dfbcfe83627b08ae8b1fe97b2)) +- **typescript:** support vue typescript compiler ([#542](https://github.com/module-federation/universe/issues/542)) ([cde5952](https://github.com/module-federation/universe/commit/cde5952c42ec19f87c5bc4dddb8d8be6f97c1c55)), closes [#502](https://github.com/module-federation/universe/issues/502) +- update the `next` peer dep in nextjs-mf ([#221](https://github.com/module-federation/universe/issues/221)) ([d9b1677](https://github.com/module-federation/universe/commit/d9b16776b1c4ed61e6c0e0414ed452d7312c1806)) +- **website:** initial version of module federation website ([#751](https://github.com/module-federation/universe/issues/751)) ([9b4ec04](https://github.com/module-federation/universe/commit/9b4ec048652f0d2237e9401912ead7c5bbe060c4)) ### Reverts -* Revert "chore: upgrade nx" (#1064) ([3eadaf6](https://github.com/module-federation/universe/commit/3eadaf6f2d8ecc64b45c8e10dbc93f18293f45d5)), closes [#1064](https://github.com/module-federation/universe/issues/1064) - +- Revert "chore: upgrade nx" (#1064) ([3eadaf6](https://github.com/module-federation/universe/commit/3eadaf6f2d8ecc64b45c8e10dbc93f18293f45d5)), closes [#1064](https://github.com/module-federation/universe/issues/1064) ### BREAKING CHANGES -* automaticAsyncBoundary option has been removed +- automaticAsyncBoundary option has been removed -* fix: exclude specific pages from page map automatically +- fix: exclude specific pages from page map automatically -* refactor: conslidate codebase +- refactor: conslidate codebase -* fix: improve hot reload share recovery +- fix: improve hot reload share recovery -* refactor: remove server jsonp template +- refactor: remove server jsonp template -* chore: remove dead code from runtime modules +- chore: remove dead code from runtime modules -* fix: clean up jsonp getCustomJsonpCode +- fix: clean up jsonp getCustomJsonpCode getting chunk loading global from compiler output options -* feat: adding cleanInitArrays runtime helper +- feat: adding cleanInitArrays runtime helper -* chore: remove share scope hoist and module hoisting system +- chore: remove share scope hoist and module hoisting system -* chore: cleanup code +- chore: cleanup code -* chore: remove dead code from add module runtime plugin +- chore: remove dead code from add module runtime plugin likely can remove whole plugin in future -* chore: remove logs from delegate modules +- chore: remove logs from delegate modules -* chore: remove old utils +- chore: remove old utils -* fix: add warning on auto page stitch +- fix: add warning on auto page stitch -* fix: remove commented out code from InvertedContainerPlugin.ts +- fix: remove commented out code from InvertedContainerPlugin.ts -* chore: improve logging to see if its local load or remote load +- chore: improve logging to see if its local load or remote load -* chore: clean up old custom promises factories +- chore: clean up old custom promises factories -* fix: remove container proxy code +- fix: remove container proxy code -* fix: remove container proxy code -* automaticAsyncBoundary option has been removed +- fix: remove container proxy code +- automaticAsyncBoundary option has been removed -* fix: exclude specific pages from page map automatically +- fix: exclude specific pages from page map automatically -* refactor: conslidate codebase +- refactor: conslidate codebase -* fix: improve hot reload share recovery +- fix: improve hot reload share recovery -* refactor: remove server jsonp template +- refactor: remove server jsonp template -* chore: remove dead code from runtime modules +- chore: remove dead code from runtime modules -* fix: clean up jsonp getCustomJsonpCode +- fix: clean up jsonp getCustomJsonpCode getting chunk loading global from compiler output options -* feat: adding cleanInitArrays runtime helper +- feat: adding cleanInitArrays runtime helper -* chore: remove share scope hoist and module hoisting system +- chore: remove share scope hoist and module hoisting system -* chore: cleanup code +- chore: cleanup code -* chore: remove dead code from add module runtime plugin +- chore: remove dead code from add module runtime plugin likely can remove whole plugin in future -* chore: remove logs from delegate modules +- chore: remove logs from delegate modules -* chore: remove old utils +- chore: remove old utils -* fix: add warning on auto page stitch +- fix: add warning on auto page stitch -* fix: remove commented out code from InvertedContainerPlugin.ts +- fix: remove commented out code from InvertedContainerPlugin.ts -* chore: improve logging to see if its local load or remote load +- chore: improve logging to see if its local load or remote load -* chore: clean up old custom promises factories +- chore: clean up old custom promises factories -* fix: remove container proxy code +- fix: remove container proxy code -* fix: remove container proxy code +- fix: remove container proxy code -* chore: fix project.json +- chore: fix project.json -* debugging +- debugging -* fix: resolve backmerge issues with build +- fix: resolve backmerge issues with build -* Merge branch 'kill_child_compilers' into fix_backmerge_issues +- Merge branch 'kill_child_compilers' into fix_backmerge_issues # Conflicts: -# package-lock.json -# package.json -# packages/nextjs-mf/src/plugins/NextFederationPlugin/index.ts -# packages/nextjs-mf/src/plugins/container/InvertedContainerPlugin.ts -# packages/nextjs-mf/src/plugins/container/InvertedContainerRuntimeModule.ts -* feat: enable eager sharing +# package-lock.json + +# package.json + +# packages/nextjs-mf/src/plugins/NextFederationPlugin/index.ts -* refactor: improve module hooks for eager loading and search +# packages/nextjs-mf/src/plugins/container/InvertedContainerPlugin.ts -* refactor: cleanup custom jsonp and make es5 +# packages/nextjs-mf/src/plugins/container/InvertedContainerRuntimeModule.ts -* refactor: cleanup inverted container code +- feat: enable eager sharing -* refactor: cleanup inverted container code -* automaticAsyncBoundary option has been removed +- refactor: improve module hooks for eager loading and search -* fix: exclude specific pages from page map automatically +- refactor: cleanup custom jsonp and make es5 -* refactor: conslidate codebase +- refactor: cleanup inverted container code -* fix: improve hot reload share recovery +- refactor: cleanup inverted container code +- automaticAsyncBoundary option has been removed -* refactor: remove server jsonp template +- fix: exclude specific pages from page map automatically -* chore: remove dead code from runtime modules +- refactor: conslidate codebase -* fix: clean up jsonp getCustomJsonpCode +- fix: improve hot reload share recovery + +- refactor: remove server jsonp template + +- chore: remove dead code from runtime modules + +- fix: clean up jsonp getCustomJsonpCode getting chunk loading global from compiler output options -* feat: adding cleanInitArrays runtime helper +- feat: adding cleanInitArrays runtime helper -* chore: remove share scope hoist and module hoisting system +- chore: remove share scope hoist and module hoisting system -* chore: cleanup code +- chore: cleanup code -* chore: remove dead code from add module runtime plugin +- chore: remove dead code from add module runtime plugin likely can remove whole plugin in future -* chore: remove logs from delegate modules +- chore: remove logs from delegate modules -* chore: remove old utils +- chore: remove old utils -* fix: add warning on auto page stitch +- fix: add warning on auto page stitch -* fix: remove commented out code from InvertedContainerPlugin.ts +- fix: remove commented out code from InvertedContainerPlugin.ts -* chore: improve logging to see if its local load or remote load +- chore: improve logging to see if its local load or remote load -* chore: clean up old custom promises factories +- chore: clean up old custom promises factories -* fix: remove container proxy code +- fix: remove container proxy code -* fix: remove container proxy code +- fix: remove container proxy code -* fix: resolve backmerge issues with build +- fix: resolve backmerge issues with build -* Merge branch 'kill_child_compilers' into fix_backmerge_issues +- Merge branch 'kill_child_compilers' into fix_backmerge_issues # Conflicts: -# package-lock.json -# package.json -# packages/nextjs-mf/src/plugins/NextFederationPlugin/index.ts -# packages/nextjs-mf/src/plugins/container/InvertedContainerPlugin.ts -# packages/nextjs-mf/src/plugins/container/InvertedContainerRuntimeModule.ts -* feat: enable eager sharing +# package-lock.json + +# package.json + +# packages/nextjs-mf/src/plugins/NextFederationPlugin/index.ts + +# packages/nextjs-mf/src/plugins/container/InvertedContainerPlugin.ts -* refactor: improve module hooks for eager loading and search +# packages/nextjs-mf/src/plugins/container/InvertedContainerRuntimeModule.ts -* refactor: cleanup custom jsonp and make es5 +- feat: enable eager sharing -* refactor: cleanup inverted container code +- refactor: improve module hooks for eager loading and search -* refactor: cleanup inverted container code +- refactor: cleanup custom jsonp and make es5 -* ci: fix install step with npm and NX +- refactor: cleanup inverted container code -* test: remove tests for now +- refactor: cleanup inverted container code -* chore(utils): release version 1.7.3-beta.0 +- ci: fix install step with npm and NX -* chore(utils): release version 1.7.3 +- test: remove tests for now -* chore(node): release version 0.14.4-beta.0 +- chore(utils): release version 1.7.3-beta.0 -* chore(node): release version 0.14.4 +- chore(utils): release version 1.7.3 -* chore(nextjs-mf): release version 6.4.1-beta.4 +- chore(node): release version 0.14.4-beta.0 -* fix: remove debugging runtime variable +- chore(node): release version 0.14.4 -* chore(nextjs-mf): release version 6.4.1-beta.5 -* automaticAsyncBoundary option has been removed +- chore(nextjs-mf): release version 6.4.1-beta.4 -* fix: exclude specific pages from page map automatically +- fix: remove debugging runtime variable -* refactor: conslidate codebase +- chore(nextjs-mf): release version 6.4.1-beta.5 +- automaticAsyncBoundary option has been removed -* fix: improve hot reload share recovery +- fix: exclude specific pages from page map automatically -* refactor: remove server jsonp template +- refactor: conslidate codebase -* chore: remove dead code from runtime modules +- fix: improve hot reload share recovery -* fix: clean up jsonp getCustomJsonpCode +- refactor: remove server jsonp template + +- chore: remove dead code from runtime modules + +- fix: clean up jsonp getCustomJsonpCode getting chunk loading global from compiler output options -* feat: adding cleanInitArrays runtime helper +- feat: adding cleanInitArrays runtime helper -* chore: remove share scope hoist and module hoisting system +- chore: remove share scope hoist and module hoisting system -* chore: cleanup code +- chore: cleanup code -* chore: remove dead code from add module runtime plugin +- chore: remove dead code from add module runtime plugin likely can remove whole plugin in future -* chore: remove logs from delegate modules +- chore: remove logs from delegate modules -* chore: remove old utils +- chore: remove old utils -* fix: add warning on auto page stitch +- fix: add warning on auto page stitch -* fix: remove commented out code from InvertedContainerPlugin.ts +- fix: remove commented out code from InvertedContainerPlugin.ts -* chore: improve logging to see if its local load or remote load +- chore: improve logging to see if its local load or remote load -* chore: clean up old custom promises factories +- chore: clean up old custom promises factories -* fix: remove container proxy code +- fix: remove container proxy code -* fix: remove container proxy code -* automaticAsyncBoundary option has been removed +- fix: remove container proxy code +- automaticAsyncBoundary option has been removed -* fix: exclude specific pages from page map automatically +- fix: exclude specific pages from page map automatically -* refactor: conslidate codebase +- refactor: conslidate codebase -* fix: improve hot reload share recovery +- fix: improve hot reload share recovery -* refactor: remove server jsonp template +- refactor: remove server jsonp template -* chore: remove dead code from runtime modules +- chore: remove dead code from runtime modules -* fix: clean up jsonp getCustomJsonpCode +- fix: clean up jsonp getCustomJsonpCode getting chunk loading global from compiler output options -* feat: adding cleanInitArrays runtime helper +- feat: adding cleanInitArrays runtime helper -* chore: remove share scope hoist and module hoisting system +- chore: remove share scope hoist and module hoisting system -* chore: cleanup code +- chore: cleanup code -* chore: remove dead code from add module runtime plugin +- chore: remove dead code from add module runtime plugin likely can remove whole plugin in future -* chore: remove logs from delegate modules +- chore: remove logs from delegate modules -* chore: remove old utils +- chore: remove old utils -* fix: add warning on auto page stitch +- fix: add warning on auto page stitch -* fix: remove commented out code from InvertedContainerPlugin.ts +- fix: remove commented out code from InvertedContainerPlugin.ts -* chore: improve logging to see if its local load or remote load +- chore: improve logging to see if its local load or remote load -* chore: clean up old custom promises factories +- chore: clean up old custom promises factories -* fix: remove container proxy code +- fix: remove container proxy code -* fix: remove container proxy code +- fix: remove container proxy code -* chore: fix project.json +- chore: fix project.json -* debugging +- debugging -* fix: resolve backmerge issues with build +- fix: resolve backmerge issues with build -* Merge branch 'kill_child_compilers' into fix_backmerge_issues +- Merge branch 'kill_child_compilers' into fix_backmerge_issues # Conflicts: -# package-lock.json -# package.json -# packages/nextjs-mf/src/plugins/NextFederationPlugin/index.ts -# packages/nextjs-mf/src/plugins/container/InvertedContainerPlugin.ts -# packages/nextjs-mf/src/plugins/container/InvertedContainerRuntimeModule.ts -* feat: enable eager sharing +# package-lock.json + +# package.json + +# packages/nextjs-mf/src/plugins/NextFederationPlugin/index.ts + +# packages/nextjs-mf/src/plugins/container/InvertedContainerPlugin.ts + +# packages/nextjs-mf/src/plugins/container/InvertedContainerRuntimeModule.ts -* refactor: improve module hooks for eager loading and search +- feat: enable eager sharing -* refactor: cleanup custom jsonp and make es5 +- refactor: improve module hooks for eager loading and search -* refactor: cleanup inverted container code +- refactor: cleanup custom jsonp and make es5 -* refactor: cleanup inverted container code -* automaticAsyncBoundary option has been removed +- refactor: cleanup inverted container code -* fix: exclude specific pages from page map automatically +- refactor: cleanup inverted container code +- automaticAsyncBoundary option has been removed -* refactor: conslidate codebase +- fix: exclude specific pages from page map automatically -* fix: improve hot reload share recovery +- refactor: conslidate codebase -* refactor: remove server jsonp template +- fix: improve hot reload share recovery -* chore: remove dead code from runtime modules +- refactor: remove server jsonp template -* fix: clean up jsonp getCustomJsonpCode +- chore: remove dead code from runtime modules + +- fix: clean up jsonp getCustomJsonpCode getting chunk loading global from compiler output options -* feat: adding cleanInitArrays runtime helper +- feat: adding cleanInitArrays runtime helper -* chore: remove share scope hoist and module hoisting system +- chore: remove share scope hoist and module hoisting system -* chore: cleanup code +- chore: cleanup code -* chore: remove dead code from add module runtime plugin +- chore: remove dead code from add module runtime plugin likely can remove whole plugin in future -* chore: remove logs from delegate modules +- chore: remove logs from delegate modules -* chore: remove old utils +- chore: remove old utils -* fix: add warning on auto page stitch +- fix: add warning on auto page stitch -* fix: remove commented out code from InvertedContainerPlugin.ts +- fix: remove commented out code from InvertedContainerPlugin.ts -* chore: improve logging to see if its local load or remote load +- chore: improve logging to see if its local load or remote load -* chore: clean up old custom promises factories +- chore: clean up old custom promises factories -* fix: remove container proxy code +- fix: remove container proxy code -* fix: remove container proxy code +- fix: remove container proxy code -* fix: resolve backmerge issues with build +- fix: resolve backmerge issues with build -* Merge branch 'kill_child_compilers' into fix_backmerge_issues +- Merge branch 'kill_child_compilers' into fix_backmerge_issues # Conflicts: -# package-lock.json -# package.json -# packages/nextjs-mf/src/plugins/NextFederationPlugin/index.ts -# packages/nextjs-mf/src/plugins/container/InvertedContainerPlugin.ts -# packages/nextjs-mf/src/plugins/container/InvertedContainerRuntimeModule.ts -* feat: enable eager sharing +# package-lock.json + +# package.json + +# packages/nextjs-mf/src/plugins/NextFederationPlugin/index.ts + +# packages/nextjs-mf/src/plugins/container/InvertedContainerPlugin.ts + +# packages/nextjs-mf/src/plugins/container/InvertedContainerRuntimeModule.ts + +- feat: enable eager sharing -* refactor: improve module hooks for eager loading and search +- refactor: improve module hooks for eager loading and search -* refactor: cleanup custom jsonp and make es5 +- refactor: cleanup custom jsonp and make es5 -* refactor: cleanup inverted container code +- refactor: cleanup inverted container code -* refactor: cleanup inverted container code +- refactor: cleanup inverted container code -* ci: fix install step with npm and NX +- ci: fix install step with npm and NX -* test: remove tests for now +- test: remove tests for now -* chore(utils): release version 1.7.3-beta.0 +- chore(utils): release version 1.7.3-beta.0 -* chore(utils): release version 1.7.3 +- chore(utils): release version 1.7.3 -* chore(node): release version 0.14.4-beta.0 +- chore(node): release version 0.14.4-beta.0 -* chore(node): release version 0.14.4 +- chore(node): release version 0.14.4 -* chore(nextjs-mf): release version 6.4.1-beta.4 +- chore(nextjs-mf): release version 6.4.1-beta.4 -* fix: remove debugging runtime variable +- fix: remove debugging runtime variable -* chore(nextjs-mf): release version 6.4.1-beta.5 -* Previously, we used to "rekey" all shared packages used in a host in order to prevent eager consumption issues. However, this caused unforeseen issues when trying to share a singleton package, as the package would end up being bundled multiple times per page. +- chore(nextjs-mf): release version 6.4.1-beta.5 +- Previously, we used to "rekey" all shared packages used in a host in order to prevent eager consumption issues. However, this caused unforeseen issues when trying to share a singleton package, as the package would end up being bundled multiple times per page. As a result, we have had to stop rekeying shared modules in userland and only do so on internal Next packages themselves. @@ -498,10 +514,10 @@ If you need to dangerously share a package using the old method, you can do so b Please note that this method is now considered dangerous and should be used with caution. -* update build release +- update build release -* update build release -* **typescript:** Reimplemented the whole plugin from round-up to enhance performance, prevent excessive recompilation and other issues. +- update build release +- **typescript:** Reimplemented the whole plugin from round-up to enhance performance, prevent excessive recompilation and other issues. Some key changes to the plugin includes: diff --git a/packages/enhanced/CHANGELOG.md b/packages/enhanced/CHANGELOG.md index 6e9b92a6dae..0e8355b75c9 100644 --- a/packages/enhanced/CHANGELOG.md +++ b/packages/enhanced/CHANGELOG.md @@ -1,20 +1,18 @@ # [0.2.0-canary.1](https://github.com/module-federation/universe/compare/enhanced-0.1.0...enhanced-0.2.0-canary.1) (2023-11-06) - ### Bug Fixes -* **deps:** update dependency typedoc to v0.25.2 ([46c6524](https://github.com/module-federation/universe/commit/46c65247e187cee9e15625402c1570ac351bb1fe)) -* **deps:** update dependency undici to v5.26.2 [security] ([410a8b8](https://github.com/module-federation/universe/commit/410a8b8bd1558dfb5119ae10941d2b3816a0d0e0)) -* override semantic-release-plugin-decorators ([18675de](https://github.com/module-federation/universe/commit/18675defef65570d2b3bb6a9caa3fd039badee29)) -* switch to @goestav/nx-semantic-release ([63a3350](https://github.com/module-federation/universe/commit/63a3350a6a1a12235e3c9f1e7c724d54f0476356)) - +- **deps:** update dependency typedoc to v0.25.2 ([46c6524](https://github.com/module-federation/universe/commit/46c65247e187cee9e15625402c1570ac351bb1fe)) +- **deps:** update dependency undici to v5.26.2 [security] ([410a8b8](https://github.com/module-federation/universe/commit/410a8b8bd1558dfb5119ae10941d2b3816a0d0e0)) +- override semantic-release-plugin-decorators ([18675de](https://github.com/module-federation/universe/commit/18675defef65570d2b3bb6a9caa3fd039badee29)) +- switch to @goestav/nx-semantic-release ([63a3350](https://github.com/module-federation/universe/commit/63a3350a6a1a12235e3c9f1e7c724d54f0476356)) ### Features -* **enhanced:** new async boundary plugin design ([a4ac1ac](https://github.com/module-federation/universe/commit/a4ac1acff974f74db6395c31134de14d9c344b6f)) -* **enhanced:** Rewrite Async Boundary based on bytedance version ([fa05dd6](https://github.com/module-federation/universe/commit/fa05dd6bce2dd577b1e3fd84533459a04dbe195a)) -* **enhanced:** Support Async Mode and option ([3c33b8e](https://github.com/module-federation/universe/commit/3c33b8ea3b483de5dcc3e5da9fb40c9826fdb7f7)) -* new actions, remove gpt integration ([370229e](https://github.com/module-federation/universe/commit/370229e02cc352fcfaeaa0f3cf1f9f2d4966d1bb)) +- **enhanced:** new async boundary plugin design ([a4ac1ac](https://github.com/module-federation/universe/commit/a4ac1acff974f74db6395c31134de14d9c344b6f)) +- **enhanced:** Rewrite Async Boundary based on bytedance version ([fa05dd6](https://github.com/module-federation/universe/commit/fa05dd6bce2dd577b1e3fd84533459a04dbe195a)) +- **enhanced:** Support Async Mode and option ([3c33b8e](https://github.com/module-federation/universe/commit/3c33b8ea3b483de5dcc3e5da9fb40c9826fdb7f7)) +- new actions, remove gpt integration ([370229e](https://github.com/module-federation/universe/commit/370229e02cc352fcfaeaa0f3cf1f9f2d4966d1bb)) # Changelog diff --git a/packages/enhanced/src/lib/container/AsyncBoundaryPlugin.ts b/packages/enhanced/src/lib/container/AsyncBoundaryPlugin.ts index b6c796dcfde..bc8ef58862f 100644 --- a/packages/enhanced/src/lib/container/AsyncBoundaryPlugin.ts +++ b/packages/enhanced/src/lib/container/AsyncBoundaryPlugin.ts @@ -20,29 +20,42 @@ class AsyncEntryStartupPlugin { } apply(compiler: Compiler): void { - compiler.hooks.thisCompilation.tap('AsyncEntryStartupPlugin', (compilation: Compilation) => { - this.collectRuntimeChunks(compilation); - this.handleRenderStartup(compiler, compilation); - }); + compiler.hooks.thisCompilation.tap( + 'AsyncEntryStartupPlugin', + (compilation: Compilation) => { + this.collectRuntimeChunks(compilation); + this.handleRenderStartup(compiler, compilation); + }, + ); } private collectRuntimeChunks(compilation: Compilation): void { - compilation.hooks.beforeChunkAssets.tap('CollectRuntimeChunksPlugin', () => { - for (const chunk of compilation.chunks) { - if (chunk.hasRuntime() && chunk.id !== null) { - this._runtimeChunks.set(chunk.id, chunk); - for (const dependentChunk of compilation.chunkGraph.getChunkEntryDependentChunksIterable(chunk)) { - if (dependentChunk.id !== null) { - this._runtimeChunks.set(dependentChunk.id, dependentChunk); + compilation.hooks.beforeChunkAssets.tap( + 'CollectRuntimeChunksPlugin', + () => { + for (const chunk of compilation.chunks) { + if (chunk.hasRuntime() && chunk.id !== null) { + this._runtimeChunks.set(chunk.id, chunk); + for (const dependentChunk of compilation.chunkGraph.getChunkEntryDependentChunksIterable( + chunk, + )) { + if (dependentChunk.id !== null) { + this._runtimeChunks.set(dependentChunk.id, dependentChunk); + } } } } - } - }); + }, + ); } - private handleRenderStartup(compiler: Compiler, compilation: Compilation): void { - compiler.webpack.javascript.JavascriptModulesPlugin.getCompilationHooks(compilation).renderStartup.tap( + private handleRenderStartup( + compiler: Compiler, + compilation: Compilation, + ): void { + compiler.webpack.javascript.JavascriptModulesPlugin.getCompilationHooks( + compilation, + ).renderStartup.tap( 'AsyncEntryStartupPlugin', (source: any, renderContext: Module, upperContext: { chunk: Chunk }) => { // Check if this._runtimeChunks contains any runtime chunks @@ -62,13 +75,19 @@ class AsyncEntryStartupPlugin { } const runtime = new Set(); - if (typeof upperContext.chunk.runtime === 'string' || typeof upperContext.chunk.runtime === 'number') { + if ( + typeof upperContext.chunk.runtime === 'string' || + typeof upperContext.chunk.runtime === 'number' + ) { if (this._runtimeChunks.has(upperContext.chunk.runtime)) { runtime.add(this._runtimeChunks.get(upperContext.chunk.runtime)); } else { runtime.add(upperContext.chunk); } - } else if (upperContext.chunk.runtime && typeof upperContext.chunk.runtime[Symbol.iterator] === 'function') { + } else if ( + upperContext.chunk.runtime && + typeof upperContext.chunk.runtime[Symbol.iterator] === 'function' + ) { for (const runtimeItem of upperContext.chunk.runtime) { if (this._runtimeChunks.has(runtimeItem)) { runtime.add(this._runtimeChunks.get(runtimeItem)); @@ -138,7 +157,7 @@ class AsyncEntryStartupPlugin { // Iterate over the entry modules for (const entryModule of entryModules) { - const entryModuleID = compilation.chunkGraph.getModuleId(entryModule) + const entryModuleID = compilation.chunkGraph.getModuleId(entryModule); if (entryModuleID) { let shouldInclude = false; @@ -161,7 +180,10 @@ class AsyncEntryStartupPlugin { } } } - if(compiler.options?.experiments?.topLevelAwait && compiler.options?.experiments?.outputModule) { + if ( + compiler.options?.experiments?.topLevelAwait && + compiler.options?.experiments?.outputModule + ) { return Template.asString([ 'var promiseTrack = [];', Template.asString(initialEntryModules), diff --git a/packages/native-federation-tests/CHANGELOG.md b/packages/native-federation-tests/CHANGELOG.md index 933cac69710..150ae9d13bc 100644 --- a/packages/native-federation-tests/CHANGELOG.md +++ b/packages/native-federation-tests/CHANGELOG.md @@ -1,432 +1,448 @@ # [1.0.0-canary.1](https://github.com/module-federation/universe/compare/native-federation-tests-0.2.1...native-federation-tests-1.0.0-canary.1) (2023-11-06) - ### Bug Fixes -* **deps:** update dependency antd to v4.24.11 ([#1029](https://github.com/module-federation/universe/issues/1029)) ([f9e64c0](https://github.com/module-federation/universe/commit/f9e64c04aa1e5802fdc0cdc8f07f2ee728c3ff1c)) -* **deps:** update dependency antd to v4.24.12 ([#1074](https://github.com/module-federation/universe/issues/1074)) ([46c25e0](https://github.com/module-federation/universe/commit/46c25e0a873ada88d2888a4e995bfa7133c01953)) -* **deps:** update dependency antd to v4.24.14 ([#1309](https://github.com/module-federation/universe/issues/1309)) ([d0a2314](https://github.com/module-federation/universe/commit/d0a231470e37dbad85a11df1f12695657ba3b984)) -* **deps:** update dependency axios to v1.5.0 ([#1275](https://github.com/module-federation/universe/issues/1275)) ([f163df1](https://github.com/module-federation/universe/commit/f163df1073740bf4218bb35ba57cea5dc409fe43)) -* **deps:** update dependency axios to v1.5.1 ([ae9a06a](https://github.com/module-federation/universe/commit/ae9a06a0cc35fad27a0b493a25370b92617c39fb)) -* **deps:** update dependency core-js to v3.31.0 ([#1048](https://github.com/module-federation/universe/issues/1048)) ([96a99f2](https://github.com/module-federation/universe/commit/96a99f2f531b165f14aa36c73eef0691abe3f12c)) -* **deps:** update dependency core-js to v3.32.2 ([18d2746](https://github.com/module-federation/universe/commit/18d2746763f38fe295a14df3f1bcd4218fade5b8)) -* **deps:** update dependency core-js to v3.33.0 ([30894ca](https://github.com/module-federation/universe/commit/30894cafbe5dea4350dc7c633548038d7ec5f8a8)) -* **deps:** update dependency fast-glob to v3.3.0 ([#1078](https://github.com/module-federation/universe/issues/1078)) ([14bb0b5](https://github.com/module-federation/universe/commit/14bb0b5e7ca6a72190fa9d9df817b57586221b66)) -* **deps:** update dependency fast-glob to v3.3.1 ([#1197](https://github.com/module-federation/universe/issues/1197)) ([5743543](https://github.com/module-federation/universe/commit/57435430bd0912e3bf370ce08b46f610b12d00e3)) -* **deps:** update dependency react-router-dom to v6.14.0 ([#1049](https://github.com/module-federation/universe/issues/1049)) ([ada4160](https://github.com/module-federation/universe/commit/ada416019bbbf589a5a39094b5f608db39a456b2)) -* **deps:** update dependency react-router-dom to v6.14.1 ([#1081](https://github.com/module-federation/universe/issues/1081)) ([8515c31](https://github.com/module-federation/universe/commit/8515c314ae2d6159c25fc0fcdc992b24c1fa1a93)) -* **deps:** update dependency react-router-dom to v6.15.0 ([#1276](https://github.com/module-federation/universe/issues/1276)) ([850e2fa](https://github.com/module-federation/universe/commit/850e2fac60f49b456aef3b5df9827fc3ac5a6006)) -* **deps:** update dependency react-router-dom to v6.16.0 ([0618339](https://github.com/module-federation/universe/commit/061833912f7e5748011cd60ed679a68c1b659f77)) -* **deps:** update dependency tsup to v7 ([#1042](https://github.com/module-federation/universe/issues/1042)) ([f319c8a](https://github.com/module-federation/universe/commit/f319c8a8d876e547eeadd59e5bde30dcc367edaf)) -* **deps:** update dependency typedoc to ^0.25.0 ([#1277](https://github.com/module-federation/universe/issues/1277)) ([8d6a72e](https://github.com/module-federation/universe/commit/8d6a72e18a57b69b2f63802621e8b4b479554fed)) -* **deps:** update dependency typedoc to v0.25.1 ([#1304](https://github.com/module-federation/universe/issues/1304)) ([abf84fe](https://github.com/module-federation/universe/commit/abf84fefd5c20b5de7c9a74d1c49235f44d36dc6)) -* **deps:** update dependency typedoc to v0.25.2 ([46c6524](https://github.com/module-federation/universe/commit/46c65247e187cee9e15625402c1570ac351bb1fe)) -* **deps:** update dependency undici to v5.24.0 ([573e644](https://github.com/module-federation/universe/commit/573e644333da6d24cb4286ce08221a1aa82415e4)) -* **deps:** update dependency undici to v5.25.2 ([da3e539](https://github.com/module-federation/universe/commit/da3e539a41ed23ccb5086b1dd428fbee0f8d652c)) -* **deps:** update dependency undici to v5.25.4 ([1d4f91e](https://github.com/module-federation/universe/commit/1d4f91ec93da4326c8a42eef28f150d5d09738bb)) -* **deps:** update dependency undici to v5.26.2 [security] ([410a8b8](https://github.com/module-federation/universe/commit/410a8b8bd1558dfb5119ae10941d2b3816a0d0e0)) -* **deps:** update dependency unplugin to v1.5.0 ([936b3f8](https://github.com/module-federation/universe/commit/936b3f8d8061fd9d481d1788fb35b88588928d14)) -* Fix call undefined delegate ([#1149](https://github.com/module-federation/universe/issues/1149)) ([87a5896](https://github.com/module-federation/universe/commit/87a5896221a726578c3433071755fba3465824f4)), closes [#1151](https://github.com/module-federation/universe/issues/1151) -* override semantic-release-plugin-decorators ([18675de](https://github.com/module-federation/universe/commit/18675defef65570d2b3bb6a9caa3fd039badee29)) -* switch to @goestav/nx-semantic-release ([63a3350](https://github.com/module-federation/universe/commit/63a3350a6a1a12235e3c9f1e7c724d54f0476356)) - +- **deps:** update dependency antd to v4.24.11 ([#1029](https://github.com/module-federation/universe/issues/1029)) ([f9e64c0](https://github.com/module-federation/universe/commit/f9e64c04aa1e5802fdc0cdc8f07f2ee728c3ff1c)) +- **deps:** update dependency antd to v4.24.12 ([#1074](https://github.com/module-federation/universe/issues/1074)) ([46c25e0](https://github.com/module-federation/universe/commit/46c25e0a873ada88d2888a4e995bfa7133c01953)) +- **deps:** update dependency antd to v4.24.14 ([#1309](https://github.com/module-federation/universe/issues/1309)) ([d0a2314](https://github.com/module-federation/universe/commit/d0a231470e37dbad85a11df1f12695657ba3b984)) +- **deps:** update dependency axios to v1.5.0 ([#1275](https://github.com/module-federation/universe/issues/1275)) ([f163df1](https://github.com/module-federation/universe/commit/f163df1073740bf4218bb35ba57cea5dc409fe43)) +- **deps:** update dependency axios to v1.5.1 ([ae9a06a](https://github.com/module-federation/universe/commit/ae9a06a0cc35fad27a0b493a25370b92617c39fb)) +- **deps:** update dependency core-js to v3.31.0 ([#1048](https://github.com/module-federation/universe/issues/1048)) ([96a99f2](https://github.com/module-federation/universe/commit/96a99f2f531b165f14aa36c73eef0691abe3f12c)) +- **deps:** update dependency core-js to v3.32.2 ([18d2746](https://github.com/module-federation/universe/commit/18d2746763f38fe295a14df3f1bcd4218fade5b8)) +- **deps:** update dependency core-js to v3.33.0 ([30894ca](https://github.com/module-federation/universe/commit/30894cafbe5dea4350dc7c633548038d7ec5f8a8)) +- **deps:** update dependency fast-glob to v3.3.0 ([#1078](https://github.com/module-federation/universe/issues/1078)) ([14bb0b5](https://github.com/module-federation/universe/commit/14bb0b5e7ca6a72190fa9d9df817b57586221b66)) +- **deps:** update dependency fast-glob to v3.3.1 ([#1197](https://github.com/module-federation/universe/issues/1197)) ([5743543](https://github.com/module-federation/universe/commit/57435430bd0912e3bf370ce08b46f610b12d00e3)) +- **deps:** update dependency react-router-dom to v6.14.0 ([#1049](https://github.com/module-federation/universe/issues/1049)) ([ada4160](https://github.com/module-federation/universe/commit/ada416019bbbf589a5a39094b5f608db39a456b2)) +- **deps:** update dependency react-router-dom to v6.14.1 ([#1081](https://github.com/module-federation/universe/issues/1081)) ([8515c31](https://github.com/module-federation/universe/commit/8515c314ae2d6159c25fc0fcdc992b24c1fa1a93)) +- **deps:** update dependency react-router-dom to v6.15.0 ([#1276](https://github.com/module-federation/universe/issues/1276)) ([850e2fa](https://github.com/module-federation/universe/commit/850e2fac60f49b456aef3b5df9827fc3ac5a6006)) +- **deps:** update dependency react-router-dom to v6.16.0 ([0618339](https://github.com/module-federation/universe/commit/061833912f7e5748011cd60ed679a68c1b659f77)) +- **deps:** update dependency tsup to v7 ([#1042](https://github.com/module-federation/universe/issues/1042)) ([f319c8a](https://github.com/module-federation/universe/commit/f319c8a8d876e547eeadd59e5bde30dcc367edaf)) +- **deps:** update dependency typedoc to ^0.25.0 ([#1277](https://github.com/module-federation/universe/issues/1277)) ([8d6a72e](https://github.com/module-federation/universe/commit/8d6a72e18a57b69b2f63802621e8b4b479554fed)) +- **deps:** update dependency typedoc to v0.25.1 ([#1304](https://github.com/module-federation/universe/issues/1304)) ([abf84fe](https://github.com/module-federation/universe/commit/abf84fefd5c20b5de7c9a74d1c49235f44d36dc6)) +- **deps:** update dependency typedoc to v0.25.2 ([46c6524](https://github.com/module-federation/universe/commit/46c65247e187cee9e15625402c1570ac351bb1fe)) +- **deps:** update dependency undici to v5.24.0 ([573e644](https://github.com/module-federation/universe/commit/573e644333da6d24cb4286ce08221a1aa82415e4)) +- **deps:** update dependency undici to v5.25.2 ([da3e539](https://github.com/module-federation/universe/commit/da3e539a41ed23ccb5086b1dd428fbee0f8d652c)) +- **deps:** update dependency undici to v5.25.4 ([1d4f91e](https://github.com/module-federation/universe/commit/1d4f91ec93da4326c8a42eef28f150d5d09738bb)) +- **deps:** update dependency undici to v5.26.2 [security] ([410a8b8](https://github.com/module-federation/universe/commit/410a8b8bd1558dfb5119ae10941d2b3816a0d0e0)) +- **deps:** update dependency unplugin to v1.5.0 ([936b3f8](https://github.com/module-federation/universe/commit/936b3f8d8061fd9d481d1788fb35b88588928d14)) +- Fix call undefined delegate ([#1149](https://github.com/module-federation/universe/issues/1149)) ([87a5896](https://github.com/module-federation/universe/commit/87a5896221a726578c3433071755fba3465824f4)), closes [#1151](https://github.com/module-federation/universe/issues/1151) +- override semantic-release-plugin-decorators ([18675de](https://github.com/module-federation/universe/commit/18675defef65570d2b3bb6a9caa3fd039badee29)) +- switch to @goestav/nx-semantic-release ([63a3350](https://github.com/module-federation/universe/commit/63a3350a6a1a12235e3c9f1e7c724d54f0476356)) ### Features -* core package for module federation ([#1093](https://github.com/module-federation/universe/issues/1093)) ([d460400](https://github.com/module-federation/universe/commit/d46040053e9b627321b5fe8e05556c5bb727c238)), closes [#851](https://github.com/module-federation/universe/issues/851) [#864](https://github.com/module-federation/universe/issues/864) [#835](https://github.com/module-federation/universe/issues/835) [#851](https://github.com/module-federation/universe/issues/851) [#864](https://github.com/module-federation/universe/issues/864) [#871](https://github.com/module-federation/universe/issues/871) [#851](https://github.com/module-federation/universe/issues/851) [#864](https://github.com/module-federation/universe/issues/864) [#872](https://github.com/module-federation/universe/issues/872) [#875](https://github.com/module-federation/universe/issues/875) [#884](https://github.com/module-federation/universe/issues/884) [#887](https://github.com/module-federation/universe/issues/887) [#893](https://github.com/module-federation/universe/issues/893) [#885](https://github.com/module-federation/universe/issues/885) [#899](https://github.com/module-federation/universe/issues/899) [#904](https://github.com/module-federation/universe/issues/904) [#932](https://github.com/module-federation/universe/issues/932) [#936](https://github.com/module-federation/universe/issues/936) [#959](https://github.com/module-federation/universe/issues/959) [#960](https://github.com/module-federation/universe/issues/960) [#969](https://github.com/module-federation/universe/issues/969) [#971](https://github.com/module-federation/universe/issues/971) [#1234](https://github.com/module-federation/universe/issues/1234) [#1235](https://github.com/module-federation/universe/issues/1235) -* Dynamic Filesystem ([#1274](https://github.com/module-federation/universe/issues/1274)) ([2bec98a](https://github.com/module-federation/universe/commit/2bec98a2472b44898a7f14ec6868a2368cfb6d82)) -* fork module federation ([0ad7430](https://github.com/module-federation/universe/commit/0ad7430f6170458a47144be392133b7b2fa1ade0)) -* improved async init ([ae3a450](https://github.com/module-federation/universe/commit/ae3a4503ff9de86492b13029d6334b281ddd9493)) -* native self forming node federation ([#1291](https://github.com/module-federation/universe/issues/1291)) ([1dd5ed1](https://github.com/module-federation/universe/commit/1dd5ed17c981e036336925e807203e94b58c36d6)) -* new actions, remove gpt integration ([370229e](https://github.com/module-federation/universe/commit/370229e02cc352fcfaeaa0f3cf1f9f2d4966d1bb)) -* Next Federation 7 ([#726](https://github.com/module-federation/universe/issues/726)) ([d50ca1e](https://github.com/module-federation/universe/commit/d50ca1e4636c4e0a402190f6e9c3f69ed9ec8eac)), closes [#851](https://github.com/module-federation/universe/issues/851) [#864](https://github.com/module-federation/universe/issues/864) [#835](https://github.com/module-federation/universe/issues/835) [#851](https://github.com/module-federation/universe/issues/851) [#864](https://github.com/module-federation/universe/issues/864) [#871](https://github.com/module-federation/universe/issues/871) [#851](https://github.com/module-federation/universe/issues/851) [#864](https://github.com/module-federation/universe/issues/864) [#872](https://github.com/module-federation/universe/issues/872) [#875](https://github.com/module-federation/universe/issues/875) [#884](https://github.com/module-federation/universe/issues/884) [#887](https://github.com/module-federation/universe/issues/887) [#893](https://github.com/module-federation/universe/issues/893) [#885](https://github.com/module-federation/universe/issues/885) [#899](https://github.com/module-federation/universe/issues/899) [#904](https://github.com/module-federation/universe/issues/904) [#932](https://github.com/module-federation/universe/issues/932) [#936](https://github.com/module-federation/universe/issues/936) [#959](https://github.com/module-federation/universe/issues/959) [#960](https://github.com/module-federation/universe/issues/960) [#969](https://github.com/module-federation/universe/issues/969) [#971](https://github.com/module-federation/universe/issues/971) [#974](https://github.com/module-federation/universe/issues/974) [#984](https://github.com/module-federation/universe/issues/984) [#986](https://github.com/module-federation/universe/issues/986) [#1015](https://github.com/module-federation/universe/issues/1015) [#1086](https://github.com/module-federation/universe/issues/1086) [#1084](https://github.com/module-federation/universe/issues/1084) -* **node:** node federation demo/testing apps added ([27d545d](https://github.com/module-federation/universe/commit/27d545d99095da7134c392dbcd9fb135a170f6ef)) -* **typedoc-parsetr:** merged main ([cf6e65a](https://github.com/module-federation/universe/commit/cf6e65a4aa895d7c2dba8fdbd8ec22ec7bd8f514)) -* **typedoc-parsetr:** merged main ([2ff0d5a](https://github.com/module-federation/universe/commit/2ff0d5a075df3f241742cc7e516cd0378e8e1b3e)) -* **typedoc-parsetr:** python script implementation ([0a533cb](https://github.com/module-federation/universe/commit/0a533cb60e0c3ca269ab45df740c1367be175e80)) - +- core package for module federation ([#1093](https://github.com/module-federation/universe/issues/1093)) ([d460400](https://github.com/module-federation/universe/commit/d46040053e9b627321b5fe8e05556c5bb727c238)), closes [#851](https://github.com/module-federation/universe/issues/851) [#864](https://github.com/module-federation/universe/issues/864) [#835](https://github.com/module-federation/universe/issues/835) [#851](https://github.com/module-federation/universe/issues/851) [#864](https://github.com/module-federation/universe/issues/864) [#871](https://github.com/module-federation/universe/issues/871) [#851](https://github.com/module-federation/universe/issues/851) [#864](https://github.com/module-federation/universe/issues/864) [#872](https://github.com/module-federation/universe/issues/872) [#875](https://github.com/module-federation/universe/issues/875) [#884](https://github.com/module-federation/universe/issues/884) [#887](https://github.com/module-federation/universe/issues/887) [#893](https://github.com/module-federation/universe/issues/893) [#885](https://github.com/module-federation/universe/issues/885) [#899](https://github.com/module-federation/universe/issues/899) [#904](https://github.com/module-federation/universe/issues/904) [#932](https://github.com/module-federation/universe/issues/932) [#936](https://github.com/module-federation/universe/issues/936) [#959](https://github.com/module-federation/universe/issues/959) [#960](https://github.com/module-federation/universe/issues/960) [#969](https://github.com/module-federation/universe/issues/969) [#971](https://github.com/module-federation/universe/issues/971) [#1234](https://github.com/module-federation/universe/issues/1234) [#1235](https://github.com/module-federation/universe/issues/1235) +- Dynamic Filesystem ([#1274](https://github.com/module-federation/universe/issues/1274)) ([2bec98a](https://github.com/module-federation/universe/commit/2bec98a2472b44898a7f14ec6868a2368cfb6d82)) +- fork module federation ([0ad7430](https://github.com/module-federation/universe/commit/0ad7430f6170458a47144be392133b7b2fa1ade0)) +- improved async init ([ae3a450](https://github.com/module-federation/universe/commit/ae3a4503ff9de86492b13029d6334b281ddd9493)) +- native self forming node federation ([#1291](https://github.com/module-federation/universe/issues/1291)) ([1dd5ed1](https://github.com/module-federation/universe/commit/1dd5ed17c981e036336925e807203e94b58c36d6)) +- new actions, remove gpt integration ([370229e](https://github.com/module-federation/universe/commit/370229e02cc352fcfaeaa0f3cf1f9f2d4966d1bb)) +- Next Federation 7 ([#726](https://github.com/module-federation/universe/issues/726)) ([d50ca1e](https://github.com/module-federation/universe/commit/d50ca1e4636c4e0a402190f6e9c3f69ed9ec8eac)), closes [#851](https://github.com/module-federation/universe/issues/851) [#864](https://github.com/module-federation/universe/issues/864) [#835](https://github.com/module-federation/universe/issues/835) [#851](https://github.com/module-federation/universe/issues/851) [#864](https://github.com/module-federation/universe/issues/864) [#871](https://github.com/module-federation/universe/issues/871) [#851](https://github.com/module-federation/universe/issues/851) [#864](https://github.com/module-federation/universe/issues/864) [#872](https://github.com/module-federation/universe/issues/872) [#875](https://github.com/module-federation/universe/issues/875) [#884](https://github.com/module-federation/universe/issues/884) [#887](https://github.com/module-federation/universe/issues/887) [#893](https://github.com/module-federation/universe/issues/893) [#885](https://github.com/module-federation/universe/issues/885) [#899](https://github.com/module-federation/universe/issues/899) [#904](https://github.com/module-federation/universe/issues/904) [#932](https://github.com/module-federation/universe/issues/932) [#936](https://github.com/module-federation/universe/issues/936) [#959](https://github.com/module-federation/universe/issues/959) [#960](https://github.com/module-federation/universe/issues/960) [#969](https://github.com/module-federation/universe/issues/969) [#971](https://github.com/module-federation/universe/issues/971) [#974](https://github.com/module-federation/universe/issues/974) [#984](https://github.com/module-federation/universe/issues/984) [#986](https://github.com/module-federation/universe/issues/986) [#1015](https://github.com/module-federation/universe/issues/1015) [#1086](https://github.com/module-federation/universe/issues/1086) [#1084](https://github.com/module-federation/universe/issues/1084) +- **node:** node federation demo/testing apps added ([27d545d](https://github.com/module-federation/universe/commit/27d545d99095da7134c392dbcd9fb135a170f6ef)) +- **typedoc-parsetr:** merged main ([cf6e65a](https://github.com/module-federation/universe/commit/cf6e65a4aa895d7c2dba8fdbd8ec22ec7bd8f514)) +- **typedoc-parsetr:** merged main ([2ff0d5a](https://github.com/module-federation/universe/commit/2ff0d5a075df3f241742cc7e516cd0378e8e1b3e)) +- **typedoc-parsetr:** python script implementation ([0a533cb](https://github.com/module-federation/universe/commit/0a533cb60e0c3ca269ab45df740c1367be175e80)) ### Reverts -* Revert "chore: upgrade nx" (#1064) ([3eadaf6](https://github.com/module-federation/universe/commit/3eadaf6f2d8ecc64b45c8e10dbc93f18293f45d5)), closes [#1064](https://github.com/module-federation/universe/issues/1064) - +- Revert "chore: upgrade nx" (#1064) ([3eadaf6](https://github.com/module-federation/universe/commit/3eadaf6f2d8ecc64b45c8e10dbc93f18293f45d5)), closes [#1064](https://github.com/module-federation/universe/issues/1064) ### BREAKING CHANGES -* automaticAsyncBoundary option has been removed +- automaticAsyncBoundary option has been removed -* fix: exclude specific pages from page map automatically +- fix: exclude specific pages from page map automatically -* refactor: conslidate codebase +- refactor: conslidate codebase -* fix: improve hot reload share recovery +- fix: improve hot reload share recovery -* refactor: remove server jsonp template +- refactor: remove server jsonp template -* chore: remove dead code from runtime modules +- chore: remove dead code from runtime modules -* fix: clean up jsonp getCustomJsonpCode +- fix: clean up jsonp getCustomJsonpCode getting chunk loading global from compiler output options -* feat: adding cleanInitArrays runtime helper +- feat: adding cleanInitArrays runtime helper -* chore: remove share scope hoist and module hoisting system +- chore: remove share scope hoist and module hoisting system -* chore: cleanup code +- chore: cleanup code -* chore: remove dead code from add module runtime plugin +- chore: remove dead code from add module runtime plugin likely can remove whole plugin in future -* chore: remove logs from delegate modules +- chore: remove logs from delegate modules -* chore: remove old utils +- chore: remove old utils -* fix: add warning on auto page stitch +- fix: add warning on auto page stitch -* fix: remove commented out code from InvertedContainerPlugin.ts +- fix: remove commented out code from InvertedContainerPlugin.ts -* chore: improve logging to see if its local load or remote load +- chore: improve logging to see if its local load or remote load -* chore: clean up old custom promises factories +- chore: clean up old custom promises factories -* fix: remove container proxy code +- fix: remove container proxy code -* fix: remove container proxy code -* automaticAsyncBoundary option has been removed +- fix: remove container proxy code +- automaticAsyncBoundary option has been removed -* fix: exclude specific pages from page map automatically +- fix: exclude specific pages from page map automatically -* refactor: conslidate codebase +- refactor: conslidate codebase -* fix: improve hot reload share recovery +- fix: improve hot reload share recovery -* refactor: remove server jsonp template +- refactor: remove server jsonp template -* chore: remove dead code from runtime modules +- chore: remove dead code from runtime modules -* fix: clean up jsonp getCustomJsonpCode +- fix: clean up jsonp getCustomJsonpCode getting chunk loading global from compiler output options -* feat: adding cleanInitArrays runtime helper +- feat: adding cleanInitArrays runtime helper -* chore: remove share scope hoist and module hoisting system +- chore: remove share scope hoist and module hoisting system -* chore: cleanup code +- chore: cleanup code -* chore: remove dead code from add module runtime plugin +- chore: remove dead code from add module runtime plugin likely can remove whole plugin in future -* chore: remove logs from delegate modules +- chore: remove logs from delegate modules -* chore: remove old utils +- chore: remove old utils -* fix: add warning on auto page stitch +- fix: add warning on auto page stitch -* fix: remove commented out code from InvertedContainerPlugin.ts +- fix: remove commented out code from InvertedContainerPlugin.ts -* chore: improve logging to see if its local load or remote load +- chore: improve logging to see if its local load or remote load -* chore: clean up old custom promises factories +- chore: clean up old custom promises factories -* fix: remove container proxy code +- fix: remove container proxy code -* fix: remove container proxy code +- fix: remove container proxy code -* chore: fix project.json +- chore: fix project.json -* debugging +- debugging -* fix: resolve backmerge issues with build +- fix: resolve backmerge issues with build -* Merge branch 'kill_child_compilers' into fix_backmerge_issues +- Merge branch 'kill_child_compilers' into fix_backmerge_issues # Conflicts: -# package-lock.json -# package.json -# packages/nextjs-mf/src/plugins/NextFederationPlugin/index.ts -# packages/nextjs-mf/src/plugins/container/InvertedContainerPlugin.ts -# packages/nextjs-mf/src/plugins/container/InvertedContainerRuntimeModule.ts -* feat: enable eager sharing +# package-lock.json + +# package.json + +# packages/nextjs-mf/src/plugins/NextFederationPlugin/index.ts -* refactor: improve module hooks for eager loading and search +# packages/nextjs-mf/src/plugins/container/InvertedContainerPlugin.ts -* refactor: cleanup custom jsonp and make es5 +# packages/nextjs-mf/src/plugins/container/InvertedContainerRuntimeModule.ts -* refactor: cleanup inverted container code +- feat: enable eager sharing -* refactor: cleanup inverted container code -* automaticAsyncBoundary option has been removed +- refactor: improve module hooks for eager loading and search -* fix: exclude specific pages from page map automatically +- refactor: cleanup custom jsonp and make es5 -* refactor: conslidate codebase +- refactor: cleanup inverted container code -* fix: improve hot reload share recovery +- refactor: cleanup inverted container code +- automaticAsyncBoundary option has been removed -* refactor: remove server jsonp template +- fix: exclude specific pages from page map automatically -* chore: remove dead code from runtime modules +- refactor: conslidate codebase -* fix: clean up jsonp getCustomJsonpCode +- fix: improve hot reload share recovery + +- refactor: remove server jsonp template + +- chore: remove dead code from runtime modules + +- fix: clean up jsonp getCustomJsonpCode getting chunk loading global from compiler output options -* feat: adding cleanInitArrays runtime helper +- feat: adding cleanInitArrays runtime helper -* chore: remove share scope hoist and module hoisting system +- chore: remove share scope hoist and module hoisting system -* chore: cleanup code +- chore: cleanup code -* chore: remove dead code from add module runtime plugin +- chore: remove dead code from add module runtime plugin likely can remove whole plugin in future -* chore: remove logs from delegate modules +- chore: remove logs from delegate modules -* chore: remove old utils +- chore: remove old utils -* fix: add warning on auto page stitch +- fix: add warning on auto page stitch -* fix: remove commented out code from InvertedContainerPlugin.ts +- fix: remove commented out code from InvertedContainerPlugin.ts -* chore: improve logging to see if its local load or remote load +- chore: improve logging to see if its local load or remote load -* chore: clean up old custom promises factories +- chore: clean up old custom promises factories -* fix: remove container proxy code +- fix: remove container proxy code -* fix: remove container proxy code +- fix: remove container proxy code -* fix: resolve backmerge issues with build +- fix: resolve backmerge issues with build -* Merge branch 'kill_child_compilers' into fix_backmerge_issues +- Merge branch 'kill_child_compilers' into fix_backmerge_issues # Conflicts: -# package-lock.json -# package.json -# packages/nextjs-mf/src/plugins/NextFederationPlugin/index.ts -# packages/nextjs-mf/src/plugins/container/InvertedContainerPlugin.ts -# packages/nextjs-mf/src/plugins/container/InvertedContainerRuntimeModule.ts -* feat: enable eager sharing +# package-lock.json + +# package.json + +# packages/nextjs-mf/src/plugins/NextFederationPlugin/index.ts + +# packages/nextjs-mf/src/plugins/container/InvertedContainerPlugin.ts -* refactor: improve module hooks for eager loading and search +# packages/nextjs-mf/src/plugins/container/InvertedContainerRuntimeModule.ts -* refactor: cleanup custom jsonp and make es5 +- feat: enable eager sharing -* refactor: cleanup inverted container code +- refactor: improve module hooks for eager loading and search -* refactor: cleanup inverted container code +- refactor: cleanup custom jsonp and make es5 -* ci: fix install step with npm and NX +- refactor: cleanup inverted container code -* test: remove tests for now +- refactor: cleanup inverted container code -* chore(utils): release version 1.7.3-beta.0 +- ci: fix install step with npm and NX -* chore(utils): release version 1.7.3 +- test: remove tests for now -* chore(node): release version 0.14.4-beta.0 +- chore(utils): release version 1.7.3-beta.0 -* chore(node): release version 0.14.4 +- chore(utils): release version 1.7.3 -* chore(nextjs-mf): release version 6.4.1-beta.4 +- chore(node): release version 0.14.4-beta.0 -* fix: remove debugging runtime variable +- chore(node): release version 0.14.4 -* chore(nextjs-mf): release version 6.4.1-beta.5 -* automaticAsyncBoundary option has been removed +- chore(nextjs-mf): release version 6.4.1-beta.4 -* fix: exclude specific pages from page map automatically +- fix: remove debugging runtime variable -* refactor: conslidate codebase +- chore(nextjs-mf): release version 6.4.1-beta.5 +- automaticAsyncBoundary option has been removed -* fix: improve hot reload share recovery +- fix: exclude specific pages from page map automatically -* refactor: remove server jsonp template +- refactor: conslidate codebase -* chore: remove dead code from runtime modules +- fix: improve hot reload share recovery -* fix: clean up jsonp getCustomJsonpCode +- refactor: remove server jsonp template + +- chore: remove dead code from runtime modules + +- fix: clean up jsonp getCustomJsonpCode getting chunk loading global from compiler output options -* feat: adding cleanInitArrays runtime helper +- feat: adding cleanInitArrays runtime helper -* chore: remove share scope hoist and module hoisting system +- chore: remove share scope hoist and module hoisting system -* chore: cleanup code +- chore: cleanup code -* chore: remove dead code from add module runtime plugin +- chore: remove dead code from add module runtime plugin likely can remove whole plugin in future -* chore: remove logs from delegate modules +- chore: remove logs from delegate modules -* chore: remove old utils +- chore: remove old utils -* fix: add warning on auto page stitch +- fix: add warning on auto page stitch -* fix: remove commented out code from InvertedContainerPlugin.ts +- fix: remove commented out code from InvertedContainerPlugin.ts -* chore: improve logging to see if its local load or remote load +- chore: improve logging to see if its local load or remote load -* chore: clean up old custom promises factories +- chore: clean up old custom promises factories -* fix: remove container proxy code +- fix: remove container proxy code -* fix: remove container proxy code -* automaticAsyncBoundary option has been removed +- fix: remove container proxy code +- automaticAsyncBoundary option has been removed -* fix: exclude specific pages from page map automatically +- fix: exclude specific pages from page map automatically -* refactor: conslidate codebase +- refactor: conslidate codebase -* fix: improve hot reload share recovery +- fix: improve hot reload share recovery -* refactor: remove server jsonp template +- refactor: remove server jsonp template -* chore: remove dead code from runtime modules +- chore: remove dead code from runtime modules -* fix: clean up jsonp getCustomJsonpCode +- fix: clean up jsonp getCustomJsonpCode getting chunk loading global from compiler output options -* feat: adding cleanInitArrays runtime helper +- feat: adding cleanInitArrays runtime helper -* chore: remove share scope hoist and module hoisting system +- chore: remove share scope hoist and module hoisting system -* chore: cleanup code +- chore: cleanup code -* chore: remove dead code from add module runtime plugin +- chore: remove dead code from add module runtime plugin likely can remove whole plugin in future -* chore: remove logs from delegate modules +- chore: remove logs from delegate modules -* chore: remove old utils +- chore: remove old utils -* fix: add warning on auto page stitch +- fix: add warning on auto page stitch -* fix: remove commented out code from InvertedContainerPlugin.ts +- fix: remove commented out code from InvertedContainerPlugin.ts -* chore: improve logging to see if its local load or remote load +- chore: improve logging to see if its local load or remote load -* chore: clean up old custom promises factories +- chore: clean up old custom promises factories -* fix: remove container proxy code +- fix: remove container proxy code -* fix: remove container proxy code +- fix: remove container proxy code -* chore: fix project.json +- chore: fix project.json -* debugging +- debugging -* fix: resolve backmerge issues with build +- fix: resolve backmerge issues with build -* Merge branch 'kill_child_compilers' into fix_backmerge_issues +- Merge branch 'kill_child_compilers' into fix_backmerge_issues # Conflicts: -# package-lock.json -# package.json -# packages/nextjs-mf/src/plugins/NextFederationPlugin/index.ts -# packages/nextjs-mf/src/plugins/container/InvertedContainerPlugin.ts -# packages/nextjs-mf/src/plugins/container/InvertedContainerRuntimeModule.ts -* feat: enable eager sharing +# package-lock.json + +# package.json + +# packages/nextjs-mf/src/plugins/NextFederationPlugin/index.ts + +# packages/nextjs-mf/src/plugins/container/InvertedContainerPlugin.ts + +# packages/nextjs-mf/src/plugins/container/InvertedContainerRuntimeModule.ts -* refactor: improve module hooks for eager loading and search +- feat: enable eager sharing -* refactor: cleanup custom jsonp and make es5 +- refactor: improve module hooks for eager loading and search -* refactor: cleanup inverted container code +- refactor: cleanup custom jsonp and make es5 -* refactor: cleanup inverted container code -* automaticAsyncBoundary option has been removed +- refactor: cleanup inverted container code -* fix: exclude specific pages from page map automatically +- refactor: cleanup inverted container code +- automaticAsyncBoundary option has been removed -* refactor: conslidate codebase +- fix: exclude specific pages from page map automatically -* fix: improve hot reload share recovery +- refactor: conslidate codebase -* refactor: remove server jsonp template +- fix: improve hot reload share recovery -* chore: remove dead code from runtime modules +- refactor: remove server jsonp template -* fix: clean up jsonp getCustomJsonpCode +- chore: remove dead code from runtime modules + +- fix: clean up jsonp getCustomJsonpCode getting chunk loading global from compiler output options -* feat: adding cleanInitArrays runtime helper +- feat: adding cleanInitArrays runtime helper -* chore: remove share scope hoist and module hoisting system +- chore: remove share scope hoist and module hoisting system -* chore: cleanup code +- chore: cleanup code -* chore: remove dead code from add module runtime plugin +- chore: remove dead code from add module runtime plugin likely can remove whole plugin in future -* chore: remove logs from delegate modules +- chore: remove logs from delegate modules -* chore: remove old utils +- chore: remove old utils -* fix: add warning on auto page stitch +- fix: add warning on auto page stitch -* fix: remove commented out code from InvertedContainerPlugin.ts +- fix: remove commented out code from InvertedContainerPlugin.ts -* chore: improve logging to see if its local load or remote load +- chore: improve logging to see if its local load or remote load -* chore: clean up old custom promises factories +- chore: clean up old custom promises factories -* fix: remove container proxy code +- fix: remove container proxy code -* fix: remove container proxy code +- fix: remove container proxy code -* fix: resolve backmerge issues with build +- fix: resolve backmerge issues with build -* Merge branch 'kill_child_compilers' into fix_backmerge_issues +- Merge branch 'kill_child_compilers' into fix_backmerge_issues # Conflicts: -# package-lock.json -# package.json -# packages/nextjs-mf/src/plugins/NextFederationPlugin/index.ts -# packages/nextjs-mf/src/plugins/container/InvertedContainerPlugin.ts -# packages/nextjs-mf/src/plugins/container/InvertedContainerRuntimeModule.ts -* feat: enable eager sharing +# package-lock.json + +# package.json + +# packages/nextjs-mf/src/plugins/NextFederationPlugin/index.ts + +# packages/nextjs-mf/src/plugins/container/InvertedContainerPlugin.ts + +# packages/nextjs-mf/src/plugins/container/InvertedContainerRuntimeModule.ts + +- feat: enable eager sharing -* refactor: improve module hooks for eager loading and search +- refactor: improve module hooks for eager loading and search -* refactor: cleanup custom jsonp and make es5 +- refactor: cleanup custom jsonp and make es5 -* refactor: cleanup inverted container code +- refactor: cleanup inverted container code -* refactor: cleanup inverted container code +- refactor: cleanup inverted container code -* ci: fix install step with npm and NX +- ci: fix install step with npm and NX -* test: remove tests for now +- test: remove tests for now -* chore(utils): release version 1.7.3-beta.0 +- chore(utils): release version 1.7.3-beta.0 -* chore(utils): release version 1.7.3 +- chore(utils): release version 1.7.3 -* chore(node): release version 0.14.4-beta.0 +- chore(node): release version 0.14.4-beta.0 -* chore(node): release version 0.14.4 +- chore(node): release version 0.14.4 -* chore(nextjs-mf): release version 6.4.1-beta.4 +- chore(nextjs-mf): release version 6.4.1-beta.4 -* fix: remove debugging runtime variable +- fix: remove debugging runtime variable -* chore(nextjs-mf): release version 6.4.1-beta.5 +- chore(nextjs-mf): release version 6.4.1-beta.5 # Changelog diff --git a/packages/native-federation-typescript/CHANGELOG.md b/packages/native-federation-typescript/CHANGELOG.md index 88b7267d562..33f7c1c6ea0 100644 --- a/packages/native-federation-typescript/CHANGELOG.md +++ b/packages/native-federation-typescript/CHANGELOG.md @@ -1,232 +1,239 @@ # [1.0.0-canary.1](https://github.com/module-federation/universe/compare/native-federation-typescript-0.2.6...native-federation-typescript-1.0.0-canary.1) (2023-11-06) - ### Bug Fixes -* **deps:** update dependency antd to v4.24.14 ([#1309](https://github.com/module-federation/universe/issues/1309)) ([d0a2314](https://github.com/module-federation/universe/commit/d0a231470e37dbad85a11df1f12695657ba3b984)) -* **deps:** update dependency axios to v1.5.0 ([#1275](https://github.com/module-federation/universe/issues/1275)) ([f163df1](https://github.com/module-federation/universe/commit/f163df1073740bf4218bb35ba57cea5dc409fe43)) -* **deps:** update dependency axios to v1.5.1 ([ae9a06a](https://github.com/module-federation/universe/commit/ae9a06a0cc35fad27a0b493a25370b92617c39fb)) -* **deps:** update dependency core-js to v3.32.2 ([18d2746](https://github.com/module-federation/universe/commit/18d2746763f38fe295a14df3f1bcd4218fade5b8)) -* **deps:** update dependency core-js to v3.33.0 ([30894ca](https://github.com/module-federation/universe/commit/30894cafbe5dea4350dc7c633548038d7ec5f8a8)) -* **deps:** update dependency fast-glob to v3.3.1 ([#1197](https://github.com/module-federation/universe/issues/1197)) ([5743543](https://github.com/module-federation/universe/commit/57435430bd0912e3bf370ce08b46f610b12d00e3)) -* **deps:** update dependency react-router-dom to v6.15.0 ([#1276](https://github.com/module-federation/universe/issues/1276)) ([850e2fa](https://github.com/module-federation/universe/commit/850e2fac60f49b456aef3b5df9827fc3ac5a6006)) -* **deps:** update dependency react-router-dom to v6.16.0 ([0618339](https://github.com/module-federation/universe/commit/061833912f7e5748011cd60ed679a68c1b659f77)) -* **deps:** update dependency typedoc to ^0.25.0 ([#1277](https://github.com/module-federation/universe/issues/1277)) ([8d6a72e](https://github.com/module-federation/universe/commit/8d6a72e18a57b69b2f63802621e8b4b479554fed)) -* **deps:** update dependency typedoc to v0.25.1 ([#1304](https://github.com/module-federation/universe/issues/1304)) ([abf84fe](https://github.com/module-federation/universe/commit/abf84fefd5c20b5de7c9a74d1c49235f44d36dc6)) -* **deps:** update dependency typedoc to v0.25.2 ([46c6524](https://github.com/module-federation/universe/commit/46c65247e187cee9e15625402c1570ac351bb1fe)) -* **deps:** update dependency undici to v5.24.0 ([573e644](https://github.com/module-federation/universe/commit/573e644333da6d24cb4286ce08221a1aa82415e4)) -* **deps:** update dependency undici to v5.25.2 ([da3e539](https://github.com/module-federation/universe/commit/da3e539a41ed23ccb5086b1dd428fbee0f8d652c)) -* **deps:** update dependency undici to v5.25.4 ([1d4f91e](https://github.com/module-federation/universe/commit/1d4f91ec93da4326c8a42eef28f150d5d09738bb)) -* **deps:** update dependency undici to v5.26.2 [security] ([410a8b8](https://github.com/module-federation/universe/commit/410a8b8bd1558dfb5119ae10941d2b3816a0d0e0)) -* **deps:** update dependency unplugin to v1.5.0 ([936b3f8](https://github.com/module-federation/universe/commit/936b3f8d8061fd9d481d1788fb35b88588928d14)) -* Fix call undefined delegate ([#1149](https://github.com/module-federation/universe/issues/1149)) ([87a5896](https://github.com/module-federation/universe/commit/87a5896221a726578c3433071755fba3465824f4)), closes [#1151](https://github.com/module-federation/universe/issues/1151) -* override semantic-release-plugin-decorators ([18675de](https://github.com/module-federation/universe/commit/18675defef65570d2b3bb6a9caa3fd039badee29)) -* switch to @goestav/nx-semantic-release ([63a3350](https://github.com/module-federation/universe/commit/63a3350a6a1a12235e3c9f1e7c724d54f0476356)) - +- **deps:** update dependency antd to v4.24.14 ([#1309](https://github.com/module-federation/universe/issues/1309)) ([d0a2314](https://github.com/module-federation/universe/commit/d0a231470e37dbad85a11df1f12695657ba3b984)) +- **deps:** update dependency axios to v1.5.0 ([#1275](https://github.com/module-federation/universe/issues/1275)) ([f163df1](https://github.com/module-federation/universe/commit/f163df1073740bf4218bb35ba57cea5dc409fe43)) +- **deps:** update dependency axios to v1.5.1 ([ae9a06a](https://github.com/module-federation/universe/commit/ae9a06a0cc35fad27a0b493a25370b92617c39fb)) +- **deps:** update dependency core-js to v3.32.2 ([18d2746](https://github.com/module-federation/universe/commit/18d2746763f38fe295a14df3f1bcd4218fade5b8)) +- **deps:** update dependency core-js to v3.33.0 ([30894ca](https://github.com/module-federation/universe/commit/30894cafbe5dea4350dc7c633548038d7ec5f8a8)) +- **deps:** update dependency fast-glob to v3.3.1 ([#1197](https://github.com/module-federation/universe/issues/1197)) ([5743543](https://github.com/module-federation/universe/commit/57435430bd0912e3bf370ce08b46f610b12d00e3)) +- **deps:** update dependency react-router-dom to v6.15.0 ([#1276](https://github.com/module-federation/universe/issues/1276)) ([850e2fa](https://github.com/module-federation/universe/commit/850e2fac60f49b456aef3b5df9827fc3ac5a6006)) +- **deps:** update dependency react-router-dom to v6.16.0 ([0618339](https://github.com/module-federation/universe/commit/061833912f7e5748011cd60ed679a68c1b659f77)) +- **deps:** update dependency typedoc to ^0.25.0 ([#1277](https://github.com/module-federation/universe/issues/1277)) ([8d6a72e](https://github.com/module-federation/universe/commit/8d6a72e18a57b69b2f63802621e8b4b479554fed)) +- **deps:** update dependency typedoc to v0.25.1 ([#1304](https://github.com/module-federation/universe/issues/1304)) ([abf84fe](https://github.com/module-federation/universe/commit/abf84fefd5c20b5de7c9a74d1c49235f44d36dc6)) +- **deps:** update dependency typedoc to v0.25.2 ([46c6524](https://github.com/module-federation/universe/commit/46c65247e187cee9e15625402c1570ac351bb1fe)) +- **deps:** update dependency undici to v5.24.0 ([573e644](https://github.com/module-federation/universe/commit/573e644333da6d24cb4286ce08221a1aa82415e4)) +- **deps:** update dependency undici to v5.25.2 ([da3e539](https://github.com/module-federation/universe/commit/da3e539a41ed23ccb5086b1dd428fbee0f8d652c)) +- **deps:** update dependency undici to v5.25.4 ([1d4f91e](https://github.com/module-federation/universe/commit/1d4f91ec93da4326c8a42eef28f150d5d09738bb)) +- **deps:** update dependency undici to v5.26.2 [security] ([410a8b8](https://github.com/module-federation/universe/commit/410a8b8bd1558dfb5119ae10941d2b3816a0d0e0)) +- **deps:** update dependency unplugin to v1.5.0 ([936b3f8](https://github.com/module-federation/universe/commit/936b3f8d8061fd9d481d1788fb35b88588928d14)) +- Fix call undefined delegate ([#1149](https://github.com/module-federation/universe/issues/1149)) ([87a5896](https://github.com/module-federation/universe/commit/87a5896221a726578c3433071755fba3465824f4)), closes [#1151](https://github.com/module-federation/universe/issues/1151) +- override semantic-release-plugin-decorators ([18675de](https://github.com/module-federation/universe/commit/18675defef65570d2b3bb6a9caa3fd039badee29)) +- switch to @goestav/nx-semantic-release ([63a3350](https://github.com/module-federation/universe/commit/63a3350a6a1a12235e3c9f1e7c724d54f0476356)) ### Features -* core package for module federation ([#1093](https://github.com/module-federation/universe/issues/1093)) ([d460400](https://github.com/module-federation/universe/commit/d46040053e9b627321b5fe8e05556c5bb727c238)), closes [#851](https://github.com/module-federation/universe/issues/851) [#864](https://github.com/module-federation/universe/issues/864) [#835](https://github.com/module-federation/universe/issues/835) [#851](https://github.com/module-federation/universe/issues/851) [#864](https://github.com/module-federation/universe/issues/864) [#871](https://github.com/module-federation/universe/issues/871) [#851](https://github.com/module-federation/universe/issues/851) [#864](https://github.com/module-federation/universe/issues/864) [#872](https://github.com/module-federation/universe/issues/872) [#875](https://github.com/module-federation/universe/issues/875) [#884](https://github.com/module-federation/universe/issues/884) [#887](https://github.com/module-federation/universe/issues/887) [#893](https://github.com/module-federation/universe/issues/893) [#885](https://github.com/module-federation/universe/issues/885) [#899](https://github.com/module-federation/universe/issues/899) [#904](https://github.com/module-federation/universe/issues/904) [#932](https://github.com/module-federation/universe/issues/932) [#936](https://github.com/module-federation/universe/issues/936) [#959](https://github.com/module-federation/universe/issues/959) [#960](https://github.com/module-federation/universe/issues/960) [#969](https://github.com/module-federation/universe/issues/969) [#971](https://github.com/module-federation/universe/issues/971) [#1234](https://github.com/module-federation/universe/issues/1234) [#1235](https://github.com/module-federation/universe/issues/1235) -* Dynamic Filesystem ([#1274](https://github.com/module-federation/universe/issues/1274)) ([2bec98a](https://github.com/module-federation/universe/commit/2bec98a2472b44898a7f14ec6868a2368cfb6d82)) -* fork module federation ([0ad7430](https://github.com/module-federation/universe/commit/0ad7430f6170458a47144be392133b7b2fa1ade0)) -* improved async init ([ae3a450](https://github.com/module-federation/universe/commit/ae3a4503ff9de86492b13029d6334b281ddd9493)) -* native self forming node federation ([#1291](https://github.com/module-federation/universe/issues/1291)) ([1dd5ed1](https://github.com/module-federation/universe/commit/1dd5ed17c981e036336925e807203e94b58c36d6)) -* new actions, remove gpt integration ([370229e](https://github.com/module-federation/universe/commit/370229e02cc352fcfaeaa0f3cf1f9f2d4966d1bb)) -* **node:** node federation demo/testing apps added ([27d545d](https://github.com/module-federation/universe/commit/27d545d99095da7134c392dbcd9fb135a170f6ef)) -* **typedoc-parsetr:** merged main ([cf6e65a](https://github.com/module-federation/universe/commit/cf6e65a4aa895d7c2dba8fdbd8ec22ec7bd8f514)) -* **typedoc-parsetr:** merged main ([2ff0d5a](https://github.com/module-federation/universe/commit/2ff0d5a075df3f241742cc7e516cd0378e8e1b3e)) -* **typedoc-parsetr:** python script implementation ([0a533cb](https://github.com/module-federation/universe/commit/0a533cb60e0c3ca269ab45df740c1367be175e80)) - +- core package for module federation ([#1093](https://github.com/module-federation/universe/issues/1093)) ([d460400](https://github.com/module-federation/universe/commit/d46040053e9b627321b5fe8e05556c5bb727c238)), closes [#851](https://github.com/module-federation/universe/issues/851) [#864](https://github.com/module-federation/universe/issues/864) [#835](https://github.com/module-federation/universe/issues/835) [#851](https://github.com/module-federation/universe/issues/851) [#864](https://github.com/module-federation/universe/issues/864) [#871](https://github.com/module-federation/universe/issues/871) [#851](https://github.com/module-federation/universe/issues/851) [#864](https://github.com/module-federation/universe/issues/864) [#872](https://github.com/module-federation/universe/issues/872) [#875](https://github.com/module-federation/universe/issues/875) [#884](https://github.com/module-federation/universe/issues/884) [#887](https://github.com/module-federation/universe/issues/887) [#893](https://github.com/module-federation/universe/issues/893) [#885](https://github.com/module-federation/universe/issues/885) [#899](https://github.com/module-federation/universe/issues/899) [#904](https://github.com/module-federation/universe/issues/904) [#932](https://github.com/module-federation/universe/issues/932) [#936](https://github.com/module-federation/universe/issues/936) [#959](https://github.com/module-federation/universe/issues/959) [#960](https://github.com/module-federation/universe/issues/960) [#969](https://github.com/module-federation/universe/issues/969) [#971](https://github.com/module-federation/universe/issues/971) [#1234](https://github.com/module-federation/universe/issues/1234) [#1235](https://github.com/module-federation/universe/issues/1235) +- Dynamic Filesystem ([#1274](https://github.com/module-federation/universe/issues/1274)) ([2bec98a](https://github.com/module-federation/universe/commit/2bec98a2472b44898a7f14ec6868a2368cfb6d82)) +- fork module federation ([0ad7430](https://github.com/module-federation/universe/commit/0ad7430f6170458a47144be392133b7b2fa1ade0)) +- improved async init ([ae3a450](https://github.com/module-federation/universe/commit/ae3a4503ff9de86492b13029d6334b281ddd9493)) +- native self forming node federation ([#1291](https://github.com/module-federation/universe/issues/1291)) ([1dd5ed1](https://github.com/module-federation/universe/commit/1dd5ed17c981e036336925e807203e94b58c36d6)) +- new actions, remove gpt integration ([370229e](https://github.com/module-federation/universe/commit/370229e02cc352fcfaeaa0f3cf1f9f2d4966d1bb)) +- **node:** node federation demo/testing apps added ([27d545d](https://github.com/module-federation/universe/commit/27d545d99095da7134c392dbcd9fb135a170f6ef)) +- **typedoc-parsetr:** merged main ([cf6e65a](https://github.com/module-federation/universe/commit/cf6e65a4aa895d7c2dba8fdbd8ec22ec7bd8f514)) +- **typedoc-parsetr:** merged main ([2ff0d5a](https://github.com/module-federation/universe/commit/2ff0d5a075df3f241742cc7e516cd0378e8e1b3e)) +- **typedoc-parsetr:** python script implementation ([0a533cb](https://github.com/module-federation/universe/commit/0a533cb60e0c3ca269ab45df740c1367be175e80)) ### BREAKING CHANGES -* automaticAsyncBoundary option has been removed +- automaticAsyncBoundary option has been removed -* fix: exclude specific pages from page map automatically +- fix: exclude specific pages from page map automatically -* refactor: conslidate codebase +- refactor: conslidate codebase -* fix: improve hot reload share recovery +- fix: improve hot reload share recovery -* refactor: remove server jsonp template +- refactor: remove server jsonp template -* chore: remove dead code from runtime modules +- chore: remove dead code from runtime modules -* fix: clean up jsonp getCustomJsonpCode +- fix: clean up jsonp getCustomJsonpCode getting chunk loading global from compiler output options -* feat: adding cleanInitArrays runtime helper +- feat: adding cleanInitArrays runtime helper -* chore: remove share scope hoist and module hoisting system +- chore: remove share scope hoist and module hoisting system -* chore: cleanup code +- chore: cleanup code -* chore: remove dead code from add module runtime plugin +- chore: remove dead code from add module runtime plugin likely can remove whole plugin in future -* chore: remove logs from delegate modules +- chore: remove logs from delegate modules -* chore: remove old utils +- chore: remove old utils -* fix: add warning on auto page stitch +- fix: add warning on auto page stitch -* fix: remove commented out code from InvertedContainerPlugin.ts +- fix: remove commented out code from InvertedContainerPlugin.ts -* chore: improve logging to see if its local load or remote load +- chore: improve logging to see if its local load or remote load -* chore: clean up old custom promises factories +- chore: clean up old custom promises factories -* fix: remove container proxy code +- fix: remove container proxy code -* fix: remove container proxy code -* automaticAsyncBoundary option has been removed +- fix: remove container proxy code +- automaticAsyncBoundary option has been removed -* fix: exclude specific pages from page map automatically +- fix: exclude specific pages from page map automatically -* refactor: conslidate codebase +- refactor: conslidate codebase -* fix: improve hot reload share recovery +- fix: improve hot reload share recovery -* refactor: remove server jsonp template +- refactor: remove server jsonp template -* chore: remove dead code from runtime modules +- chore: remove dead code from runtime modules -* fix: clean up jsonp getCustomJsonpCode +- fix: clean up jsonp getCustomJsonpCode getting chunk loading global from compiler output options -* feat: adding cleanInitArrays runtime helper +- feat: adding cleanInitArrays runtime helper -* chore: remove share scope hoist and module hoisting system +- chore: remove share scope hoist and module hoisting system -* chore: cleanup code +- chore: cleanup code -* chore: remove dead code from add module runtime plugin +- chore: remove dead code from add module runtime plugin likely can remove whole plugin in future -* chore: remove logs from delegate modules +- chore: remove logs from delegate modules -* chore: remove old utils +- chore: remove old utils -* fix: add warning on auto page stitch +- fix: add warning on auto page stitch -* fix: remove commented out code from InvertedContainerPlugin.ts +- fix: remove commented out code from InvertedContainerPlugin.ts -* chore: improve logging to see if its local load or remote load +- chore: improve logging to see if its local load or remote load -* chore: clean up old custom promises factories +- chore: clean up old custom promises factories -* fix: remove container proxy code +- fix: remove container proxy code -* fix: remove container proxy code +- fix: remove container proxy code -* chore: fix project.json +- chore: fix project.json -* debugging +- debugging -* fix: resolve backmerge issues with build +- fix: resolve backmerge issues with build -* Merge branch 'kill_child_compilers' into fix_backmerge_issues +- Merge branch 'kill_child_compilers' into fix_backmerge_issues # Conflicts: -# package-lock.json -# package.json -# packages/nextjs-mf/src/plugins/NextFederationPlugin/index.ts -# packages/nextjs-mf/src/plugins/container/InvertedContainerPlugin.ts -# packages/nextjs-mf/src/plugins/container/InvertedContainerRuntimeModule.ts -* feat: enable eager sharing +# package-lock.json + +# package.json + +# packages/nextjs-mf/src/plugins/NextFederationPlugin/index.ts + +# packages/nextjs-mf/src/plugins/container/InvertedContainerPlugin.ts + +# packages/nextjs-mf/src/plugins/container/InvertedContainerRuntimeModule.ts -* refactor: improve module hooks for eager loading and search +- feat: enable eager sharing -* refactor: cleanup custom jsonp and make es5 +- refactor: improve module hooks for eager loading and search -* refactor: cleanup inverted container code +- refactor: cleanup custom jsonp and make es5 -* refactor: cleanup inverted container code -* automaticAsyncBoundary option has been removed +- refactor: cleanup inverted container code -* fix: exclude specific pages from page map automatically +- refactor: cleanup inverted container code +- automaticAsyncBoundary option has been removed -* refactor: conslidate codebase +- fix: exclude specific pages from page map automatically -* fix: improve hot reload share recovery +- refactor: conslidate codebase -* refactor: remove server jsonp template +- fix: improve hot reload share recovery -* chore: remove dead code from runtime modules +- refactor: remove server jsonp template -* fix: clean up jsonp getCustomJsonpCode +- chore: remove dead code from runtime modules + +- fix: clean up jsonp getCustomJsonpCode getting chunk loading global from compiler output options -* feat: adding cleanInitArrays runtime helper +- feat: adding cleanInitArrays runtime helper -* chore: remove share scope hoist and module hoisting system +- chore: remove share scope hoist and module hoisting system -* chore: cleanup code +- chore: cleanup code -* chore: remove dead code from add module runtime plugin +- chore: remove dead code from add module runtime plugin likely can remove whole plugin in future -* chore: remove logs from delegate modules +- chore: remove logs from delegate modules -* chore: remove old utils +- chore: remove old utils -* fix: add warning on auto page stitch +- fix: add warning on auto page stitch -* fix: remove commented out code from InvertedContainerPlugin.ts +- fix: remove commented out code from InvertedContainerPlugin.ts -* chore: improve logging to see if its local load or remote load +- chore: improve logging to see if its local load or remote load -* chore: clean up old custom promises factories +- chore: clean up old custom promises factories -* fix: remove container proxy code +- fix: remove container proxy code -* fix: remove container proxy code +- fix: remove container proxy code -* fix: resolve backmerge issues with build +- fix: resolve backmerge issues with build -* Merge branch 'kill_child_compilers' into fix_backmerge_issues +- Merge branch 'kill_child_compilers' into fix_backmerge_issues # Conflicts: -# package-lock.json -# package.json -# packages/nextjs-mf/src/plugins/NextFederationPlugin/index.ts -# packages/nextjs-mf/src/plugins/container/InvertedContainerPlugin.ts -# packages/nextjs-mf/src/plugins/container/InvertedContainerRuntimeModule.ts -* feat: enable eager sharing +# package-lock.json + +# package.json + +# packages/nextjs-mf/src/plugins/NextFederationPlugin/index.ts + +# packages/nextjs-mf/src/plugins/container/InvertedContainerPlugin.ts + +# packages/nextjs-mf/src/plugins/container/InvertedContainerRuntimeModule.ts + +- feat: enable eager sharing -* refactor: improve module hooks for eager loading and search +- refactor: improve module hooks for eager loading and search -* refactor: cleanup custom jsonp and make es5 +- refactor: cleanup custom jsonp and make es5 -* refactor: cleanup inverted container code +- refactor: cleanup inverted container code -* refactor: cleanup inverted container code +- refactor: cleanup inverted container code -* ci: fix install step with npm and NX +- ci: fix install step with npm and NX -* test: remove tests for now +- test: remove tests for now -* chore(utils): release version 1.7.3-beta.0 +- chore(utils): release version 1.7.3-beta.0 -* chore(utils): release version 1.7.3 +- chore(utils): release version 1.7.3 -* chore(node): release version 0.14.4-beta.0 +- chore(node): release version 0.14.4-beta.0 -* chore(node): release version 0.14.4 +- chore(node): release version 0.14.4 -* chore(nextjs-mf): release version 6.4.1-beta.4 +- chore(nextjs-mf): release version 6.4.1-beta.4 -* fix: remove debugging runtime variable +- fix: remove debugging runtime variable -* chore(nextjs-mf): release version 6.4.1-beta.5 +- chore(nextjs-mf): release version 6.4.1-beta.5 # Changelog diff --git a/packages/nextjs-mf/CHANGELOG.md b/packages/nextjs-mf/CHANGELOG.md index 14de6852e4a..7fa92927207 100644 --- a/packages/nextjs-mf/CHANGELOG.md +++ b/packages/nextjs-mf/CHANGELOG.md @@ -1,16 +1,14 @@ # [8.1.0-canary.2](https://github.com/module-federation/universe/compare/nextjs-mf-8.1.0-canary.1...nextjs-mf-8.1.0-canary.2) (2023-11-06) - ### Bug Fixes -* **deps:** update dependency undici to v5.26.2 [security] ([410a8b8](https://github.com/module-federation/universe/commit/410a8b8bd1558dfb5119ae10941d2b3816a0d0e0)) - +- **deps:** update dependency undici to v5.26.2 [security] ([410a8b8](https://github.com/module-federation/universe/commit/410a8b8bd1558dfb5119ae10941d2b3816a0d0e0)) ### Features -* **enhanced:** new async boundary plugin design ([a4ac1ac](https://github.com/module-federation/universe/commit/a4ac1acff974f74db6395c31134de14d9c344b6f)) -* **enhanced:** Rewrite Async Boundary based on bytedance version ([fa05dd6](https://github.com/module-federation/universe/commit/fa05dd6bce2dd577b1e3fd84533459a04dbe195a)) -* **enhanced:** Support Async Mode and option ([3c33b8e](https://github.com/module-federation/universe/commit/3c33b8ea3b483de5dcc3e5da9fb40c9826fdb7f7)) +- **enhanced:** new async boundary plugin design ([a4ac1ac](https://github.com/module-federation/universe/commit/a4ac1acff974f74db6395c31134de14d9c344b6f)) +- **enhanced:** Rewrite Async Boundary based on bytedance version ([fa05dd6](https://github.com/module-federation/universe/commit/fa05dd6bce2dd577b1e3fd84533459a04dbe195a)) +- **enhanced:** Support Async Mode and option ([3c33b8e](https://github.com/module-federation/universe/commit/3c33b8ea3b483de5dcc3e5da9fb40c9826fdb7f7)) # [8.1.0-canary.1](https://github.com/module-federation/universe/compare/nextjs-mf-8.0.0...nextjs-mf-8.1.0-canary.1) (2023-10-23) diff --git a/packages/node/CHANGELOG.md b/packages/node/CHANGELOG.md index 7f373cf8ad2..e78163f58fa 100644 --- a/packages/node/CHANGELOG.md +++ b/packages/node/CHANGELOG.md @@ -1,98 +1,96 @@ # [2.1.0-canary.1](https://github.com/module-federation/universe/compare/node-2.0.1...node-2.1.0-canary.1) (2023-11-06) - ### Bug Fixes -* add exported file ([19b1afb](https://github.com/module-federation/universe/commit/19b1afbd58572897f36b16926f841e35d154c712)) -* add missing serialize method on RemoteModule ([e7ac801](https://github.com/module-federation/universe/commit/e7ac801151b08dbb5ca025bd8ac03683f792f92f)) -* add override to remoteModule ([875038a](https://github.com/module-federation/universe/commit/875038ad68dfed05822c1bc7c68ae91e57282f4f)) -* Auto Public Path, detect multiple output targets ([65f17b1](https://github.com/module-federation/universe/commit/65f17b189f37e0ad9e72bb0bf04463e9c5455929)) -* bad impleentation during federation port ([cc2e53f](https://github.com/module-federation/universe/commit/cc2e53f0351fb94c9068223ad6b8d990a913ab53)) -* broken versioning issues in consumes ([e7fada2](https://github.com/module-federation/universe/commit/e7fada211b1e58dc52eafeff4210a9ce62636f9d)) -* change exports for module info runtime ([f40c538](https://github.com/module-federation/universe/commit/f40c538221353a61938cadf624c9235ec8eb4cce)) -* chunk flushing ([c9df545](https://github.com/module-federation/universe/commit/c9df5451c84e6458b392884492bf669bf7383d5c)) -* **deps:** update dependency axios to v1.5.1 ([ae9a06a](https://github.com/module-federation/universe/commit/ae9a06a0cc35fad27a0b493a25370b92617c39fb)) -* **deps:** update dependency core-js to v3.33.0 ([30894ca](https://github.com/module-federation/universe/commit/30894cafbe5dea4350dc7c633548038d7ec5f8a8)) -* **deps:** update dependency typedoc to v0.25.2 ([46c6524](https://github.com/module-federation/universe/commit/46c65247e187cee9e15625402c1570ac351bb1fe)) -* **deps:** update dependency undici to v5.25.2 ([da3e539](https://github.com/module-federation/universe/commit/da3e539a41ed23ccb5086b1dd428fbee0f8d652c)) -* **deps:** update dependency undici to v5.25.4 ([1d4f91e](https://github.com/module-federation/universe/commit/1d4f91ec93da4326c8a42eef28f150d5d09738bb)) -* **deps:** update dependency undici to v5.26.2 [security] ([410a8b8](https://github.com/module-federation/universe/commit/410a8b8bd1558dfb5119ae10941d2b3816a0d0e0)) -* **deps:** update dependency unplugin to v1.5.0 ([936b3f8](https://github.com/module-federation/universe/commit/936b3f8d8061fd9d481d1788fb35b88588928d14)) -* dont crash offline remotes ([f0d7671](https://github.com/module-federation/universe/commit/f0d7671569ac34f64017a303739b54880f5220e6)) -* **enhanced:** module info duplication ([49b4a57](https://github.com/module-federation/universe/commit/49b4a5736714c1db4510d10cdd5fe0277123caa8)) -* **enhanced:** syntax issue in proxy ([2e5848b](https://github.com/module-federation/universe/commit/2e5848b4be3e3bba46508a427c1bc8f2d3043c8d)) -* ensure chunk handler exists before calling it ([98ba838](https://github.com/module-federation/universe/commit/98ba838f979bbef11f5d678c3bf27a4de534cf9d)) -* ensure custom FS works with target: node or async node preset ([a08fcab](https://github.com/module-federation/universe/commit/a08fcab7dde903966d34be9dab0b34c8896948ca)) -* export parseRemotes ([12ed54c](https://github.com/module-federation/universe/commit/12ed54c87ba539bc2a79cdee86058f0a2776653e)) -* hot reloading system ([99f733b](https://github.com/module-federation/universe/commit/99f733bbdbd727a99fbaaeab3f92f4b65fa568dd)) -* import utils manually ([2767191](https://github.com/module-federation/universe/commit/2767191467d9d685704b747d42b5f170da233847)) -* improve backward compat __remote_scope__ global ([ac0efa3](https://github.com/module-federation/universe/commit/ac0efa37d975a130aa3badc657fa66d723865a5b)) -* improve logic in runtime module info proxy ([8eea1a8](https://github.com/module-federation/universe/commit/8eea1a84ae6a12f69dbb16d00f52ec902efbdda6)) -* legacy scope duplication on recreation ([347e4c9](https://github.com/module-federation/universe/commit/347e4c96e87ff4f28dce319fc6b2fe40f1cbabee)) -* no external helpers ([6c47fd4](https://github.com/module-federation/universe/commit/6c47fd4ce19f2292f6718d201005fba4a8552252)) -* **node:** use ES6 imports and override method in FederationModuleInfoRuntimeModule (#bytedance) ([d420ad9](https://github.com/module-federation/universe/commit/d420ad94b7515123254af45c61704abcc0971511)) -* override semantic-release-plugin-decorators ([18675de](https://github.com/module-federation/universe/commit/18675defef65570d2b3bb6a9caa3fd039badee29)) -* package data ([992d298](https://github.com/module-federation/universe/commit/992d2985c29d0bf86de6739f728fbf64749e7fd0)) -* remote global share scope ([e05d32f](https://github.com/module-federation/universe/commit/e05d32f489880d6b4e0fc21a3807e619a40bc5b3)) -* remove ensure remote runtime module ([d06c082](https://github.com/module-federation/universe/commit/d06c0823435063dcd277897ab551cd3a9c996d3d)) -* remove logger in filesystem ([c370ed5](https://github.com/module-federation/universe/commit/c370ed5fdc5fe3423703f29daa40a4227ac51cf2)) -* remove logging on DFS ([40b8c28](https://github.com/module-federation/universe/commit/40b8c28fac9c39fec8623415a36e487152c2ef34)) -* remove logs from flush chunks ([b7d317c](https://github.com/module-federation/universe/commit/b7d317c4b2b0eda2f3530315dbf471289fa6918b)) -* search registry for both ident and unique name ([f22dc25](https://github.com/module-federation/universe/commit/f22dc25e5a6374273b1bc51b0e101b57226c5906)) -* simplify template ([b4e633b](https://github.com/module-federation/universe/commit/b4e633b6624264456800bc7351c6d815430d42b5)) -* stats plugin updates ([c1db325](https://github.com/module-federation/universe/commit/c1db325d3311b2126964f4ad2ddbfa9d82a50674)) -* switch to @goestav/nx-semantic-release ([63a3350](https://github.com/module-federation/universe/commit/63a3350a6a1a12235e3c9f1e7c724d54f0476356)) -* Ts import error ([6e7974c](https://github.com/module-federation/universe/commit/6e7974c22874378122ab31eea27dddd0604505db)) -* TS imports to webpack ([d506b49](https://github.com/module-federation/universe/commit/d506b492b724ccfb7fdcf6234196ac421564c153)) -* TS imports, missing module methods ([8eb422d](https://github.com/module-federation/universe/commit/8eb422d30e149cb0d96835f036ec73ce1ccafe53)) -* ts in template string ([579b341](https://github.com/module-federation/universe/commit/579b341a5eb38ca6396da15f9667729ab84d2ff6)) -* ts in template string ([37e790a](https://github.com/module-federation/universe/commit/37e790a7b46ff6d8c8fd2c12cfd5629900db1b53)) -* ts in template string ([0edbbea](https://github.com/module-federation/universe/commit/0edbbeaa42503237b88132252e29a34a79bade51)) -* ts in template string ([1d56efd](https://github.com/module-federation/universe/commit/1d56efdf3d0bc78d19d187fe561fbbf453bada87)) -* ts in template string ([9b8f652](https://github.com/module-federation/universe/commit/9b8f652f96bf6f29d5fc238bb616e19187158a57)) -* ts in template string ([113d703](https://github.com/module-federation/universe/commit/113d7037de8238ed0bcf9418ac1bf3d082fbea66)) -* typescript issues ([0a07481](https://github.com/module-federation/universe/commit/0a07481552e1df6b35506165cbc649996004c318)) - +- add exported file ([19b1afb](https://github.com/module-federation/universe/commit/19b1afbd58572897f36b16926f841e35d154c712)) +- add missing serialize method on RemoteModule ([e7ac801](https://github.com/module-federation/universe/commit/e7ac801151b08dbb5ca025bd8ac03683f792f92f)) +- add override to remoteModule ([875038a](https://github.com/module-federation/universe/commit/875038ad68dfed05822c1bc7c68ae91e57282f4f)) +- Auto Public Path, detect multiple output targets ([65f17b1](https://github.com/module-federation/universe/commit/65f17b189f37e0ad9e72bb0bf04463e9c5455929)) +- bad impleentation during federation port ([cc2e53f](https://github.com/module-federation/universe/commit/cc2e53f0351fb94c9068223ad6b8d990a913ab53)) +- broken versioning issues in consumes ([e7fada2](https://github.com/module-federation/universe/commit/e7fada211b1e58dc52eafeff4210a9ce62636f9d)) +- change exports for module info runtime ([f40c538](https://github.com/module-federation/universe/commit/f40c538221353a61938cadf624c9235ec8eb4cce)) +- chunk flushing ([c9df545](https://github.com/module-federation/universe/commit/c9df5451c84e6458b392884492bf669bf7383d5c)) +- **deps:** update dependency axios to v1.5.1 ([ae9a06a](https://github.com/module-federation/universe/commit/ae9a06a0cc35fad27a0b493a25370b92617c39fb)) +- **deps:** update dependency core-js to v3.33.0 ([30894ca](https://github.com/module-federation/universe/commit/30894cafbe5dea4350dc7c633548038d7ec5f8a8)) +- **deps:** update dependency typedoc to v0.25.2 ([46c6524](https://github.com/module-federation/universe/commit/46c65247e187cee9e15625402c1570ac351bb1fe)) +- **deps:** update dependency undici to v5.25.2 ([da3e539](https://github.com/module-federation/universe/commit/da3e539a41ed23ccb5086b1dd428fbee0f8d652c)) +- **deps:** update dependency undici to v5.25.4 ([1d4f91e](https://github.com/module-federation/universe/commit/1d4f91ec93da4326c8a42eef28f150d5d09738bb)) +- **deps:** update dependency undici to v5.26.2 [security] ([410a8b8](https://github.com/module-federation/universe/commit/410a8b8bd1558dfb5119ae10941d2b3816a0d0e0)) +- **deps:** update dependency unplugin to v1.5.0 ([936b3f8](https://github.com/module-federation/universe/commit/936b3f8d8061fd9d481d1788fb35b88588928d14)) +- dont crash offline remotes ([f0d7671](https://github.com/module-federation/universe/commit/f0d7671569ac34f64017a303739b54880f5220e6)) +- **enhanced:** module info duplication ([49b4a57](https://github.com/module-federation/universe/commit/49b4a5736714c1db4510d10cdd5fe0277123caa8)) +- **enhanced:** syntax issue in proxy ([2e5848b](https://github.com/module-federation/universe/commit/2e5848b4be3e3bba46508a427c1bc8f2d3043c8d)) +- ensure chunk handler exists before calling it ([98ba838](https://github.com/module-federation/universe/commit/98ba838f979bbef11f5d678c3bf27a4de534cf9d)) +- ensure custom FS works with target: node or async node preset ([a08fcab](https://github.com/module-federation/universe/commit/a08fcab7dde903966d34be9dab0b34c8896948ca)) +- export parseRemotes ([12ed54c](https://github.com/module-federation/universe/commit/12ed54c87ba539bc2a79cdee86058f0a2776653e)) +- hot reloading system ([99f733b](https://github.com/module-federation/universe/commit/99f733bbdbd727a99fbaaeab3f92f4b65fa568dd)) +- import utils manually ([2767191](https://github.com/module-federation/universe/commit/2767191467d9d685704b747d42b5f170da233847)) +- improve backward compat **remote_scope** global ([ac0efa3](https://github.com/module-federation/universe/commit/ac0efa37d975a130aa3badc657fa66d723865a5b)) +- improve logic in runtime module info proxy ([8eea1a8](https://github.com/module-federation/universe/commit/8eea1a84ae6a12f69dbb16d00f52ec902efbdda6)) +- legacy scope duplication on recreation ([347e4c9](https://github.com/module-federation/universe/commit/347e4c96e87ff4f28dce319fc6b2fe40f1cbabee)) +- no external helpers ([6c47fd4](https://github.com/module-federation/universe/commit/6c47fd4ce19f2292f6718d201005fba4a8552252)) +- **node:** use ES6 imports and override method in FederationModuleInfoRuntimeModule (#bytedance) ([d420ad9](https://github.com/module-federation/universe/commit/d420ad94b7515123254af45c61704abcc0971511)) +- override semantic-release-plugin-decorators ([18675de](https://github.com/module-federation/universe/commit/18675defef65570d2b3bb6a9caa3fd039badee29)) +- package data ([992d298](https://github.com/module-federation/universe/commit/992d2985c29d0bf86de6739f728fbf64749e7fd0)) +- remote global share scope ([e05d32f](https://github.com/module-federation/universe/commit/e05d32f489880d6b4e0fc21a3807e619a40bc5b3)) +- remove ensure remote runtime module ([d06c082](https://github.com/module-federation/universe/commit/d06c0823435063dcd277897ab551cd3a9c996d3d)) +- remove logger in filesystem ([c370ed5](https://github.com/module-federation/universe/commit/c370ed5fdc5fe3423703f29daa40a4227ac51cf2)) +- remove logging on DFS ([40b8c28](https://github.com/module-federation/universe/commit/40b8c28fac9c39fec8623415a36e487152c2ef34)) +- remove logs from flush chunks ([b7d317c](https://github.com/module-federation/universe/commit/b7d317c4b2b0eda2f3530315dbf471289fa6918b)) +- search registry for both ident and unique name ([f22dc25](https://github.com/module-federation/universe/commit/f22dc25e5a6374273b1bc51b0e101b57226c5906)) +- simplify template ([b4e633b](https://github.com/module-federation/universe/commit/b4e633b6624264456800bc7351c6d815430d42b5)) +- stats plugin updates ([c1db325](https://github.com/module-federation/universe/commit/c1db325d3311b2126964f4ad2ddbfa9d82a50674)) +- switch to @goestav/nx-semantic-release ([63a3350](https://github.com/module-federation/universe/commit/63a3350a6a1a12235e3c9f1e7c724d54f0476356)) +- Ts import error ([6e7974c](https://github.com/module-federation/universe/commit/6e7974c22874378122ab31eea27dddd0604505db)) +- TS imports to webpack ([d506b49](https://github.com/module-federation/universe/commit/d506b492b724ccfb7fdcf6234196ac421564c153)) +- TS imports, missing module methods ([8eb422d](https://github.com/module-federation/universe/commit/8eb422d30e149cb0d96835f036ec73ce1ccafe53)) +- ts in template string ([579b341](https://github.com/module-federation/universe/commit/579b341a5eb38ca6396da15f9667729ab84d2ff6)) +- ts in template string ([37e790a](https://github.com/module-federation/universe/commit/37e790a7b46ff6d8c8fd2c12cfd5629900db1b53)) +- ts in template string ([0edbbea](https://github.com/module-federation/universe/commit/0edbbeaa42503237b88132252e29a34a79bade51)) +- ts in template string ([1d56efd](https://github.com/module-federation/universe/commit/1d56efdf3d0bc78d19d187fe561fbbf453bada87)) +- ts in template string ([9b8f652](https://github.com/module-federation/universe/commit/9b8f652f96bf6f29d5fc238bb616e19187158a57)) +- ts in template string ([113d703](https://github.com/module-federation/universe/commit/113d7037de8238ed0bcf9418ac1bf3d082fbea66)) +- typescript issues ([0a07481](https://github.com/module-federation/universe/commit/0a07481552e1df6b35506165cbc649996004c318)) ### Features -* add auto public path support for remote modules (node_auto_public_path) ([b12c984](https://github.com/module-federation/universe/commit/b12c9841aa55027cb7b77e768ff9c0b456120d51)) -* additional plugin exports ([0604461](https://github.com/module-federation/universe/commit/0604461ea8806d4e064955f5edef571a9a45d8d0)) -* AddRuntimeRequirementToPromiseExternal ([9bc5a20](https://github.com/module-federation/universe/commit/9bc5a20b54228de7d1f2554eee10360a34e8d8a1)) -* AsyncBoundaryPlugin ([00227ca](https://github.com/module-federation/universe/commit/00227cabf3a1e7286148e84d5714e020391771f7)) -* checkInvalidContext as tapable hook ([a3eb553](https://github.com/module-federation/universe/commit/a3eb5537ff462ead2230615f578569ec46199f50)) -* **ContainerEntryModule:** fix TypeScript issue, enhance needBuild method [#398](https://github.com/module-federation/universe/issues/398)a60e ([c561e11](https://github.com/module-federation/universe/commit/c561e111a54b253fd194c3b75041577dda50ad4b)), closes [#398a60](https://github.com/module-federation/universe/issues/398a60) -* create and expose AutomaticPublicPathPlugin.ts ([9d0fcdd](https://github.com/module-federation/universe/commit/9d0fcdd2e36fae971f2eec3269980baedf276b35)) -* Dynamic Filesystem ([#1274](https://github.com/module-federation/universe/issues/1274)) ([2bec98a](https://github.com/module-federation/universe/commit/2bec98a2472b44898a7f14ec6868a2368cfb6d82)) -* **enhanced:** Fork Module Federation ([8682990](https://github.com/module-federation/universe/commit/8682990e7fec6309ce20572958916f747737af90)) -* **enhanced:** new async boundary plugin design ([a4ac1ac](https://github.com/module-federation/universe/commit/a4ac1acff974f74db6395c31134de14d9c344b6f)) -* **enhanced:** Refactor ContainerEntryDependency and ContainerEntryModule for better code readability and maintainability ([e93e7d2](https://github.com/module-federation/universe/commit/e93e7d2fafe2e22f7d2c613095ce1900d7531f29)) -* **enhanced:** Rewrite Async Boundary based on bytedance version ([fa05dd6](https://github.com/module-federation/universe/commit/fa05dd6bce2dd577b1e3fd84533459a04dbe195a)) -* **enhanced:** Support Async Mode and option ([3c33b8e](https://github.com/module-federation/universe/commit/3c33b8ea3b483de5dcc3e5da9fb40c9826fdb7f7)) -* FederationModuleInfo Runtime Module ([50a1a0c](https://github.com/module-federation/universe/commit/50a1a0c7a37bbe42ab6f2f5559b411567fee0fe9)) -* FederationModuleInfo Runtime Module ([7b09ef6](https://github.com/module-federation/universe/commit/7b09ef6c0f4ee68a1b5caa5f021632059c522b8f)) -* fork module federation ([0ad7430](https://github.com/module-federation/universe/commit/0ad7430f6170458a47144be392133b7b2fa1ade0)) -* implement Bytedance Infra Node Plugin ([82e6801](https://github.com/module-federation/universe/commit/82e680157bbad68fa93800a69149c4c28652cfed)) -* implement Bytedance Infra Node Plugin ([97f283e](https://github.com/module-federation/universe/commit/97f283e4746bf6f048ee27584adde5249c8e577c)) -* improve options logic in node federation plugin ([b69b70d](https://github.com/module-federation/universe/commit/b69b70d200c63e3557089e8a0669fc43330c988c)) -* improved async init ([17b1419](https://github.com/module-federation/universe/commit/17b1419ef31ec5661fa06b9f0c297e2771e2a86c)) -* improved async init ([bb19b07](https://github.com/module-federation/universe/commit/bb19b07b5be1bbc28bd6b049ea7aea6510ad17a2)) -* improved async init ([ae3a450](https://github.com/module-federation/universe/commit/ae3a4503ff9de86492b13029d6334b281ddd9493)) -* improved async init ([019694e](https://github.com/module-federation/universe/commit/019694e55fe1f6bebfdab0701bf9087bf0034b8f)) -* native self forming node federation ([#1291](https://github.com/module-federation/universe/issues/1291)) ([1dd5ed1](https://github.com/module-federation/universe/commit/1dd5ed17c981e036336925e807203e94b58c36d6)) -* new actions, remove gpt integration ([370229e](https://github.com/module-federation/universe/commit/370229e02cc352fcfaeaa0f3cf1f9f2d4966d1bb)) -* **node-remote:** Improve module federation runtime compatibility ([5eb2092](https://github.com/module-federation/universe/commit/5eb209249c44d525c12eff5739bf23a93db08e4f)) -* **node:** auto set public path and improve chunk loading strategy #node_auto_public_path ([65989da](https://github.com/module-federation/universe/commit/65989dab95ee2acee7ec9a5ab321921a278cd078)) -* **node:** enhance error handling and remote container registry in RemotePublicPathRuntimeModule (#bytedance) ([061285e](https://github.com/module-federation/universe/commit/061285e0b6210baa1dd502dc94fd57fd9a8af822)) -* **NodeFederationPlugin:** assign remoteContainerRegistry to importMetaName ([ca33d98](https://github.com/module-federation/universe/commit/ca33d98df63fdb8dac402b1cc0ec8bf95f9f1971)) -* **node:** remove unused import from DynamicFilesystemRuntimeModule ([f9787a9](https://github.com/module-federation/universe/commit/f9787a9a67da936679db388e5c66e012e7452d8a)) -* remove old loadScript hack ([fbe19bc](https://github.com/module-federation/universe/commit/fbe19bc76694c14b6a95c577669c2e8656ede1ba)) -* Static fallback to non auto public path ([3c58780](https://github.com/module-federation/universe/commit/3c587809f1e936fba291eab3d7c790115be5102c)) -* support lazy compilation ([29c234c](https://github.com/module-federation/universe/commit/29c234c14315e000acefc60d635ee486205ca83e)) -* support vmok conventions ([0501da8](https://github.com/module-federation/universe/commit/0501da86eaaab6ea79a3397c2c683086cc591309)) -* support vmok conventions ([d53b586](https://github.com/module-federation/universe/commit/d53b5867719eb7fff32bee2edd3255023d598f44)) -* Use enhanced Federation Plugin ([e021d66](https://github.com/module-federation/universe/commit/e021d6667996962f154137d164bed13f53a6a135)) -* **utilities:** update DelegateModulesPlugin and tests (#node_auto_public_path) ([df8bb79](https://github.com/module-federation/universe/commit/df8bb791c3fedef299cb15960546ff5ad9c665ef)) +- add auto public path support for remote modules (node_auto_public_path) ([b12c984](https://github.com/module-federation/universe/commit/b12c9841aa55027cb7b77e768ff9c0b456120d51)) +- additional plugin exports ([0604461](https://github.com/module-federation/universe/commit/0604461ea8806d4e064955f5edef571a9a45d8d0)) +- AddRuntimeRequirementToPromiseExternal ([9bc5a20](https://github.com/module-federation/universe/commit/9bc5a20b54228de7d1f2554eee10360a34e8d8a1)) +- AsyncBoundaryPlugin ([00227ca](https://github.com/module-federation/universe/commit/00227cabf3a1e7286148e84d5714e020391771f7)) +- checkInvalidContext as tapable hook ([a3eb553](https://github.com/module-federation/universe/commit/a3eb5537ff462ead2230615f578569ec46199f50)) +- **ContainerEntryModule:** fix TypeScript issue, enhance needBuild method [#398](https://github.com/module-federation/universe/issues/398)a60e ([c561e11](https://github.com/module-federation/universe/commit/c561e111a54b253fd194c3b75041577dda50ad4b)), closes [#398a60](https://github.com/module-federation/universe/issues/398a60) +- create and expose AutomaticPublicPathPlugin.ts ([9d0fcdd](https://github.com/module-federation/universe/commit/9d0fcdd2e36fae971f2eec3269980baedf276b35)) +- Dynamic Filesystem ([#1274](https://github.com/module-federation/universe/issues/1274)) ([2bec98a](https://github.com/module-federation/universe/commit/2bec98a2472b44898a7f14ec6868a2368cfb6d82)) +- **enhanced:** Fork Module Federation ([8682990](https://github.com/module-federation/universe/commit/8682990e7fec6309ce20572958916f747737af90)) +- **enhanced:** new async boundary plugin design ([a4ac1ac](https://github.com/module-federation/universe/commit/a4ac1acff974f74db6395c31134de14d9c344b6f)) +- **enhanced:** Refactor ContainerEntryDependency and ContainerEntryModule for better code readability and maintainability ([e93e7d2](https://github.com/module-federation/universe/commit/e93e7d2fafe2e22f7d2c613095ce1900d7531f29)) +- **enhanced:** Rewrite Async Boundary based on bytedance version ([fa05dd6](https://github.com/module-federation/universe/commit/fa05dd6bce2dd577b1e3fd84533459a04dbe195a)) +- **enhanced:** Support Async Mode and option ([3c33b8e](https://github.com/module-federation/universe/commit/3c33b8ea3b483de5dcc3e5da9fb40c9826fdb7f7)) +- FederationModuleInfo Runtime Module ([50a1a0c](https://github.com/module-federation/universe/commit/50a1a0c7a37bbe42ab6f2f5559b411567fee0fe9)) +- FederationModuleInfo Runtime Module ([7b09ef6](https://github.com/module-federation/universe/commit/7b09ef6c0f4ee68a1b5caa5f021632059c522b8f)) +- fork module federation ([0ad7430](https://github.com/module-federation/universe/commit/0ad7430f6170458a47144be392133b7b2fa1ade0)) +- implement Bytedance Infra Node Plugin ([82e6801](https://github.com/module-federation/universe/commit/82e680157bbad68fa93800a69149c4c28652cfed)) +- implement Bytedance Infra Node Plugin ([97f283e](https://github.com/module-federation/universe/commit/97f283e4746bf6f048ee27584adde5249c8e577c)) +- improve options logic in node federation plugin ([b69b70d](https://github.com/module-federation/universe/commit/b69b70d200c63e3557089e8a0669fc43330c988c)) +- improved async init ([17b1419](https://github.com/module-federation/universe/commit/17b1419ef31ec5661fa06b9f0c297e2771e2a86c)) +- improved async init ([bb19b07](https://github.com/module-federation/universe/commit/bb19b07b5be1bbc28bd6b049ea7aea6510ad17a2)) +- improved async init ([ae3a450](https://github.com/module-federation/universe/commit/ae3a4503ff9de86492b13029d6334b281ddd9493)) +- improved async init ([019694e](https://github.com/module-federation/universe/commit/019694e55fe1f6bebfdab0701bf9087bf0034b8f)) +- native self forming node federation ([#1291](https://github.com/module-federation/universe/issues/1291)) ([1dd5ed1](https://github.com/module-federation/universe/commit/1dd5ed17c981e036336925e807203e94b58c36d6)) +- new actions, remove gpt integration ([370229e](https://github.com/module-federation/universe/commit/370229e02cc352fcfaeaa0f3cf1f9f2d4966d1bb)) +- **node-remote:** Improve module federation runtime compatibility ([5eb2092](https://github.com/module-federation/universe/commit/5eb209249c44d525c12eff5739bf23a93db08e4f)) +- **node:** auto set public path and improve chunk loading strategy #node_auto_public_path ([65989da](https://github.com/module-federation/universe/commit/65989dab95ee2acee7ec9a5ab321921a278cd078)) +- **node:** enhance error handling and remote container registry in RemotePublicPathRuntimeModule (#bytedance) ([061285e](https://github.com/module-federation/universe/commit/061285e0b6210baa1dd502dc94fd57fd9a8af822)) +- **NodeFederationPlugin:** assign remoteContainerRegistry to importMetaName ([ca33d98](https://github.com/module-federation/universe/commit/ca33d98df63fdb8dac402b1cc0ec8bf95f9f1971)) +- **node:** remove unused import from DynamicFilesystemRuntimeModule ([f9787a9](https://github.com/module-federation/universe/commit/f9787a9a67da936679db388e5c66e012e7452d8a)) +- remove old loadScript hack ([fbe19bc](https://github.com/module-federation/universe/commit/fbe19bc76694c14b6a95c577669c2e8656ede1ba)) +- Static fallback to non auto public path ([3c58780](https://github.com/module-federation/universe/commit/3c587809f1e936fba291eab3d7c790115be5102c)) +- support lazy compilation ([29c234c](https://github.com/module-federation/universe/commit/29c234c14315e000acefc60d635ee486205ca83e)) +- support vmok conventions ([0501da8](https://github.com/module-federation/universe/commit/0501da86eaaab6ea79a3397c2c683086cc591309)) +- support vmok conventions ([d53b586](https://github.com/module-federation/universe/commit/d53b5867719eb7fff32bee2edd3255023d598f44)) +- Use enhanced Federation Plugin ([e021d66](https://github.com/module-federation/universe/commit/e021d6667996962f154137d164bed13f53a6a135)) +- **utilities:** update DelegateModulesPlugin and tests (#node_auto_public_path) ([df8bb79](https://github.com/module-federation/universe/commit/df8bb791c3fedef299cb15960546ff5ad9c665ef)) # Changelog diff --git a/packages/typescript/CHANGELOG.md b/packages/typescript/CHANGELOG.md index 28af351a25a..e0404cee91e 100644 --- a/packages/typescript/CHANGELOG.md +++ b/packages/typescript/CHANGELOG.md @@ -11,20 +11,18 @@ # [3.1.0](https://github.com/module-federation/universe/compare/typescript-3.0.1...typescript-3.1.0) (2023-11-13) - ### Bug Fixes -* add missing comma ([541dd28](https://github.com/module-federation/universe/commit/541dd28959dae614e8dc2717eafe2c567cdda1f6)) -* **deps:** update dependency typedoc to v0.25.2 ([46c6524](https://github.com/module-federation/universe/commit/46c65247e187cee9e15625402c1570ac351bb1fe)) -* **deps:** update dependency undici to v5.26.2 [security] ([410a8b8](https://github.com/module-federation/universe/commit/410a8b8bd1558dfb5119ae10941d2b3816a0d0e0)) -* override semantic-release-plugin-decorators ([18675de](https://github.com/module-federation/universe/commit/18675defef65570d2b3bb6a9caa3fd039badee29)) -* switch to @goestav/nx-semantic-release ([63a3350](https://github.com/module-federation/universe/commit/63a3350a6a1a12235e3c9f1e7c724d54f0476356)) - +- add missing comma ([541dd28](https://github.com/module-federation/universe/commit/541dd28959dae614e8dc2717eafe2c567cdda1f6)) +- **deps:** update dependency typedoc to v0.25.2 ([46c6524](https://github.com/module-federation/universe/commit/46c65247e187cee9e15625402c1570ac351bb1fe)) +- **deps:** update dependency undici to v5.26.2 [security] ([410a8b8](https://github.com/module-federation/universe/commit/410a8b8bd1558dfb5119ae10941d2b3816a0d0e0)) +- override semantic-release-plugin-decorators ([18675de](https://github.com/module-federation/universe/commit/18675defef65570d2b3bb6a9caa3fd039badee29)) +- switch to @goestav/nx-semantic-release ([63a3350](https://github.com/module-federation/universe/commit/63a3350a6a1a12235e3c9f1e7c724d54f0476356)) ### Features -* add test setup to typescript package ([bccb789](https://github.com/module-federation/universe/commit/bccb7893d321357e5de54752d30e9b18ba6e5f0d)) -* new actions, remove gpt integration ([370229e](https://github.com/module-federation/universe/commit/370229e02cc352fcfaeaa0f3cf1f9f2d4966d1bb)) +- add test setup to typescript package ([bccb789](https://github.com/module-federation/universe/commit/bccb7893d321357e5de54752d30e9b18ba6e5f0d)) +- new actions, remove gpt integration ([370229e](https://github.com/module-federation/universe/commit/370229e02cc352fcfaeaa0f3cf1f9f2d4966d1bb)) # Changelog From 382318f0635734d3fa1247d4b5be67c1235a63c5 Mon Sep 17 00:00:00 2001 From: ScriptedAlchemy Date: Tue, 7 Nov 2023 00:32:42 -0800 Subject: [PATCH 026/185] fix: issues with integrated runtime chunk --- packages/enhanced/src/lib/container/AsyncBoundaryPlugin.ts | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/packages/enhanced/src/lib/container/AsyncBoundaryPlugin.ts b/packages/enhanced/src/lib/container/AsyncBoundaryPlugin.ts index bc8ef58862f..2e2b972539c 100644 --- a/packages/enhanced/src/lib/container/AsyncBoundaryPlugin.ts +++ b/packages/enhanced/src/lib/container/AsyncBoundaryPlugin.ts @@ -59,7 +59,12 @@ class AsyncEntryStartupPlugin { 'AsyncEntryStartupPlugin', (source: any, renderContext: Module, upperContext: { chunk: Chunk }) => { // Check if this._runtimeChunks contains any runtime chunks - if (this._runtimeChunks.size > 0 && upperContext.chunk.id) { + const isSingleRuntime = compiler.options?.optimization?.runtimeChunk; + if ( + this._runtimeChunks.size > 0 && + upperContext.chunk.id && + isSingleRuntime + ) { if (upperContext?.chunk.hasRuntime()) { this._runtimeChunks.set(upperContext.chunk.id, upperContext.chunk); return source; From 977eaf9024e95fe5318b2abf58e83a6938a5288e Mon Sep 17 00:00:00 2001 From: ScriptedAlchemy Date: Tue, 7 Nov 2023 00:41:08 -0800 Subject: [PATCH 027/185] fix: issues with integrated runtime chunk --- packages/enhanced/src/lib/container/AsyncBoundaryPlugin.ts | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/packages/enhanced/src/lib/container/AsyncBoundaryPlugin.ts b/packages/enhanced/src/lib/container/AsyncBoundaryPlugin.ts index 2e2b972539c..f2cb383253b 100644 --- a/packages/enhanced/src/lib/container/AsyncBoundaryPlugin.ts +++ b/packages/enhanced/src/lib/container/AsyncBoundaryPlugin.ts @@ -61,8 +61,7 @@ class AsyncEntryStartupPlugin { // Check if this._runtimeChunks contains any runtime chunks const isSingleRuntime = compiler.options?.optimization?.runtimeChunk; if ( - this._runtimeChunks.size > 0 && - upperContext.chunk.id && + upperContext?.chunk.id && isSingleRuntime ) { if (upperContext?.chunk.hasRuntime()) { From ece910c51a63375a2dae537b7ec44c1b56af052a Mon Sep 17 00:00:00 2001 From: ScriptedAlchemy Date: Tue, 7 Nov 2023 00:44:42 -0800 Subject: [PATCH 028/185] fix: issues with integrated runtime chunk --- packages/enhanced/src/lib/container/AsyncBoundaryPlugin.ts | 5 +---- 1 file changed, 1 insertion(+), 4 deletions(-) diff --git a/packages/enhanced/src/lib/container/AsyncBoundaryPlugin.ts b/packages/enhanced/src/lib/container/AsyncBoundaryPlugin.ts index f2cb383253b..0207a56ed64 100644 --- a/packages/enhanced/src/lib/container/AsyncBoundaryPlugin.ts +++ b/packages/enhanced/src/lib/container/AsyncBoundaryPlugin.ts @@ -60,10 +60,7 @@ class AsyncEntryStartupPlugin { (source: any, renderContext: Module, upperContext: { chunk: Chunk }) => { // Check if this._runtimeChunks contains any runtime chunks const isSingleRuntime = compiler.options?.optimization?.runtimeChunk; - if ( - upperContext?.chunk.id && - isSingleRuntime - ) { + if (upperContext?.chunk.id && isSingleRuntime) { if (upperContext?.chunk.hasRuntime()) { this._runtimeChunks.set(upperContext.chunk.id, upperContext.chunk); return source; From 9d470dd2bd17d821fdbdf4e1e6f28cbc6126d371 Mon Sep 17 00:00:00 2001 From: semantic-release-bot Date: Tue, 7 Nov 2023 09:10:41 +0000 Subject: [PATCH 029/185] chore(release): Release enhanced v0.2.0-canary.2 [skip ci] --- packages/enhanced/CHANGELOG.md | 14 ++++++++++++++ packages/enhanced/package.json | 2 +- 2 files changed, 15 insertions(+), 1 deletion(-) diff --git a/packages/enhanced/CHANGELOG.md b/packages/enhanced/CHANGELOG.md index 0e8355b75c9..22b1835538e 100644 --- a/packages/enhanced/CHANGELOG.md +++ b/packages/enhanced/CHANGELOG.md @@ -1,3 +1,17 @@ +# [0.2.0-canary.2](https://github.com/module-federation/universe/compare/enhanced-0.2.0-canary.1...enhanced-0.2.0-canary.2) (2023-11-07) + + +### Bug Fixes + +* issues with integrated runtime chunk ([edc4d97](https://github.com/module-federation/universe/commit/edc4d97393c8ad04adecc53062f40a80735defb7)) +* issues with integrated runtime chunk ([d4fa90d](https://github.com/module-federation/universe/commit/d4fa90de214e5b15957c208436878d82ce223a22)) +* issues with integrated runtime chunk ([aa1b137](https://github.com/module-federation/universe/commit/aa1b13791e353433d2a219addbef1443b853c2f0)) + + +### Features + +* **enhanced:** AsyncBoundary support ESM targets and remix_run framework outputs ([0100694](https://github.com/module-federation/universe/commit/0100694a07044460dc44a73cfb4ecff619177457)) + # [0.2.0-canary.1](https://github.com/module-federation/universe/compare/enhanced-0.1.0...enhanced-0.2.0-canary.1) (2023-11-06) ### Bug Fixes diff --git a/packages/enhanced/package.json b/packages/enhanced/package.json index 77055051ef5..cfda51fc858 100644 --- a/packages/enhanced/package.json +++ b/packages/enhanced/package.json @@ -1,6 +1,6 @@ { "name": "@module-federation/enhanced", - "version": "0.2.0-canary.1", + "version": "0.2.0-canary.2", "type": "commonjs", "main": "src/index.js", "types": "src/index.d.ts", From 32c03b998db7386001f9e7aa9e512dd184558db9 Mon Sep 17 00:00:00 2001 From: semantic-release-bot Date: Tue, 7 Nov 2023 09:10:44 +0000 Subject: [PATCH 030/185] chore(release): Release node v2.1.0-canary.2 [skip ci] --- packages/node/CHANGELOG.md | 14 ++++++++++++++ packages/node/package.json | 2 +- 2 files changed, 15 insertions(+), 1 deletion(-) diff --git a/packages/node/CHANGELOG.md b/packages/node/CHANGELOG.md index e78163f58fa..7b9cd58658b 100644 --- a/packages/node/CHANGELOG.md +++ b/packages/node/CHANGELOG.md @@ -1,3 +1,17 @@ +# [2.1.0-canary.2](https://github.com/module-federation/universe/compare/node-2.1.0-canary.1...node-2.1.0-canary.2) (2023-11-07) + + +### Bug Fixes + +* issues with integrated runtime chunk ([edc4d97](https://github.com/module-federation/universe/commit/edc4d97393c8ad04adecc53062f40a80735defb7)) +* issues with integrated runtime chunk ([d4fa90d](https://github.com/module-federation/universe/commit/d4fa90de214e5b15957c208436878d82ce223a22)) +* issues with integrated runtime chunk ([aa1b137](https://github.com/module-federation/universe/commit/aa1b13791e353433d2a219addbef1443b853c2f0)) + + +### Features + +* **enhanced:** AsyncBoundary support ESM targets and remix_run framework outputs ([0100694](https://github.com/module-federation/universe/commit/0100694a07044460dc44a73cfb4ecff619177457)) + # [2.1.0-canary.1](https://github.com/module-federation/universe/compare/node-2.0.1...node-2.1.0-canary.1) (2023-11-06) ### Bug Fixes diff --git a/packages/node/package.json b/packages/node/package.json index 2e90227fd67..03a49c62a3d 100644 --- a/packages/node/package.json +++ b/packages/node/package.json @@ -1,7 +1,7 @@ { "public": true, "name": "@module-federation/node", - "version": "2.1.0-canary.1", + "version": "2.1.0-canary.2", "type": "commonjs", "main": "src/index.js", "exports": { From 817ee5b0d2c1e7f633d283e4ade017757246c401 Mon Sep 17 00:00:00 2001 From: semantic-release-bot Date: Tue, 7 Nov 2023 09:11:26 +0000 Subject: [PATCH 031/185] chore(release): Release nextjs-mf v8.1.0-canary.3 [skip ci] --- packages/nextjs-mf/CHANGELOG.md | 14 ++++++++++++++ packages/nextjs-mf/package.json | 2 +- 2 files changed, 15 insertions(+), 1 deletion(-) diff --git a/packages/nextjs-mf/CHANGELOG.md b/packages/nextjs-mf/CHANGELOG.md index 7fa92927207..f298826a649 100644 --- a/packages/nextjs-mf/CHANGELOG.md +++ b/packages/nextjs-mf/CHANGELOG.md @@ -1,3 +1,17 @@ +# [8.1.0-canary.3](https://github.com/module-federation/universe/compare/nextjs-mf-8.1.0-canary.2...nextjs-mf-8.1.0-canary.3) (2023-11-07) + + +### Bug Fixes + +* issues with integrated runtime chunk ([edc4d97](https://github.com/module-federation/universe/commit/edc4d97393c8ad04adecc53062f40a80735defb7)) +* issues with integrated runtime chunk ([d4fa90d](https://github.com/module-federation/universe/commit/d4fa90de214e5b15957c208436878d82ce223a22)) +* issues with integrated runtime chunk ([aa1b137](https://github.com/module-federation/universe/commit/aa1b13791e353433d2a219addbef1443b853c2f0)) + + +### Features + +* **enhanced:** AsyncBoundary support ESM targets and remix_run framework outputs ([0100694](https://github.com/module-federation/universe/commit/0100694a07044460dc44a73cfb4ecff619177457)) + # [8.1.0-canary.2](https://github.com/module-federation/universe/compare/nextjs-mf-8.1.0-canary.1...nextjs-mf-8.1.0-canary.2) (2023-11-06) ### Bug Fixes diff --git a/packages/nextjs-mf/package.json b/packages/nextjs-mf/package.json index dd77c9c5e6e..7eb7c2854e1 100644 --- a/packages/nextjs-mf/package.json +++ b/packages/nextjs-mf/package.json @@ -1,6 +1,6 @@ { "name": "@module-federation/nextjs-mf", - "version": "8.1.0-canary.2", + "version": "8.1.0-canary.3", "license": "MIT", "main": "src/index.js", "types": "src/index.d.ts", From 6c756f937075ffbac32bc6edaa6f7ac016f51a25 Mon Sep 17 00:00:00 2001 From: ScriptedAlchemy Date: Tue, 7 Nov 2023 16:26:28 -0800 Subject: [PATCH 032/185] fix: fix version missmatch --- packages/utilities/package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/utilities/package.json b/packages/utilities/package.json index 8e011cbed07..21b4d19d53b 100644 --- a/packages/utilities/package.json +++ b/packages/utilities/package.json @@ -1,6 +1,6 @@ { "name": "@module-federation/utilities", - "version": "3.0.0", + "version": "3.0.3-0", "type": "commonjs", "main": "src/index.js", "types": "src/index.d.ts", From 2f47b184535c1529c979335da78d31a3a88fd828 Mon Sep 17 00:00:00 2001 From: ScriptedAlchemy Date: Tue, 7 Nov 2023 17:43:33 -0800 Subject: [PATCH 033/185] fix: fix version missmatch --- packages/enhanced/CHANGELOG.md | 10 ++++------ packages/nextjs-mf/CHANGELOG.md | 10 ++++------ packages/node/CHANGELOG.md | 10 ++++------ 3 files changed, 12 insertions(+), 18 deletions(-) diff --git a/packages/enhanced/CHANGELOG.md b/packages/enhanced/CHANGELOG.md index 22b1835538e..ba9fd81919c 100644 --- a/packages/enhanced/CHANGELOG.md +++ b/packages/enhanced/CHANGELOG.md @@ -1,16 +1,14 @@ # [0.2.0-canary.2](https://github.com/module-federation/universe/compare/enhanced-0.2.0-canary.1...enhanced-0.2.0-canary.2) (2023-11-07) - ### Bug Fixes -* issues with integrated runtime chunk ([edc4d97](https://github.com/module-federation/universe/commit/edc4d97393c8ad04adecc53062f40a80735defb7)) -* issues with integrated runtime chunk ([d4fa90d](https://github.com/module-federation/universe/commit/d4fa90de214e5b15957c208436878d82ce223a22)) -* issues with integrated runtime chunk ([aa1b137](https://github.com/module-federation/universe/commit/aa1b13791e353433d2a219addbef1443b853c2f0)) - +- issues with integrated runtime chunk ([edc4d97](https://github.com/module-federation/universe/commit/edc4d97393c8ad04adecc53062f40a80735defb7)) +- issues with integrated runtime chunk ([d4fa90d](https://github.com/module-federation/universe/commit/d4fa90de214e5b15957c208436878d82ce223a22)) +- issues with integrated runtime chunk ([aa1b137](https://github.com/module-federation/universe/commit/aa1b13791e353433d2a219addbef1443b853c2f0)) ### Features -* **enhanced:** AsyncBoundary support ESM targets and remix_run framework outputs ([0100694](https://github.com/module-federation/universe/commit/0100694a07044460dc44a73cfb4ecff619177457)) +- **enhanced:** AsyncBoundary support ESM targets and remix_run framework outputs ([0100694](https://github.com/module-federation/universe/commit/0100694a07044460dc44a73cfb4ecff619177457)) # [0.2.0-canary.1](https://github.com/module-federation/universe/compare/enhanced-0.1.0...enhanced-0.2.0-canary.1) (2023-11-06) diff --git a/packages/nextjs-mf/CHANGELOG.md b/packages/nextjs-mf/CHANGELOG.md index f298826a649..34f60dd1546 100644 --- a/packages/nextjs-mf/CHANGELOG.md +++ b/packages/nextjs-mf/CHANGELOG.md @@ -1,16 +1,14 @@ # [8.1.0-canary.3](https://github.com/module-federation/universe/compare/nextjs-mf-8.1.0-canary.2...nextjs-mf-8.1.0-canary.3) (2023-11-07) - ### Bug Fixes -* issues with integrated runtime chunk ([edc4d97](https://github.com/module-federation/universe/commit/edc4d97393c8ad04adecc53062f40a80735defb7)) -* issues with integrated runtime chunk ([d4fa90d](https://github.com/module-federation/universe/commit/d4fa90de214e5b15957c208436878d82ce223a22)) -* issues with integrated runtime chunk ([aa1b137](https://github.com/module-federation/universe/commit/aa1b13791e353433d2a219addbef1443b853c2f0)) - +- issues with integrated runtime chunk ([edc4d97](https://github.com/module-federation/universe/commit/edc4d97393c8ad04adecc53062f40a80735defb7)) +- issues with integrated runtime chunk ([d4fa90d](https://github.com/module-federation/universe/commit/d4fa90de214e5b15957c208436878d82ce223a22)) +- issues with integrated runtime chunk ([aa1b137](https://github.com/module-federation/universe/commit/aa1b13791e353433d2a219addbef1443b853c2f0)) ### Features -* **enhanced:** AsyncBoundary support ESM targets and remix_run framework outputs ([0100694](https://github.com/module-federation/universe/commit/0100694a07044460dc44a73cfb4ecff619177457)) +- **enhanced:** AsyncBoundary support ESM targets and remix_run framework outputs ([0100694](https://github.com/module-federation/universe/commit/0100694a07044460dc44a73cfb4ecff619177457)) # [8.1.0-canary.2](https://github.com/module-federation/universe/compare/nextjs-mf-8.1.0-canary.1...nextjs-mf-8.1.0-canary.2) (2023-11-06) diff --git a/packages/node/CHANGELOG.md b/packages/node/CHANGELOG.md index 7b9cd58658b..18e33c02129 100644 --- a/packages/node/CHANGELOG.md +++ b/packages/node/CHANGELOG.md @@ -1,16 +1,14 @@ # [2.1.0-canary.2](https://github.com/module-federation/universe/compare/node-2.1.0-canary.1...node-2.1.0-canary.2) (2023-11-07) - ### Bug Fixes -* issues with integrated runtime chunk ([edc4d97](https://github.com/module-federation/universe/commit/edc4d97393c8ad04adecc53062f40a80735defb7)) -* issues with integrated runtime chunk ([d4fa90d](https://github.com/module-federation/universe/commit/d4fa90de214e5b15957c208436878d82ce223a22)) -* issues with integrated runtime chunk ([aa1b137](https://github.com/module-federation/universe/commit/aa1b13791e353433d2a219addbef1443b853c2f0)) - +- issues with integrated runtime chunk ([edc4d97](https://github.com/module-federation/universe/commit/edc4d97393c8ad04adecc53062f40a80735defb7)) +- issues with integrated runtime chunk ([d4fa90d](https://github.com/module-federation/universe/commit/d4fa90de214e5b15957c208436878d82ce223a22)) +- issues with integrated runtime chunk ([aa1b137](https://github.com/module-federation/universe/commit/aa1b13791e353433d2a219addbef1443b853c2f0)) ### Features -* **enhanced:** AsyncBoundary support ESM targets and remix_run framework outputs ([0100694](https://github.com/module-federation/universe/commit/0100694a07044460dc44a73cfb4ecff619177457)) +- **enhanced:** AsyncBoundary support ESM targets and remix_run framework outputs ([0100694](https://github.com/module-federation/universe/commit/0100694a07044460dc44a73cfb4ecff619177457)) # [2.1.0-canary.1](https://github.com/module-federation/universe/compare/node-2.0.1...node-2.1.0-canary.1) (2023-11-06) From afb824512561f74ad7e9ebf055706614b5c70c65 Mon Sep 17 00:00:00 2001 From: semantic-release-bot Date: Wed, 8 Nov 2023 01:47:39 +0000 Subject: [PATCH 034/185] chore(release): Release node v2.1.0-canary.3 [skip ci] --- packages/node/CHANGELOG.md | 7 +++++++ packages/node/package.json | 2 +- 2 files changed, 8 insertions(+), 1 deletion(-) diff --git a/packages/node/CHANGELOG.md b/packages/node/CHANGELOG.md index 18e33c02129..aa9cfb78a61 100644 --- a/packages/node/CHANGELOG.md +++ b/packages/node/CHANGELOG.md @@ -1,3 +1,10 @@ +# [2.1.0-canary.3](https://github.com/module-federation/universe/compare/node-2.1.0-canary.2...node-2.1.0-canary.3) (2023-11-08) + + +### Bug Fixes + +* fix version missmatch ([2d45df4](https://github.com/module-federation/universe/commit/2d45df485e72471bd2d5b116a050a0ae2416acc1)) + # [2.1.0-canary.2](https://github.com/module-federation/universe/compare/node-2.1.0-canary.1...node-2.1.0-canary.2) (2023-11-07) ### Bug Fixes diff --git a/packages/node/package.json b/packages/node/package.json index 03a49c62a3d..09141c3d9ae 100644 --- a/packages/node/package.json +++ b/packages/node/package.json @@ -1,7 +1,7 @@ { "public": true, "name": "@module-federation/node", - "version": "2.1.0-canary.2", + "version": "2.1.0-canary.3", "type": "commonjs", "main": "src/index.js", "exports": { From a87e0e9104c4fcff16ad7f6e630f588dcfcf828d Mon Sep 17 00:00:00 2001 From: ScriptedAlchemy Date: Tue, 7 Nov 2023 18:28:11 -0800 Subject: [PATCH 035/185] fix: fix version missmatch --- packages/node/CHANGELOG.md | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/packages/node/CHANGELOG.md b/packages/node/CHANGELOG.md index aa9cfb78a61..8aea5866182 100644 --- a/packages/node/CHANGELOG.md +++ b/packages/node/CHANGELOG.md @@ -1,9 +1,8 @@ # [2.1.0-canary.3](https://github.com/module-federation/universe/compare/node-2.1.0-canary.2...node-2.1.0-canary.3) (2023-11-08) - ### Bug Fixes -* fix version missmatch ([2d45df4](https://github.com/module-federation/universe/commit/2d45df485e72471bd2d5b116a050a0ae2416acc1)) +- fix version missmatch ([2d45df4](https://github.com/module-federation/universe/commit/2d45df485e72471bd2d5b116a050a0ae2416acc1)) # [2.1.0-canary.2](https://github.com/module-federation/universe/compare/node-2.1.0-canary.1...node-2.1.0-canary.2) (2023-11-07) From f4e3f403f665407b6c82b0f0b3547383b45dbbf1 Mon Sep 17 00:00:00 2001 From: semantic-release-bot Date: Wed, 8 Nov 2023 02:32:35 +0000 Subject: [PATCH 036/185] chore(release): Release nextjs-mf v8.1.0-canary.4 [skip ci] --- packages/nextjs-mf/CHANGELOG.md | 7 +++++++ packages/nextjs-mf/package.json | 2 +- 2 files changed, 8 insertions(+), 1 deletion(-) diff --git a/packages/nextjs-mf/CHANGELOG.md b/packages/nextjs-mf/CHANGELOG.md index 34f60dd1546..fc26cff8a86 100644 --- a/packages/nextjs-mf/CHANGELOG.md +++ b/packages/nextjs-mf/CHANGELOG.md @@ -1,3 +1,10 @@ +# [8.1.0-canary.4](https://github.com/module-federation/universe/compare/nextjs-mf-8.1.0-canary.3...nextjs-mf-8.1.0-canary.4) (2023-11-08) + + +### Bug Fixes + +* fix version missmatch ([2d45df4](https://github.com/module-federation/universe/commit/2d45df485e72471bd2d5b116a050a0ae2416acc1)) + # [8.1.0-canary.3](https://github.com/module-federation/universe/compare/nextjs-mf-8.1.0-canary.2...nextjs-mf-8.1.0-canary.3) (2023-11-07) ### Bug Fixes diff --git a/packages/nextjs-mf/package.json b/packages/nextjs-mf/package.json index 7eb7c2854e1..60ec7e34708 100644 --- a/packages/nextjs-mf/package.json +++ b/packages/nextjs-mf/package.json @@ -1,6 +1,6 @@ { "name": "@module-federation/nextjs-mf", - "version": "8.1.0-canary.3", + "version": "8.1.0-canary.4", "license": "MIT", "main": "src/index.js", "types": "src/index.d.ts", From 245b851242cd794ac4531855cdf0c2606619e998 Mon Sep 17 00:00:00 2001 From: ScriptedAlchemy Date: Wed, 8 Nov 2023 13:12:45 -0800 Subject: [PATCH 037/185] fix(enhanced): correct schema validation issues fixing import paths for options validation --- .../enhanced/src/lib/container/ModuleFederationPlugin.ts | 6 ++++-- ...ationPlugin.check.js => ModuleFederationPlugin.check.ts} | 5 ++++- ...oduleFederationPlugin.json => ModuleFederationPlugin.ts} | 3 ++- 3 files changed, 10 insertions(+), 4 deletions(-) rename packages/enhanced/src/schemas/container/{ModuleFederationPlugin.check.js => ModuleFederationPlugin.check.ts} (99%) rename packages/enhanced/src/schemas/container/{ModuleFederationPlugin.json => ModuleFederationPlugin.ts} (99%) diff --git a/packages/enhanced/src/lib/container/ModuleFederationPlugin.ts b/packages/enhanced/src/lib/container/ModuleFederationPlugin.ts index 8b98c0aae27..b600d381dba 100644 --- a/packages/enhanced/src/lib/container/ModuleFederationPlugin.ts +++ b/packages/enhanced/src/lib/container/ModuleFederationPlugin.ts @@ -12,11 +12,13 @@ import SharePlugin from '../sharing/SharePlugin'; import createSchemaValidation from 'webpack/lib/util/create-schema-validation'; import ContainerPlugin from './ContainerPlugin'; import ContainerReferencePlugin from './ContainerReferencePlugin'; +import checkOptions from 'webpack/schemas/plugins/container/ModuleFederationPlugin.check.js' +import schema from '../../schemas/container/ModuleFederationPlugin' const validate = createSchemaValidation( //eslint-disable-next-line - require('webpack/schemas/plugins/container/ModuleFederationPlugin.check.js'), - () => require('../../schemas/container/ModuleFederationPlugin.json'), + checkOptions, + () => schema, { name: 'Module Federation Plugin', baseDataPath: 'options', diff --git a/packages/enhanced/src/schemas/container/ModuleFederationPlugin.check.js b/packages/enhanced/src/schemas/container/ModuleFederationPlugin.check.ts similarity index 99% rename from packages/enhanced/src/schemas/container/ModuleFederationPlugin.check.js rename to packages/enhanced/src/schemas/container/ModuleFederationPlugin.check.ts index 7da1a3fa789..667351ab2a3 100644 --- a/packages/enhanced/src/schemas/container/ModuleFederationPlugin.check.js +++ b/packages/enhanced/src/schemas/container/ModuleFederationPlugin.check.ts @@ -1,10 +1,11 @@ +//@ts-nocheck /* * This file was automatically generated. * DO NOT MODIFY BY HAND. * Run `yarn special-lint-fix` to update */ const t = /^(?:[A-Za-z]:[\\/]|\\\\|\/)/; -(module.exports = D), (module.exports.default = D); + const e = { definitions: { AmdContainer: { type: 'string', minLength: 1 }, @@ -1745,3 +1746,5 @@ function D( } return (D.errors = f), 0 === c; } + +export default D diff --git a/packages/enhanced/src/schemas/container/ModuleFederationPlugin.json b/packages/enhanced/src/schemas/container/ModuleFederationPlugin.ts similarity index 99% rename from packages/enhanced/src/schemas/container/ModuleFederationPlugin.json rename to packages/enhanced/src/schemas/container/ModuleFederationPlugin.ts index ed823dc1f47..ca68c60241d 100644 --- a/packages/enhanced/src/schemas/container/ModuleFederationPlugin.json +++ b/packages/enhanced/src/schemas/container/ModuleFederationPlugin.ts @@ -1,4 +1,5 @@ -{ +//@ts-nocheck +export default { "definitions": { "AmdContainer": { "description": "Add a container for define/require functions in the AMD module.", From aedf3039e858717d3c5df5013a53cf3b4cd557c2 Mon Sep 17 00:00:00 2001 From: ScriptedAlchemy Date: Wed, 8 Nov 2023 13:49:05 -0800 Subject: [PATCH 038/185] ci: fix typo in release job --- .../lib/container/ModuleFederationPlugin.ts | 4 +- .../container/ModuleFederationPlugin.check.ts | 2 +- .../container/ModuleFederationPlugin.ts | 927 +++++++++--------- 3 files changed, 486 insertions(+), 447 deletions(-) diff --git a/packages/enhanced/src/lib/container/ModuleFederationPlugin.ts b/packages/enhanced/src/lib/container/ModuleFederationPlugin.ts index b600d381dba..d2becfee96b 100644 --- a/packages/enhanced/src/lib/container/ModuleFederationPlugin.ts +++ b/packages/enhanced/src/lib/container/ModuleFederationPlugin.ts @@ -12,8 +12,8 @@ import SharePlugin from '../sharing/SharePlugin'; import createSchemaValidation from 'webpack/lib/util/create-schema-validation'; import ContainerPlugin from './ContainerPlugin'; import ContainerReferencePlugin from './ContainerReferencePlugin'; -import checkOptions from 'webpack/schemas/plugins/container/ModuleFederationPlugin.check.js' -import schema from '../../schemas/container/ModuleFederationPlugin' +import checkOptions from 'webpack/schemas/plugins/container/ModuleFederationPlugin.check.js'; +import schema from '../../schemas/container/ModuleFederationPlugin'; const validate = createSchemaValidation( //eslint-disable-next-line diff --git a/packages/enhanced/src/schemas/container/ModuleFederationPlugin.check.ts b/packages/enhanced/src/schemas/container/ModuleFederationPlugin.check.ts index 667351ab2a3..a4439c03b68 100644 --- a/packages/enhanced/src/schemas/container/ModuleFederationPlugin.check.ts +++ b/packages/enhanced/src/schemas/container/ModuleFederationPlugin.check.ts @@ -1747,4 +1747,4 @@ function D( return (D.errors = f), 0 === c; } -export default D +export default D; diff --git a/packages/enhanced/src/schemas/container/ModuleFederationPlugin.ts b/packages/enhanced/src/schemas/container/ModuleFederationPlugin.ts index ca68c60241d..e0f21e50c52 100644 --- a/packages/enhanced/src/schemas/container/ModuleFederationPlugin.ts +++ b/packages/enhanced/src/schemas/container/ModuleFederationPlugin.ts @@ -1,526 +1,565 @@ //@ts-nocheck export default { - "definitions": { - "AmdContainer": { - "description": "Add a container for define/require functions in the AMD module.", - "type": "string", - "minLength": 1 - }, - "AuxiliaryComment": { - "description": "Add a comment in the UMD wrapper.", - "anyOf": [ + definitions: { + AmdContainer: { + description: + 'Add a container for define/require functions in the AMD module.', + type: 'string', + minLength: 1, + }, + AuxiliaryComment: { + description: 'Add a comment in the UMD wrapper.', + anyOf: [ { - "description": "Append the same comment above each import style.", - "type": "string" + description: 'Append the same comment above each import style.', + type: 'string', }, { - "$ref": "#/definitions/LibraryCustomUmdCommentObject" - } - ] + $ref: '#/definitions/LibraryCustomUmdCommentObject', + }, + ], }, - "EntryRuntime": { - "description": "The name of the runtime chunk. If set a runtime chunk with this name is created or an existing entrypoint is used as runtime.", - "anyOf": [ + EntryRuntime: { + description: + 'The name of the runtime chunk. If set a runtime chunk with this name is created or an existing entrypoint is used as runtime.', + anyOf: [ { - "enum": [false] + enum: [false], }, { - "type": "string", - "minLength": 1 - } - ] - }, - "Exposes": { - "description": "Modules that should be exposed by this container. When provided, property name is used as public name, otherwise public name is automatically inferred from request.", - "anyOf": [ + type: 'string', + minLength: 1, + }, + ], + }, + Exposes: { + description: + 'Modules that should be exposed by this container. When provided, property name is used as public name, otherwise public name is automatically inferred from request.', + anyOf: [ { - "type": "array", - "items": { - "description": "Modules that should be exposed by this container.", - "anyOf": [ + type: 'array', + items: { + description: 'Modules that should be exposed by this container.', + anyOf: [ { - "$ref": "#/definitions/ExposesItem" + $ref: '#/definitions/ExposesItem', }, { - "$ref": "#/definitions/ExposesObject" - } - ] - } + $ref: '#/definitions/ExposesObject', + }, + ], + }, }, { - "$ref": "#/definitions/ExposesObject" - } - ] - }, - "ExposesConfig": { - "description": "Advanced configuration for modules that should be exposed by this container.", - "type": "object", - "additionalProperties": false, - "properties": { - "import": { - "description": "Request to a module that should be exposed by this container.", - "anyOf": [ + $ref: '#/definitions/ExposesObject', + }, + ], + }, + ExposesConfig: { + description: + 'Advanced configuration for modules that should be exposed by this container.', + type: 'object', + additionalProperties: false, + properties: { + import: { + description: + 'Request to a module that should be exposed by this container.', + anyOf: [ { - "$ref": "#/definitions/ExposesItem" + $ref: '#/definitions/ExposesItem', }, { - "$ref": "#/definitions/ExposesItems" - } - ] - }, - "name": { - "description": "Custom chunk name for the exposed module.", - "type": "string" - } + $ref: '#/definitions/ExposesItems', + }, + ], + }, + name: { + description: 'Custom chunk name for the exposed module.', + type: 'string', + }, + }, + required: ['import'], + }, + ExposesItem: { + description: 'Module that should be exposed by this container.', + type: 'string', + minLength: 1, + }, + ExposesItems: { + description: 'Modules that should be exposed by this container.', + type: 'array', + items: { + $ref: '#/definitions/ExposesItem', }, - "required": ["import"] - }, - "ExposesItem": { - "description": "Module that should be exposed by this container.", - "type": "string", - "minLength": 1 - }, - "ExposesItems": { - "description": "Modules that should be exposed by this container.", - "type": "array", - "items": { - "$ref": "#/definitions/ExposesItem" - } - }, - "ExposesObject": { - "description": "Modules that should be exposed by this container. Property names are used as public paths.", - "type": "object", - "additionalProperties": { - "description": "Modules that should be exposed by this container.", - "anyOf": [ + }, + ExposesObject: { + description: + 'Modules that should be exposed by this container. Property names are used as public paths.', + type: 'object', + additionalProperties: { + description: 'Modules that should be exposed by this container.', + anyOf: [ { - "$ref": "#/definitions/ExposesConfig" + $ref: '#/definitions/ExposesConfig', }, { - "$ref": "#/definitions/ExposesItem" + $ref: '#/definitions/ExposesItem', }, { - "$ref": "#/definitions/ExposesItems" - } - ] - } - }, - "ExternalsType": { - "description": "Specifies the default type of externals ('amd*', 'umd*', 'system' and 'jsonp' depend on output.libraryTarget set to the same value).", - "enum": [ - "var", - "module", - "assign", - "this", - "window", - "self", - "global", - "commonjs", - "commonjs2", - "commonjs-module", - "commonjs-static", - "amd", - "amd-require", - "umd", - "umd2", - "jsonp", - "system", - "promise", - "import", - "script", - "node-commonjs" - ] - }, - "LibraryCustomUmdCommentObject": { - "description": "Set explicit comments for `commonjs`, `commonjs2`, `amd`, and `root`.", - "type": "object", - "additionalProperties": false, - "properties": { - "amd": { - "description": "Set comment for `amd` section in UMD.", - "type": "string" - }, - "commonjs": { - "description": "Set comment for `commonjs` (exports) section in UMD.", - "type": "string" - }, - "commonjs2": { - "description": "Set comment for `commonjs2` (module.exports) section in UMD.", - "type": "string" - }, - "root": { - "description": "Set comment for `root` (global variable) section in UMD.", - "type": "string" - } - } - }, - "LibraryCustomUmdObject": { - "description": "Description object for all UMD variants of the library name.", - "type": "object", - "additionalProperties": false, - "properties": { - "amd": { - "description": "Name of the exposed AMD library in the UMD.", - "type": "string", - "minLength": 1 - }, - "commonjs": { - "description": "Name of the exposed commonjs export in the UMD.", - "type": "string", - "minLength": 1 - }, - "root": { - "description": "Name of the property exposed globally by a UMD library.", - "anyOf": [ + $ref: '#/definitions/ExposesItems', + }, + ], + }, + }, + ExternalsType: { + description: + "Specifies the default type of externals ('amd*', 'umd*', 'system' and 'jsonp' depend on output.libraryTarget set to the same value).", + enum: [ + 'var', + 'module', + 'assign', + 'this', + 'window', + 'self', + 'global', + 'commonjs', + 'commonjs2', + 'commonjs-module', + 'commonjs-static', + 'amd', + 'amd-require', + 'umd', + 'umd2', + 'jsonp', + 'system', + 'promise', + 'import', + 'script', + 'node-commonjs', + ], + }, + LibraryCustomUmdCommentObject: { + description: + 'Set explicit comments for `commonjs`, `commonjs2`, `amd`, and `root`.', + type: 'object', + additionalProperties: false, + properties: { + amd: { + description: 'Set comment for `amd` section in UMD.', + type: 'string', + }, + commonjs: { + description: 'Set comment for `commonjs` (exports) section in UMD.', + type: 'string', + }, + commonjs2: { + description: + 'Set comment for `commonjs2` (module.exports) section in UMD.', + type: 'string', + }, + root: { + description: + 'Set comment for `root` (global variable) section in UMD.', + type: 'string', + }, + }, + }, + LibraryCustomUmdObject: { + description: + 'Description object for all UMD variants of the library name.', + type: 'object', + additionalProperties: false, + properties: { + amd: { + description: 'Name of the exposed AMD library in the UMD.', + type: 'string', + minLength: 1, + }, + commonjs: { + description: 'Name of the exposed commonjs export in the UMD.', + type: 'string', + minLength: 1, + }, + root: { + description: + 'Name of the property exposed globally by a UMD library.', + anyOf: [ { - "type": "array", - "items": { - "description": "Part of the name of the property exposed globally by a UMD library.", - "type": "string", - "minLength": 1 - } + type: 'array', + items: { + description: + 'Part of the name of the property exposed globally by a UMD library.', + type: 'string', + minLength: 1, + }, }, { - "type": "string", - "minLength": 1 - } - ] - } - } - }, - "LibraryExport": { - "description": "Specify which export should be exposed as library.", - "anyOf": [ + type: 'string', + minLength: 1, + }, + ], + }, + }, + }, + LibraryExport: { + description: 'Specify which export should be exposed as library.', + anyOf: [ { - "type": "array", - "items": { - "description": "Part of the export that should be exposed as library.", - "type": "string", - "minLength": 1 - } + type: 'array', + items: { + description: + 'Part of the export that should be exposed as library.', + type: 'string', + minLength: 1, + }, }, { - "type": "string", - "minLength": 1 - } - ] - }, - "LibraryName": { - "description": "The name of the library (some types allow unnamed libraries too).", - "anyOf": [ + type: 'string', + minLength: 1, + }, + ], + }, + LibraryName: { + description: + 'The name of the library (some types allow unnamed libraries too).', + anyOf: [ { - "type": "array", - "items": { - "description": "A part of the library name.", - "type": "string", - "minLength": 1 + type: 'array', + items: { + description: 'A part of the library name.', + type: 'string', + minLength: 1, }, - "minItems": 1 + minItems: 1, }, { - "type": "string", - "minLength": 1 + type: 'string', + minLength: 1, }, { - "$ref": "#/definitions/LibraryCustomUmdObject" - } - ] - }, - "LibraryOptions": { - "description": "Options for library.", - "type": "object", - "additionalProperties": false, - "properties": { - "amdContainer": { - "$ref": "#/definitions/AmdContainer" + $ref: '#/definitions/LibraryCustomUmdObject', + }, + ], + }, + LibraryOptions: { + description: 'Options for library.', + type: 'object', + additionalProperties: false, + properties: { + amdContainer: { + $ref: '#/definitions/AmdContainer', + }, + auxiliaryComment: { + $ref: '#/definitions/AuxiliaryComment', }, - "auxiliaryComment": { - "$ref": "#/definitions/AuxiliaryComment" + export: { + $ref: '#/definitions/LibraryExport', }, - "export": { - "$ref": "#/definitions/LibraryExport" + name: { + $ref: '#/definitions/LibraryName', }, - "name": { - "$ref": "#/definitions/LibraryName" + type: { + $ref: '#/definitions/LibraryType', }, - "type": { - "$ref": "#/definitions/LibraryType" + umdNamedDefine: { + $ref: '#/definitions/UmdNamedDefine', }, - "umdNamedDefine": { - "$ref": "#/definitions/UmdNamedDefine" - } }, - "required": ["type"] + required: ['type'], }, - "LibraryType": { - "description": "Type of library (types included by default are 'var', 'module', 'assign', 'assign-properties', 'this', 'window', 'self', 'global', 'commonjs', 'commonjs2', 'commonjs-module', 'commonjs-static', 'amd', 'amd-require', 'umd', 'umd2', 'jsonp', 'system', but others might be added by plugins).", - "anyOf": [ + LibraryType: { + description: + "Type of library (types included by default are 'var', 'module', 'assign', 'assign-properties', 'this', 'window', 'self', 'global', 'commonjs', 'commonjs2', 'commonjs-module', 'commonjs-static', 'amd', 'amd-require', 'umd', 'umd2', 'jsonp', 'system', but others might be added by plugins).", + anyOf: [ { - "enum": [ - "var", - "module", - "assign", - "assign-properties", - "this", - "window", - "self", - "global", - "commonjs", - "commonjs2", - "commonjs-module", - "commonjs-static", - "amd", - "amd-require", - "umd", - "umd2", - "jsonp", - "system" - ] + enum: [ + 'var', + 'module', + 'assign', + 'assign-properties', + 'this', + 'window', + 'self', + 'global', + 'commonjs', + 'commonjs2', + 'commonjs-module', + 'commonjs-static', + 'amd', + 'amd-require', + 'umd', + 'umd2', + 'jsonp', + 'system', + ], }, { - "type": "string" - } - ] + type: 'string', + }, + ], }, - "Remotes": { - "description": "Container locations and request scopes from which modules should be resolved and loaded at runtime. When provided, property name is used as request scope, otherwise request scope is automatically inferred from container location.", - "anyOf": [ + Remotes: { + description: + 'Container locations and request scopes from which modules should be resolved and loaded at runtime. When provided, property name is used as request scope, otherwise request scope is automatically inferred from container location.', + anyOf: [ { - "type": "array", - "items": { - "description": "Container locations and request scopes from which modules should be resolved and loaded at runtime.", - "anyOf": [ + type: 'array', + items: { + description: + 'Container locations and request scopes from which modules should be resolved and loaded at runtime.', + anyOf: [ { - "$ref": "#/definitions/RemotesItem" + $ref: '#/definitions/RemotesItem', }, { - "$ref": "#/definitions/RemotesObject" - } - ] - } + $ref: '#/definitions/RemotesObject', + }, + ], + }, }, { - "$ref": "#/definitions/RemotesObject" - } - ] - }, - "RemotesConfig": { - "description": "Advanced configuration for container locations from which modules should be resolved and loaded at runtime.", - "type": "object", - "additionalProperties": false, - "properties": { - "external": { - "description": "Container locations from which modules should be resolved and loaded at runtime.", - "anyOf": [ + $ref: '#/definitions/RemotesObject', + }, + ], + }, + RemotesConfig: { + description: + 'Advanced configuration for container locations from which modules should be resolved and loaded at runtime.', + type: 'object', + additionalProperties: false, + properties: { + external: { + description: + 'Container locations from which modules should be resolved and loaded at runtime.', + anyOf: [ { - "$ref": "#/definitions/RemotesItem" + $ref: '#/definitions/RemotesItem', }, { - "$ref": "#/definitions/RemotesItems" - } - ] - }, - "shareScope": { - "description": "The name of the share scope shared with this remote.", - "type": "string", - "minLength": 1 - } + $ref: '#/definitions/RemotesItems', + }, + ], + }, + shareScope: { + description: 'The name of the share scope shared with this remote.', + type: 'string', + minLength: 1, + }, }, - "required": ["external"] - }, - "RemotesItem": { - "description": "Container location from which modules should be resolved and loaded at runtime.", - "type": "string", - "minLength": 1 - }, - "RemotesItems": { - "description": "Container locations from which modules should be resolved and loaded at runtime.", - "type": "array", - "items": { - "$ref": "#/definitions/RemotesItem" - } - }, - "RemotesObject": { - "description": "Container locations from which modules should be resolved and loaded at runtime. Property names are used as request scopes.", - "type": "object", - "additionalProperties": { - "description": "Container locations from which modules should be resolved and loaded at runtime.", - "anyOf": [ + required: ['external'], + }, + RemotesItem: { + description: + 'Container location from which modules should be resolved and loaded at runtime.', + type: 'string', + minLength: 1, + }, + RemotesItems: { + description: + 'Container locations from which modules should be resolved and loaded at runtime.', + type: 'array', + items: { + $ref: '#/definitions/RemotesItem', + }, + }, + RemotesObject: { + description: + 'Container locations from which modules should be resolved and loaded at runtime. Property names are used as request scopes.', + type: 'object', + additionalProperties: { + description: + 'Container locations from which modules should be resolved and loaded at runtime.', + anyOf: [ { - "$ref": "#/definitions/RemotesConfig" + $ref: '#/definitions/RemotesConfig', }, { - "$ref": "#/definitions/RemotesItem" + $ref: '#/definitions/RemotesItem', }, { - "$ref": "#/definitions/RemotesItems" - } - ] - } - }, - "Shared": { - "description": "Modules that should be shared in the share scope. When provided, property names are used to match requested modules in this compilation.", - "anyOf": [ + $ref: '#/definitions/RemotesItems', + }, + ], + }, + }, + Shared: { + description: + 'Modules that should be shared in the share scope. When provided, property names are used to match requested modules in this compilation.', + anyOf: [ { - "type": "array", - "items": { - "description": "Modules that should be shared in the share scope.", - "anyOf": [ + type: 'array', + items: { + description: 'Modules that should be shared in the share scope.', + anyOf: [ { - "$ref": "#/definitions/SharedItem" + $ref: '#/definitions/SharedItem', }, { - "$ref": "#/definitions/SharedObject" - } - ] - } + $ref: '#/definitions/SharedObject', + }, + ], + }, }, { - "$ref": "#/definitions/SharedObject" - } - ] - }, - "SharedConfig": { - "description": "Advanced configuration for modules that should be shared in the share scope.", - "type": "object", - "additionalProperties": false, - "properties": { - "eager": { - "description": "Include the provided and fallback module directly instead behind an async request. This allows to use this shared module in initial load too. All possible shared modules need to be eager too.", - "type": "boolean" - }, - "import": { - "description": "Provided module that should be provided to share scope. Also acts as fallback module if no shared module is found in share scope or version isn't valid. Defaults to the property name.", - "anyOf": [ + $ref: '#/definitions/SharedObject', + }, + ], + }, + SharedConfig: { + description: + 'Advanced configuration for modules that should be shared in the share scope.', + type: 'object', + additionalProperties: false, + properties: { + eager: { + description: + 'Include the provided and fallback module directly instead behind an async request. This allows to use this shared module in initial load too. All possible shared modules need to be eager too.', + type: 'boolean', + }, + import: { + description: + "Provided module that should be provided to share scope. Also acts as fallback module if no shared module is found in share scope or version isn't valid. Defaults to the property name.", + anyOf: [ { - "description": "No provided or fallback module.", - "enum": [false] + description: 'No provided or fallback module.', + enum: [false], }, { - "$ref": "#/definitions/SharedItem" - } - ] - }, - "packageName": { - "description": "Package name to determine required version from description file. This is only needed when package name can't be automatically determined from request.", - "type": "string", - "minLength": 1 - }, - "requiredVersion": { - "description": "Version requirement from module in share scope.", - "anyOf": [ + $ref: '#/definitions/SharedItem', + }, + ], + }, + packageName: { + description: + "Package name to determine required version from description file. This is only needed when package name can't be automatically determined from request.", + type: 'string', + minLength: 1, + }, + requiredVersion: { + description: 'Version requirement from module in share scope.', + anyOf: [ { - "description": "No version requirement check.", - "enum": [false] + description: 'No version requirement check.', + enum: [false], }, { - "description": "Version as string. Can be prefixed with '^' or '~' for minimum matches. Each part of the version should be separated by a dot '.'.", - "type": "string" - } - ] - }, - "shareKey": { - "description": "Module is looked up under this key from the share scope.", - "type": "string", - "minLength": 1 - }, - "shareScope": { - "description": "Share scope name.", - "type": "string", - "minLength": 1 - }, - "singleton": { - "description": "Allow only a single version of the shared module in share scope (disabled by default).", - "type": "boolean" - }, - "strictVersion": { - "description": "Do not accept shared module if version is not valid (defaults to yes, if local fallback module is available and shared module is not a singleton, otherwise no, has no effect if there is no required version specified).", - "type": "boolean" - }, - "version": { - "description": "Version of the provided module. Will replace lower matching versions, but not higher.", - "anyOf": [ + description: + "Version as string. Can be prefixed with '^' or '~' for minimum matches. Each part of the version should be separated by a dot '.'.", + type: 'string', + }, + ], + }, + shareKey: { + description: + 'Module is looked up under this key from the share scope.', + type: 'string', + minLength: 1, + }, + shareScope: { + description: 'Share scope name.', + type: 'string', + minLength: 1, + }, + singleton: { + description: + 'Allow only a single version of the shared module in share scope (disabled by default).', + type: 'boolean', + }, + strictVersion: { + description: + 'Do not accept shared module if version is not valid (defaults to yes, if local fallback module is available and shared module is not a singleton, otherwise no, has no effect if there is no required version specified).', + type: 'boolean', + }, + version: { + description: + 'Version of the provided module. Will replace lower matching versions, but not higher.', + anyOf: [ { - "description": "Don't provide a version.", - "enum": [false] + description: "Don't provide a version.", + enum: [false], }, { - "description": "Version as string. Each part of the version should be separated by a dot '.'.", - "type": "string" - } - ] - } - } - }, - "SharedItem": { - "description": "A module that should be shared in the share scope.", - "type": "string", - "minLength": 1 - }, - "SharedObject": { - "description": "Modules that should be shared in the share scope. Property names are used to match requested modules in this compilation. Relative requests are resolved, module requests are matched unresolved, absolute paths will match resolved requests. A trailing slash will match all requests with this prefix. In this case shareKey must also have a trailing slash.", - "type": "object", - "additionalProperties": { - "description": "Modules that should be shared in the share scope.", - "anyOf": [ + description: + "Version as string. Each part of the version should be separated by a dot '.'.", + type: 'string', + }, + ], + }, + }, + }, + SharedItem: { + description: 'A module that should be shared in the share scope.', + type: 'string', + minLength: 1, + }, + SharedObject: { + description: + 'Modules that should be shared in the share scope. Property names are used to match requested modules in this compilation. Relative requests are resolved, module requests are matched unresolved, absolute paths will match resolved requests. A trailing slash will match all requests with this prefix. In this case shareKey must also have a trailing slash.', + type: 'object', + additionalProperties: { + description: 'Modules that should be shared in the share scope.', + anyOf: [ { - "$ref": "#/definitions/SharedConfig" + $ref: '#/definitions/SharedConfig', }, { - "$ref": "#/definitions/SharedItem" - } - ] - } - }, - "UmdNamedDefine": { - "description": "If `output.libraryTarget` is set to umd and `output.library` is set, setting this to true will name the AMD module.", - "type": "boolean" - } + $ref: '#/definitions/SharedItem', + }, + ], + }, + }, + UmdNamedDefine: { + description: + 'If `output.libraryTarget` is set to umd and `output.library` is set, setting this to true will name the AMD module.', + type: 'boolean', + }, }, - "title": "ModuleFederationPluginOptions", - "type": "object", - "additionalProperties": false, - "properties": { - "exposes": { - "$ref": "#/definitions/Exposes" - }, - "filename": { - "description": "The filename of the container as relative path inside the `output.path` directory.", - "type": "string", - "absolutePath": false - }, - "library": { - "$ref": "#/definitions/LibraryOptions" - }, - "async": { - "description": "Enable async loading of entry chunks.", - "type": "boolean" - }, - "name": { - "description": "The name of the container.", - "type": "string" - }, - "remoteType": { - "description": "The external type of the remote containers.", - "oneOf": [ + title: 'ModuleFederationPluginOptions', + type: 'object', + additionalProperties: false, + properties: { + exposes: { + $ref: '#/definitions/Exposes', + }, + filename: { + description: + 'The filename of the container as relative path inside the `output.path` directory.', + type: 'string', + absolutePath: false, + }, + library: { + $ref: '#/definitions/LibraryOptions', + }, + async: { + description: 'Enable async loading of entry chunks.', + type: 'boolean', + }, + name: { + description: 'The name of the container.', + type: 'string', + }, + remoteType: { + description: 'The external type of the remote containers.', + oneOf: [ { - "$ref": "#/definitions/ExternalsType" - } - ] - }, - "remotes": { - "$ref": "#/definitions/Remotes" - }, - "runtime": { - "$ref": "#/definitions/EntryRuntime" - }, - "shareScope": { - "description": "Share scope name used for all shared modules (defaults to 'default').", - "type": "string", - "minLength": 1 - }, - "shared": { - "$ref": "#/definitions/Shared" - } - } -} + $ref: '#/definitions/ExternalsType', + }, + ], + }, + remotes: { + $ref: '#/definitions/Remotes', + }, + runtime: { + $ref: '#/definitions/EntryRuntime', + }, + shareScope: { + description: + "Share scope name used for all shared modules (defaults to 'default').", + type: 'string', + minLength: 1, + }, + shared: { + $ref: '#/definitions/Shared', + }, + }, +}; From d749c599d662f10c150864561c3cfe5fef66d152 Mon Sep 17 00:00:00 2001 From: ScriptedAlchemy Date: Wed, 8 Nov 2023 14:41:28 -0800 Subject: [PATCH 039/185] chore: no linting of check files --- .../src/schemas/container/ModuleFederationPlugin.check.ts | 1 + 1 file changed, 1 insertion(+) diff --git a/packages/enhanced/src/schemas/container/ModuleFederationPlugin.check.ts b/packages/enhanced/src/schemas/container/ModuleFederationPlugin.check.ts index a4439c03b68..a28511da4e2 100644 --- a/packages/enhanced/src/schemas/container/ModuleFederationPlugin.check.ts +++ b/packages/enhanced/src/schemas/container/ModuleFederationPlugin.check.ts @@ -1,4 +1,5 @@ //@ts-nocheck +//eslint-disable /* * This file was automatically generated. * DO NOT MODIFY BY HAND. From 5b9e3716683435bc04b2b24aae3232c0a91db56b Mon Sep 17 00:00:00 2001 From: ScriptedAlchemy Date: Wed, 8 Nov 2023 14:46:18 -0800 Subject: [PATCH 040/185] chore: no linting of check files --- .../src/schemas/container/ModuleFederationPlugin.check.ts | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/packages/enhanced/src/schemas/container/ModuleFederationPlugin.check.ts b/packages/enhanced/src/schemas/container/ModuleFederationPlugin.check.ts index a28511da4e2..c4f3b178fd3 100644 --- a/packages/enhanced/src/schemas/container/ModuleFederationPlugin.check.ts +++ b/packages/enhanced/src/schemas/container/ModuleFederationPlugin.check.ts @@ -1,5 +1,6 @@ +/* eslint-disable */ //@ts-nocheck -//eslint-disable + /* * This file was automatically generated. * DO NOT MODIFY BY HAND. From 8f2031672942efd9e5b16ac20f25e8bd869267fc Mon Sep 17 00:00:00 2001 From: semantic-release-bot Date: Wed, 8 Nov 2023 22:55:42 +0000 Subject: [PATCH 041/185] chore(release): Release enhanced v0.2.0-canary.3 [skip ci] --- packages/enhanced/CHANGELOG.md | 7 +++++++ packages/enhanced/package.json | 2 +- 2 files changed, 8 insertions(+), 1 deletion(-) diff --git a/packages/enhanced/CHANGELOG.md b/packages/enhanced/CHANGELOG.md index ba9fd81919c..420744d32e2 100644 --- a/packages/enhanced/CHANGELOG.md +++ b/packages/enhanced/CHANGELOG.md @@ -1,3 +1,10 @@ +# [0.2.0-canary.3](https://github.com/module-federation/universe/compare/enhanced-0.2.0-canary.2...enhanced-0.2.0-canary.3) (2023-11-08) + + +### Bug Fixes + +* **enhanced:** correct schema validation issues ([5a04a81](https://github.com/module-federation/universe/commit/5a04a812f505ab8287d206abd0a6996057a994fc)) + # [0.2.0-canary.2](https://github.com/module-federation/universe/compare/enhanced-0.2.0-canary.1...enhanced-0.2.0-canary.2) (2023-11-07) ### Bug Fixes diff --git a/packages/enhanced/package.json b/packages/enhanced/package.json index cfda51fc858..1f59ff72d5b 100644 --- a/packages/enhanced/package.json +++ b/packages/enhanced/package.json @@ -1,6 +1,6 @@ { "name": "@module-federation/enhanced", - "version": "0.2.0-canary.2", + "version": "0.2.0-canary.3", "type": "commonjs", "main": "src/index.js", "types": "src/index.d.ts", From 85a46e41168104354c1715303d6a3bee31bb68e1 Mon Sep 17 00:00:00 2001 From: semantic-release-bot Date: Wed, 8 Nov 2023 22:58:55 +0000 Subject: [PATCH 042/185] chore(release): Release node v2.1.0-canary.4 [skip ci] --- packages/node/CHANGELOG.md | 7 +++++++ packages/node/package.json | 2 +- 2 files changed, 8 insertions(+), 1 deletion(-) diff --git a/packages/node/CHANGELOG.md b/packages/node/CHANGELOG.md index 8aea5866182..753eb101207 100644 --- a/packages/node/CHANGELOG.md +++ b/packages/node/CHANGELOG.md @@ -1,3 +1,10 @@ +# [2.1.0-canary.4](https://github.com/module-federation/universe/compare/node-2.1.0-canary.3...node-2.1.0-canary.4) (2023-11-08) + + +### Bug Fixes + +* **enhanced:** correct schema validation issues ([5a04a81](https://github.com/module-federation/universe/commit/5a04a812f505ab8287d206abd0a6996057a994fc)) + # [2.1.0-canary.3](https://github.com/module-federation/universe/compare/node-2.1.0-canary.2...node-2.1.0-canary.3) (2023-11-08) ### Bug Fixes diff --git a/packages/node/package.json b/packages/node/package.json index 09141c3d9ae..4b7d19c72f0 100644 --- a/packages/node/package.json +++ b/packages/node/package.json @@ -1,7 +1,7 @@ { "public": true, "name": "@module-federation/node", - "version": "2.1.0-canary.3", + "version": "2.1.0-canary.4", "type": "commonjs", "main": "src/index.js", "exports": { From caa5959b2d394ee4ea31cfe97b8b3ffffa854e99 Mon Sep 17 00:00:00 2001 From: semantic-release-bot Date: Wed, 8 Nov 2023 23:03:46 +0000 Subject: [PATCH 043/185] chore(release): Release nextjs-mf v8.1.0-canary.5 [skip ci] --- packages/nextjs-mf/CHANGELOG.md | 7 +++++++ packages/nextjs-mf/package.json | 2 +- 2 files changed, 8 insertions(+), 1 deletion(-) diff --git a/packages/nextjs-mf/CHANGELOG.md b/packages/nextjs-mf/CHANGELOG.md index fc26cff8a86..74b2bca00e7 100644 --- a/packages/nextjs-mf/CHANGELOG.md +++ b/packages/nextjs-mf/CHANGELOG.md @@ -1,3 +1,10 @@ +# [8.1.0-canary.5](https://github.com/module-federation/universe/compare/nextjs-mf-8.1.0-canary.4...nextjs-mf-8.1.0-canary.5) (2023-11-08) + + +### Bug Fixes + +* **enhanced:** correct schema validation issues ([5a04a81](https://github.com/module-federation/universe/commit/5a04a812f505ab8287d206abd0a6996057a994fc)) + # [8.1.0-canary.4](https://github.com/module-federation/universe/compare/nextjs-mf-8.1.0-canary.3...nextjs-mf-8.1.0-canary.4) (2023-11-08) diff --git a/packages/nextjs-mf/package.json b/packages/nextjs-mf/package.json index 60ec7e34708..b34db6a3e7c 100644 --- a/packages/nextjs-mf/package.json +++ b/packages/nextjs-mf/package.json @@ -1,6 +1,6 @@ { "name": "@module-federation/nextjs-mf", - "version": "8.1.0-canary.4", + "version": "8.1.0-canary.5", "license": "MIT", "main": "src/index.js", "types": "src/index.d.ts", From 0fc627653bbb292a8531bf2bfd65569a1ba7d0db Mon Sep 17 00:00:00 2001 From: ScriptedAlchemy Date: Fri, 10 Nov 2023 15:00:26 -0800 Subject: [PATCH 044/185] fix: rename plugin took tap --- packages/enhanced/src/lib/container/AsyncBoundaryPlugin.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/enhanced/src/lib/container/AsyncBoundaryPlugin.ts b/packages/enhanced/src/lib/container/AsyncBoundaryPlugin.ts index 0207a56ed64..81933a45981 100644 --- a/packages/enhanced/src/lib/container/AsyncBoundaryPlugin.ts +++ b/packages/enhanced/src/lib/container/AsyncBoundaryPlugin.ts @@ -31,7 +31,7 @@ class AsyncEntryStartupPlugin { private collectRuntimeChunks(compilation: Compilation): void { compilation.hooks.beforeChunkAssets.tap( - 'CollectRuntimeChunksPlugin', + 'AsyncEntryStartupPlugin', () => { for (const chunk of compilation.chunks) { if (chunk.hasRuntime() && chunk.id !== null) { From e47f9eefc16323fbd63faa466aed9f4b6322bfac Mon Sep 17 00:00:00 2001 From: ScriptedAlchemy Date: Mon, 13 Nov 2023 14:15:19 -0800 Subject: [PATCH 045/185] fix(enhanced): use getAllReferencedChunks api for federation indexing --- packages/enhanced/src/lib/container/RemoteRuntimeModule.ts | 3 +-- .../enhanced/src/lib/sharing/ConsumeSharedRuntimeModule.ts | 5 +---- 2 files changed, 2 insertions(+), 6 deletions(-) diff --git a/packages/enhanced/src/lib/container/RemoteRuntimeModule.ts b/packages/enhanced/src/lib/container/RemoteRuntimeModule.ts index 2e072a5aed0..4b24ce4ae3e 100644 --- a/packages/enhanced/src/lib/container/RemoteRuntimeModule.ts +++ b/packages/enhanced/src/lib/container/RemoteRuntimeModule.ts @@ -22,8 +22,7 @@ class RemoteRuntimeModule extends RuntimeModule { const chunkToRemotesMapping: Record = {}; const idToExternalAndNameMapping: Record = {}; const allChunks = [ - ...Array.from(this.chunk?.getAllAsyncChunks() || []), - ...Array.from(this.chunk?.getAllInitialChunks() || []), + ...Array.from(this.chunk?.getAllReferencedChunks() || []), ]; for (const chunk of allChunks) { diff --git a/packages/enhanced/src/lib/sharing/ConsumeSharedRuntimeModule.ts b/packages/enhanced/src/lib/sharing/ConsumeSharedRuntimeModule.ts index 9091cd237d4..d76004d37d5 100644 --- a/packages/enhanced/src/lib/sharing/ConsumeSharedRuntimeModule.ts +++ b/packages/enhanced/src/lib/sharing/ConsumeSharedRuntimeModule.ts @@ -65,10 +65,7 @@ class ConsumeSharedRuntimeModule extends RuntimeModule { ); } }; - const allChunks = [ - ...(this.chunk?.getAllAsyncChunks() || []), - ...(this.chunk?.getAllInitialChunks() || []), - ]; + const allChunks = [...(this.chunk?.getAllReferencedChunks() || [])]; for (const chunk of allChunks) { const modules = chunkGraph.getChunkModulesIterableBySourceType( chunk, From bbf6f3059250a65813bd8b73876d0a9c5e4e1d93 Mon Sep 17 00:00:00 2001 From: ScriptedAlchemy Date: Wed, 15 Nov 2023 12:25:14 -0800 Subject: [PATCH 046/185] feat(enhanced): HoistContainerReferencesPlugin Hoist container references out of entrypoint chunks and into runtime chunks, useful when runtimeChunk: 'single' is set --- .github/workflows/trigger-release.yml | 1 + .../src/lib/container/AsyncBoundaryPlugin.ts | 1 - .../HoistContainerReferencesPlugin.ts | 73 +++++++++++++++++++ 3 files changed, 74 insertions(+), 1 deletion(-) create mode 100644 packages/enhanced/src/lib/container/HoistContainerReferencesPlugin.ts diff --git a/.github/workflows/trigger-release.yml b/.github/workflows/trigger-release.yml index df71c52f687..9b393cc0428 100644 --- a/.github/workflows/trigger-release.yml +++ b/.github/workflows/trigger-release.yml @@ -11,6 +11,7 @@ on: - affected - all - nextjs-mf + - runtime - node - storybook-addon - typescript diff --git a/packages/enhanced/src/lib/container/AsyncBoundaryPlugin.ts b/packages/enhanced/src/lib/container/AsyncBoundaryPlugin.ts index 81933a45981..b3587373ce4 100644 --- a/packages/enhanced/src/lib/container/AsyncBoundaryPlugin.ts +++ b/packages/enhanced/src/lib/container/AsyncBoundaryPlugin.ts @@ -155,7 +155,6 @@ class AsyncEntryStartupPlugin { ); const initialEntryModules = []; - // Iterate over the entry modules for (const entryModule of entryModules) { const entryModuleID = compilation.chunkGraph.getModuleId(entryModule); diff --git a/packages/enhanced/src/lib/container/HoistContainerReferencesPlugin.ts b/packages/enhanced/src/lib/container/HoistContainerReferencesPlugin.ts new file mode 100644 index 00000000000..ae29e0b734c --- /dev/null +++ b/packages/enhanced/src/lib/container/HoistContainerReferencesPlugin.ts @@ -0,0 +1,73 @@ +import Compiler from 'webpack/lib/Compiler'; +import Module from 'webpack/lib/Module'; +import Chunk from 'webpack/lib/Chunk'; +import Compilation from 'webpack/lib/Compilation'; +import ChunkGroup from 'webpack/lib/ChunkGroup'; + +/** + * @typedef {import("webpack").Compiler} Compiler + * @typedef {import("webpack").Compilation} Compilation + * @typedef {import("webpack").Chunk} Chunk + * @typedef {import("webpack").Module} Module + */ + +/** + * This class is used to hoist container references in the code. + * @constructor + */ +class HoistContainerReferences { + /** + * @function apply + * @param {Compiler} compiler The webpack compiler object + */ + apply(compiler: Compiler): void { + compiler.hooks.thisCompilation.tap( + 'HoistContainerReferences', + (compilation: Compilation) => { + compilation.hooks.afterOptimizeChunks.tap( + 'HoistContainerReferences', + (chunks: Iterable, chunkGroups: ChunkGroup[]) => { + /** @type {Map<(string|number), Chunk>} */ + const chunkSet = new Map(); + /** @type {Set} */ + const externalRequests = new Set(); + for (const chunk of chunks) { + const ident = chunk.id || chunk.name; + if (ident) { + chunkSet.set(ident, chunk); + } + } + for (const chunk of chunks) { + const remoteModules = + compilation.chunkGraph.getChunkModulesIterableBySourceType( + chunk, + 'remote', + ); + if (!remoteModules) continue; + for (const remoteModule of remoteModules) { + remoteModule.dependencies.forEach((dep: any) => { + const mod = compilation.moduleGraph.getModule(dep); + if (mod !== null && chunk.runtime) { + externalRequests.add(mod); + const runtimeChunk = (chunk.runtime typeof === 'string' || chunk.runtime typeof === 'number') ? Array.from(chunk.runtime) : [chunk.runtime]; + runtimeChunk.forEach((runtimeChunkId) => { + const runtimeChunk = chunkSet.get(runtimeChunkId); + if (runtimeChunk) { + compilation.chunkGraph.connectChunkAndModule( + runtimeChunk, + mod, + ); + } + }); + } + }); + } + } + }, + ); + }, + ); + } +} + +export default HoistContainerReferences; From a5cc876e9b8aa268f5eda7a3d350988d6e4cb44c Mon Sep 17 00:00:00 2001 From: ScriptedAlchemy Date: Fri, 17 Nov 2023 13:34:33 -0800 Subject: [PATCH 047/185] =?UTF-8?q?feat(enhanced):=20=E2=9C=A8=20Reference?= =?UTF-8?q?=20Hoisting?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Refactoring Hoist container references plugin --- .../HoistContainerReferencesPlugin.ts | 34 +++++++++++++------ 1 file changed, 23 insertions(+), 11 deletions(-) diff --git a/packages/enhanced/src/lib/container/HoistContainerReferencesPlugin.ts b/packages/enhanced/src/lib/container/HoistContainerReferencesPlugin.ts index ae29e0b734c..4ebba37c753 100644 --- a/packages/enhanced/src/lib/container/HoistContainerReferencesPlugin.ts +++ b/packages/enhanced/src/lib/container/HoistContainerReferencesPlugin.ts @@ -3,6 +3,7 @@ import Module from 'webpack/lib/Module'; import Chunk from 'webpack/lib/Chunk'; import Compilation from 'webpack/lib/Compilation'; import ChunkGroup from 'webpack/lib/ChunkGroup'; +import Dependency from 'webpack/lib/Dependency'; /** * @typedef {import("webpack").Compiler} Compiler @@ -15,52 +16,64 @@ import ChunkGroup from 'webpack/lib/ChunkGroup'; * This class is used to hoist container references in the code. * @constructor */ -class HoistContainerReferences { +export class HoistContainerReferences { /** * @function apply * @param {Compiler} compiler The webpack compiler object */ apply(compiler: Compiler): void { + // Hook into the compilation process compiler.hooks.thisCompilation.tap( 'HoistContainerReferences', (compilation: Compilation) => { + // After chunks are optimized, perform the hoisting compilation.hooks.afterOptimizeChunks.tap( 'HoistContainerReferences', (chunks: Iterable, chunkGroups: ChunkGroup[]) => { + // Create a map to store chunks by their id or name /** @type {Map<(string|number), Chunk>} */ const chunkSet = new Map(); + // Create a set to store external module requests /** @type {Set} */ const externalRequests = new Set(); + // Populate the chunkSet with chunks for (const chunk of chunks) { const ident = chunk.id || chunk.name; if (ident) { chunkSet.set(ident, chunk); } } + // Iterate over chunks again to handle remote modules for (const chunk of chunks) { + // Get iterable of remote modules for the chunk const remoteModules = compilation.chunkGraph.getChunkModulesIterableBySourceType( chunk, 'remote', ); if (!remoteModules) continue; + // Iterate over remote modules for (const remoteModule of remoteModules) { - remoteModule.dependencies.forEach((dep: any) => { + // Iterate over dependencies of the remote module + for (const dep of remoteModule.dependencies) { + // Get the module associated with the dependency const mod = compilation.moduleGraph.getModule(dep); + // If the module exists and the chunk has a runtime, add the module to externalRequests if (mod !== null && chunk.runtime) { externalRequests.add(mod); - const runtimeChunk = (chunk.runtime typeof === 'string' || chunk.runtime typeof === 'number') ? Array.from(chunk.runtime) : [chunk.runtime]; - runtimeChunk.forEach((runtimeChunkId) => { + // Get the runtime chunk(s) associated with the chunk + const runtimeChunk = typeof chunk.runtime === 'string' || typeof chunk.runtime === 'number' ? [chunk.runtime] : [...chunk.runtime]; + // Iterate over runtime chunks + for (const runtimeChunkId of runtimeChunk) { + // Get the runtime chunk from the chunkSet const runtimeChunk = chunkSet.get(runtimeChunkId); + // If the runtime chunk exists, connect it with the module in the chunk graph if (runtimeChunk) { - compilation.chunkGraph.connectChunkAndModule( - runtimeChunk, - mod, - ); + compilation.chunkGraph.connectChunkAndModule(runtimeChunk, mod); } - }); + } } - }); + } } } }, @@ -69,5 +82,4 @@ class HoistContainerReferences { ); } } - export default HoistContainerReferences; From 65eeb7dbd129bc5fe4250af9702cafcf4ad26671 Mon Sep 17 00:00:00 2001 From: ScriptedAlchemy Date: Fri, 17 Nov 2023 13:35:45 -0800 Subject: [PATCH 048/185] chore(enhanced): remove Ts ref imports --- .../enhanced/src/lib/container/HoistContainerReferencesPlugin.ts | 1 - 1 file changed, 1 deletion(-) diff --git a/packages/enhanced/src/lib/container/HoistContainerReferencesPlugin.ts b/packages/enhanced/src/lib/container/HoistContainerReferencesPlugin.ts index 4ebba37c753..c81b6fae791 100644 --- a/packages/enhanced/src/lib/container/HoistContainerReferencesPlugin.ts +++ b/packages/enhanced/src/lib/container/HoistContainerReferencesPlugin.ts @@ -3,7 +3,6 @@ import Module from 'webpack/lib/Module'; import Chunk from 'webpack/lib/Chunk'; import Compilation from 'webpack/lib/Compilation'; import ChunkGroup from 'webpack/lib/ChunkGroup'; -import Dependency from 'webpack/lib/Dependency'; /** * @typedef {import("webpack").Compiler} Compiler From 21016ab4b3ef9b4d261f1e02a9bfd295f5c41cc2 Mon Sep 17 00:00:00 2001 From: ScriptedAlchemy Date: Fri, 17 Nov 2023 15:08:33 -0800 Subject: [PATCH 049/185] lint --- .../HoistContainerReferencesPlugin.ts | 11 +++++++++-- .../apply-client-plugins.ts | 18 ++++++++++-------- .../plugins/RemotePublicPathRuntimeModule.ts | 1 - .../node/src/plugins/webpackChunkUtilities.ts | 1 - packages/node/src/utils/hot-reload.ts | 1 - 5 files changed, 19 insertions(+), 13 deletions(-) diff --git a/packages/enhanced/src/lib/container/HoistContainerReferencesPlugin.ts b/packages/enhanced/src/lib/container/HoistContainerReferencesPlugin.ts index c81b6fae791..5dd2515e951 100644 --- a/packages/enhanced/src/lib/container/HoistContainerReferencesPlugin.ts +++ b/packages/enhanced/src/lib/container/HoistContainerReferencesPlugin.ts @@ -61,14 +61,21 @@ export class HoistContainerReferences { if (mod !== null && chunk.runtime) { externalRequests.add(mod); // Get the runtime chunk(s) associated with the chunk - const runtimeChunk = typeof chunk.runtime === 'string' || typeof chunk.runtime === 'number' ? [chunk.runtime] : [...chunk.runtime]; + const runtimeChunk = + typeof chunk.runtime === 'string' || + typeof chunk.runtime === 'number' + ? [chunk.runtime] + : [...chunk.runtime]; // Iterate over runtime chunks for (const runtimeChunkId of runtimeChunk) { // Get the runtime chunk from the chunkSet const runtimeChunk = chunkSet.get(runtimeChunkId); // If the runtime chunk exists, connect it with the module in the chunk graph if (runtimeChunk) { - compilation.chunkGraph.connectChunkAndModule(runtimeChunk, mod); + compilation.chunkGraph.connectChunkAndModule( + runtimeChunk, + mod, + ); } } } diff --git a/packages/nextjs-mf/src/plugins/NextFederationPlugin/apply-client-plugins.ts b/packages/nextjs-mf/src/plugins/NextFederationPlugin/apply-client-plugins.ts index 4db00b6b1ec..ad6ada8e8dc 100644 --- a/packages/nextjs-mf/src/plugins/NextFederationPlugin/apply-client-plugins.ts +++ b/packages/nextjs-mf/src/plugins/NextFederationPlugin/apply-client-plugins.ts @@ -6,6 +6,8 @@ import { import DelegateModulesPlugin from '@module-federation/utilities/src/plugins/DelegateModulesPlugin'; import { ChunkCorrelationPlugin } from '@module-federation/node'; import InvertedContainerPlugin from '../container/InvertedContainerPlugin'; +import { HoistContainerReferences } from '@module-federation/enhanced/src/lib/container/HoistContainerReferencesPlugin'; + /** * Applies client-specific plugins. * @@ -37,14 +39,14 @@ export function applyClientPlugins( compiler.options.output.publicPath = 'auto'; // Build will hang without this. Likely something in my plugin compiler.options.optimization.splitChunks = undefined; - - new DelegateModulesPlugin({ - container: name, - runtime: 'webpack', - remotes, - debug: extraOptions.debug, - //@ts-ignore - }).apply(compiler); + new HoistContainerReferences().apply(compiler); + // new DelegateModulesPlugin({ + // container: name, + // runtime: 'webpack', + // remotes, + // debug: extraOptions.debug, + // //@ts-ignore + // }).apply(compiler); // If automatic page stitching is enabled, add a new rule to the compiler's module rules if (extraOptions.automaticPageStitching) { diff --git a/packages/node/src/plugins/RemotePublicPathRuntimeModule.ts b/packages/node/src/plugins/RemotePublicPathRuntimeModule.ts index 1323d226369..51f3cc4289c 100644 --- a/packages/node/src/plugins/RemotePublicPathRuntimeModule.ts +++ b/packages/node/src/plugins/RemotePublicPathRuntimeModule.ts @@ -115,7 +115,6 @@ class AutoPublicPathRuntimeModule extends RuntimeModule { ]), '}', ]), - // 'console.log(\'scriptUrl\', scriptUrl);', '// When supporting server environments where an automatic publicPath is not supported, you must specify an output.publicPath manually via configuration', '// or pass an empty string ("") and set the __webpack_public_path__ variable from your code to use your own logic.', 'if (!scriptUrl) throw new Error("Unable to calculate automatic public path");', diff --git a/packages/node/src/plugins/webpackChunkUtilities.ts b/packages/node/src/plugins/webpackChunkUtilities.ts index dc2eed6508b..4fd9f9cf7ae 100644 --- a/packages/node/src/plugins/webpackChunkUtilities.ts +++ b/packages/node/src/plugins/webpackChunkUtilities.ts @@ -348,7 +348,6 @@ export function generateInstallChunk( '}', ]), '}', - // 'console.log("install chunk", chunkIds, installedChunks);', 'if(runtime) runtime(__webpack_require__);', 'for(var i = 0; i < chunkIds.length; i++) {', Template.indent([ diff --git a/packages/node/src/utils/hot-reload.ts b/packages/node/src/utils/hot-reload.ts index 05e4a6af641..4f7f76fb234 100644 --- a/packages/node/src/utils/hot-reload.ts +++ b/packages/node/src/utils/hot-reload.ts @@ -30,7 +30,6 @@ export const performReload = (shouldReload: any) => { export const checkUnreachableRemote = (remoteScope: any) => { for (const property in remoteScope.remotes) { if (!remoteScope[property]) { - console.log(remoteScope, property); console.error( 'unreachable remote found', property, From b31a911840c49bd4f4a4e325971031815d3d4a33 Mon Sep 17 00:00:00 2001 From: ScriptedAlchemy Date: Sat, 18 Nov 2023 17:01:07 -0800 Subject: [PATCH 050/185] feat(nextjs-mf): Use HoistReferencePlugin over DelegatePlugin Replace DelegateModulesPlugin with HoistContainerReferencesPlugin, a more generic version written for ByteDance's ModernJS and VMOK. Achieves same thing, but in generic way --- .../src/lib/container/AsyncBoundaryPlugin.ts | 25 ++++++++----------- .../apply-client-plugins.ts | 1 - .../apply-server-plugins.ts | 11 +++----- 3 files changed, 15 insertions(+), 22 deletions(-) diff --git a/packages/enhanced/src/lib/container/AsyncBoundaryPlugin.ts b/packages/enhanced/src/lib/container/AsyncBoundaryPlugin.ts index b3587373ce4..2137c2609a6 100644 --- a/packages/enhanced/src/lib/container/AsyncBoundaryPlugin.ts +++ b/packages/enhanced/src/lib/container/AsyncBoundaryPlugin.ts @@ -30,23 +30,20 @@ class AsyncEntryStartupPlugin { } private collectRuntimeChunks(compilation: Compilation): void { - compilation.hooks.beforeChunkAssets.tap( - 'AsyncEntryStartupPlugin', - () => { - for (const chunk of compilation.chunks) { - if (chunk.hasRuntime() && chunk.id !== null) { - this._runtimeChunks.set(chunk.id, chunk); - for (const dependentChunk of compilation.chunkGraph.getChunkEntryDependentChunksIterable( - chunk, - )) { - if (dependentChunk.id !== null) { - this._runtimeChunks.set(dependentChunk.id, dependentChunk); - } + compilation.hooks.beforeChunkAssets.tap('AsyncEntryStartupPlugin', () => { + for (const chunk of compilation.chunks) { + if (chunk.hasRuntime() && chunk.id !== null) { + this._runtimeChunks.set(chunk.id, chunk); + for (const dependentChunk of compilation.chunkGraph.getChunkEntryDependentChunksIterable( + chunk, + )) { + if (dependentChunk.id !== null) { + this._runtimeChunks.set(dependentChunk.id, dependentChunk); } } } - }, - ); + } + }); } private handleRenderStartup( diff --git a/packages/nextjs-mf/src/plugins/NextFederationPlugin/apply-client-plugins.ts b/packages/nextjs-mf/src/plugins/NextFederationPlugin/apply-client-plugins.ts index ad6ada8e8dc..3c470ea7da1 100644 --- a/packages/nextjs-mf/src/plugins/NextFederationPlugin/apply-client-plugins.ts +++ b/packages/nextjs-mf/src/plugins/NextFederationPlugin/apply-client-plugins.ts @@ -3,7 +3,6 @@ import { ModuleFederationPluginOptions, NextFederationPluginExtraOptions, } from '@module-federation/utilities'; -import DelegateModulesPlugin from '@module-federation/utilities/src/plugins/DelegateModulesPlugin'; import { ChunkCorrelationPlugin } from '@module-federation/node'; import InvertedContainerPlugin from '../container/InvertedContainerPlugin'; import { HoistContainerReferences } from '@module-federation/enhanced/src/lib/container/HoistContainerReferencesPlugin'; diff --git a/packages/nextjs-mf/src/plugins/NextFederationPlugin/apply-server-plugins.ts b/packages/nextjs-mf/src/plugins/NextFederationPlugin/apply-server-plugins.ts index c044e794a03..c38a9d916b0 100644 --- a/packages/nextjs-mf/src/plugins/NextFederationPlugin/apply-server-plugins.ts +++ b/packages/nextjs-mf/src/plugins/NextFederationPlugin/apply-server-plugins.ts @@ -1,6 +1,6 @@ import { Compiler } from 'webpack'; import { ModuleFederationPluginOptions } from '@module-federation/utilities'; -import DelegatesModulePlugin from '@module-federation/utilities/src/plugins/DelegateModulesPlugin'; +import { HoistContainerReferences } from '@module-federation/enhanced/src/lib/container/HoistContainerReferencesPlugin'; import path from 'path'; import InvertedContainerPlugin from '../container/InvertedContainerPlugin'; import { @@ -35,12 +35,9 @@ export function applyServerPlugins( ); } new ModuleInfoRuntimePlugin().apply(compiler); - // Apply the DelegatesModulePlugin to the compiler - new DelegatesModulePlugin({ - runtime: 'webpack-runtime', - remotes: options.remotes, - container: options.name, - }).apply(compiler); + // Hoist container references into runtime chunks + //@ts-ignore + new HoistContainerReferences().apply(compiler); // Add the StreamingTargetPlugin with the ModuleFederationPlugin from the webpack container new StreamingTargetPlugin(options, { From cf61b302ee5bea8e250d9d30a7cfe9d55300eaa2 Mon Sep 17 00:00:00 2001 From: ScriptedAlchemy Date: Sun, 19 Nov 2023 01:48:42 -0800 Subject: [PATCH 051/185] fix(nextjs-mf): Improved async startup dep track --- .../src/lib/container/AsyncBoundaryPlugin.ts | 32 +++---- .../src/plugins/NextFederationPlugin/index.ts | 6 -- .../container/HoistPseudoEagerModules.ts | 95 +++++++++++++++++++ .../container/InvertedContainerPlugin.ts | 22 +++-- .../InvertedContainerRuntimeModule.ts | 22 ++--- 5 files changed, 133 insertions(+), 44 deletions(-) create mode 100644 packages/nextjs-mf/src/plugins/container/HoistPseudoEagerModules.ts diff --git a/packages/enhanced/src/lib/container/AsyncBoundaryPlugin.ts b/packages/enhanced/src/lib/container/AsyncBoundaryPlugin.ts index 2137c2609a6..eee8f2cbb46 100644 --- a/packages/enhanced/src/lib/container/AsyncBoundaryPlugin.ts +++ b/packages/enhanced/src/lib/container/AsyncBoundaryPlugin.ts @@ -55,7 +55,6 @@ class AsyncEntryStartupPlugin { ).renderStartup.tap( 'AsyncEntryStartupPlugin', (source: any, renderContext: Module, upperContext: { chunk: Chunk }) => { - // Check if this._runtimeChunks contains any runtime chunks const isSingleRuntime = compiler.options?.optimization?.runtimeChunk; if (upperContext?.chunk.id && isSingleRuntime) { if (upperContext?.chunk.hasRuntime()) { @@ -64,7 +63,6 @@ class AsyncEntryStartupPlugin { } } - // Check if excludeChunk is provided, use it to decide further processing if ( this._options.excludeChunk && this._options.excludeChunk(upperContext.chunk) @@ -95,7 +93,7 @@ class AsyncEntryStartupPlugin { if (runtime.size === 0) { runtime.add(upperContext.chunk); } - // Get the runtime requirements of the chunk + let remotes = ''; let shared = ''; @@ -117,59 +115,59 @@ class AsyncEntryStartupPlugin { 'consume-shared', ); - // Check if the chunk has remote get scope + const entryOptions = upperContext.chunk.getEntryOptions(); + const chunksToRef = entryOptions?.dependOn ? [...entryOptions.dependOn, upperContext.chunk.id] : [upperContext.chunk.id]; + if ( requirements.has(RuntimeGlobals.currentRemoteGetScope) || hasRemoteModules || requirements.has('__webpack_require__.vmok') ) { - remotes = `if(__webpack_require__.f && __webpack_require__.f.remotes) __webpack_require__.f.remotes(${JSON.stringify( - upperContext.chunk.id, - )}, promiseTrack);`; + for (const chunkId of chunksToRef) { + remotes += `if(__webpack_require__.f && __webpack_require__.f.remotes) __webpack_require__.f.remotes(${JSON.stringify( + chunkId, + )}, promiseTrack);`; + } } - // Check if the chunk has share scope map or initialize sharing if ( requirements.has(RuntimeGlobals.shareScopeMap) || requirements.has(RuntimeGlobals.initializeSharing) || consumeShares ) { - shared = `if(__webpack_require__.f && __webpack_require__.f.consumes) __webpack_require__.f.consumes(${JSON.stringify( - upperContext.chunk.id, - )}, promiseTrack);`; + for (const chunkId of chunksToRef) { + shared += `if(__webpack_require__.f && __webpack_require__.f.consumes) __webpack_require__.f.consumes(${JSON.stringify( + chunkId, + )}, promiseTrack);`; + } } } - // If no remotes or shared, return the source if (!remotes && !shared) { return source; } - // Get the entry modules of the chunk const entryModules = compilation.chunkGraph.getChunkEntryModulesIterable( upperContext.chunk, ); const initialEntryModules = []; - // Iterate over the entry modules + for (const entryModule of entryModules) { const entryModuleID = compilation.chunkGraph.getModuleId(entryModule); if (entryModuleID) { let shouldInclude = false; - // Check if eager is a function and call it if (typeof this._options.eager === 'function') { shouldInclude = this._options.eager(entryModule); } else if ( this._options.eager && this._options.eager.test(entryModule.identifier()) ) { - // Check if eager is a RegExp and test it shouldInclude = true; } - // If shouldInclude is true, push the module to initialEntryModules if (shouldInclude) { initialEntryModules.push( `__webpack_require__(${JSON.stringify(entryModuleID)});`, diff --git a/packages/nextjs-mf/src/plugins/NextFederationPlugin/index.ts b/packages/nextjs-mf/src/plugins/NextFederationPlugin/index.ts index 97dcecf540b..bf93f025515 100644 --- a/packages/nextjs-mf/src/plugins/NextFederationPlugin/index.ts +++ b/packages/nextjs-mf/src/plugins/NextFederationPlugin/index.ts @@ -137,12 +137,6 @@ export class NextFederationPlugin { remoteType: 'script', exposes: { './noop': noop, - './react': require.resolve('react'), - './react-dom': require.resolve('react-dom'), - './next/router': require.resolve('next/router'), - './next/link': require.resolve('next/link'), - './next/image': require.resolve('next/image'), - './next/head': require.resolve('next/head'), ...this._options.exposes, ...(this._extraOptions.exposePages ? exposeNextjsPages(compiler.options.context as string) diff --git a/packages/nextjs-mf/src/plugins/container/HoistPseudoEagerModules.ts b/packages/nextjs-mf/src/plugins/container/HoistPseudoEagerModules.ts new file mode 100644 index 00000000000..ef4daea8a03 --- /dev/null +++ b/packages/nextjs-mf/src/plugins/container/HoistPseudoEagerModules.ts @@ -0,0 +1,95 @@ +import Compiler from 'webpack/lib/Compiler'; +import Module from 'webpack/lib/Module'; +import Chunk from 'webpack/lib/Chunk'; +import Compilation from 'webpack/lib/Compilation'; +import ChunkGroup from 'webpack/lib/ChunkGroup'; + +/** + * @typedef {import("webpack").Compiler} Compiler + * @typedef {import("webpack").Compilation} Compilation + * @typedef {import("webpack").Chunk} Chunk + * @typedef {import("webpack").Module} Module + */ + +/** + * This class is responsible for hoisting container references in the code. + * @constructor + */ +export class HoistPseudoEager { + /** + * @function apply + * @param {Compiler} compiler The webpack compiler object + */ + apply(compiler: Compiler): void { + // Hook into the compilation process + compiler.hooks.thisCompilation.tap( + 'HoistPseudoEager', + (compilation: Compilation) => { + // Perform the hoisting after chunks are optimized + compilation.hooks.afterOptimizeChunks.tap( + 'HoistPseudoEager', + (chunks: Iterable, chunkGroups: ChunkGroup[]) => { + // Create a map to store chunks by their id or name + /** @type {Map<(string|number), Chunk>} */ + const chunkSet = new Map(); + // Create a set to store external module requests + /** @type {Set} */ + const externalRequests = new Set(); + // Populate the chunkSet with chunks + for (const chunk of chunks) { + const ident = chunk.id || chunk.name; + if (ident) { + chunkSet.set(ident, chunk); + } + } + + + // Iterate over chunks again to handle remote modules + for (const chunk of chunks) { + // Get iterable of remote modules for the chunk + const remoteModules = + compilation.chunkGraph.getChunkModulesIterableBySourceType( + chunk, + 'remote', + ); + if (!remoteModules) continue; + const runtime = chunkSet.get('webpack-runtime') || chunkSet.get('webpack'); + const runtimeRoots = runtime ? compilation.chunkGraph.getChunkRootModules(runtime) : null; + const refChunks = runtime ? Array.from(runtime.getAllReferencedChunks()) : null; + if (refChunks) { + for (const refChunk of refChunks) { + const consumeSharedModules = compilation.chunkGraph.getChunkModulesIterableBySourceType( + refChunk, + 'consume-shared', + ); + if (!consumeSharedModules) continue; + //loop through consume-shared modules + for (const module of consumeSharedModules) { + // Get the module associated with the dependency + for (const block of module.blocks) { + for (const dep of block.dependencies) { + const mod = compilation.moduleGraph.getModule(dep); + // If the module exists and the chunk has a runtime, add the module to externalRequests + if (mod !== null && runtime) { + // Get the runtime chunk from the chunkSet + // If the runtime chunk exists, connect it with the module in the chunk graph + compilation.chunkGraph.connectChunkAndModule( + runtime, + mod, + ); + } + } + } + } + } + } + + } + }, + ); + }, + ); + } +} +export default HoistPseudoEager; + diff --git a/packages/nextjs-mf/src/plugins/container/InvertedContainerPlugin.ts b/packages/nextjs-mf/src/plugins/container/InvertedContainerPlugin.ts index c8dc3cf5bde..bc775debb57 100644 --- a/packages/nextjs-mf/src/plugins/container/InvertedContainerPlugin.ts +++ b/packages/nextjs-mf/src/plugins/container/InvertedContainerPlugin.ts @@ -2,16 +2,17 @@ import type Compiler from 'webpack/lib/Compiler'; import { ModuleFederationPluginOptions } from './types'; import EmbeddedContainerPlugin from './EmbeddedContainerPlugin'; import { AsyncBoundaryPlugin } from '@module-federation/enhanced'; +import HoistPseudoEager from './HoistPseudoEagerModules'; /** - * This interface includes additional fields specific to the plugin's behavior. + * This interface extends the ModuleFederationPluginOptions interface and includes additional fields + * specific to the InvertedContainerPlugin's behavior. * @interface InvertedContainerOptions - * @extends {ModuleFederationPluginOptions} - * @property {string} [container] - The container name. + * @property {string} [container] - The name of the container. * @property {Record} remotes - A map of remote modules to their URLs. * @property {string} runtime - The name of the current module. * @property {boolean} [debug] - A flag to enable debug logging. - * @property {string} chunkToEmbed - The chunk to embed. + * @property {string} chunkToEmbed - The name of the chunk to embed. */ interface InvertedContainerOptions extends ModuleFederationPluginOptions { container?: string; @@ -22,23 +23,23 @@ interface InvertedContainerOptions extends ModuleFederationPluginOptions { } /** - * InvertedContainerPlugin is a Webpack plugin that handles loading of chunks in a federated module. + * The InvertedContainerPlugin is a Webpack plugin that manages the loading of chunks in a federated module. * @class */ class InvertedContainerPlugin { private options: InvertedContainerOptions; /** - * Constructor for the InvertedContainerPlugin. - * @param {InvertedContainerOptions} options - Plugin configuration options. + * Constructs an instance of the InvertedContainerPlugin. + * @param {InvertedContainerOptions} options - The configuration options for the plugin. */ constructor(options: InvertedContainerOptions) { this.options = options; } /** - * Apply method for the Webpack plugin, handling the plugin logic and hooks. - * @param {Compiler} compiler - Webpack compiler instance. + * This method applies the plugin logic and hooks to the Webpack compiler instance. + * @param {Compiler} compiler - The Webpack compiler instance. */ public apply(compiler: Compiler): void { new EmbeddedContainerPlugin({ @@ -48,6 +49,8 @@ class InvertedContainerPlugin { }).apply(compiler); const asyncBoundaryPlugin = new AsyncBoundaryPlugin().apply(compiler); + new HoistPseudoEager().apply(compiler); + // The following code is commented out for future reference. // asyncBoundaryPlugin.hooks.checkInvalidContext.tap( // 'InvertedContainerPlugin', // (renderContext, compilation) => { @@ -66,7 +69,6 @@ class InvertedContainerPlugin { // ); // }, // ); - // // asyncBoundaryPlugin.apply(compiler); } } diff --git a/packages/nextjs-mf/src/plugins/container/InvertedContainerRuntimeModule.ts b/packages/nextjs-mf/src/plugins/container/InvertedContainerRuntimeModule.ts index 8dc5c6b43f4..0c8ec91fe04 100644 --- a/packages/nextjs-mf/src/plugins/container/InvertedContainerRuntimeModule.ts +++ b/packages/nextjs-mf/src/plugins/container/InvertedContainerRuntimeModule.ts @@ -15,7 +15,7 @@ class InvertedContainerRuntimeModule extends RuntimeModule { private options: InvertedContainerRuntimeModuleOptions; constructor(options: InvertedContainerRuntimeModuleOptions) { - super('inverted container startup', RuntimeModule.STAGE_BASIC); + super('inverted container startup', RuntimeModule.STAGE_ATTACH + 3); this.options = options; } @@ -96,16 +96,16 @@ class InvertedContainerRuntimeModule extends RuntimeModule { )}]) {`, ` ${containerScope}[${JSON.stringify(name)}] = innerRemote;`, ' }', - ` __webpack_require__.S.default = new Proxy({${sharedObjectString}}`, - ' , {', - ' get: function(target, property) {', - ' return target[property];', - ' },', - ' set: function(target, property, value) {', - ' target[property] = value;', - ' return true;', - ' }', - ' });', + // ` __webpack_require__.S.default = new Proxy({${sharedObjectString}}`, + // ' , {', + // ' get: function(target, property) {', + // ' return target[property];', + // ' },', + // ' set: function(target, property, value) {', + // ' target[property] = value;', + // ' return true;', + // ' }', + // ' });', ' if(resolve) resolve(innerRemote);', '}', ]), From 3d68a48f0b8d17833668ca4f5a442dd01f5c3e0e Mon Sep 17 00:00:00 2001 From: ScriptedAlchemy Date: Sun, 19 Nov 2023 01:49:48 -0800 Subject: [PATCH 052/185] chore: formatting --- .../src/lib/container/AsyncBoundaryPlugin.ts | 4 +++- .../container/HoistPseudoEagerModules.ts | 23 +++++++++++-------- .../container/InvertedContainerPlugin.ts | 2 +- 3 files changed, 17 insertions(+), 12 deletions(-) diff --git a/packages/enhanced/src/lib/container/AsyncBoundaryPlugin.ts b/packages/enhanced/src/lib/container/AsyncBoundaryPlugin.ts index eee8f2cbb46..16ec4a57c10 100644 --- a/packages/enhanced/src/lib/container/AsyncBoundaryPlugin.ts +++ b/packages/enhanced/src/lib/container/AsyncBoundaryPlugin.ts @@ -116,7 +116,9 @@ class AsyncEntryStartupPlugin { ); const entryOptions = upperContext.chunk.getEntryOptions(); - const chunksToRef = entryOptions?.dependOn ? [...entryOptions.dependOn, upperContext.chunk.id] : [upperContext.chunk.id]; + const chunksToRef = entryOptions?.dependOn + ? [...entryOptions.dependOn, upperContext.chunk.id] + : [upperContext.chunk.id]; if ( requirements.has(RuntimeGlobals.currentRemoteGetScope) || diff --git a/packages/nextjs-mf/src/plugins/container/HoistPseudoEagerModules.ts b/packages/nextjs-mf/src/plugins/container/HoistPseudoEagerModules.ts index ef4daea8a03..a06da460420 100644 --- a/packages/nextjs-mf/src/plugins/container/HoistPseudoEagerModules.ts +++ b/packages/nextjs-mf/src/plugins/container/HoistPseudoEagerModules.ts @@ -43,7 +43,6 @@ export class HoistPseudoEager { } } - // Iterate over chunks again to handle remote modules for (const chunk of chunks) { // Get iterable of remote modules for the chunk @@ -53,15 +52,21 @@ export class HoistPseudoEager { 'remote', ); if (!remoteModules) continue; - const runtime = chunkSet.get('webpack-runtime') || chunkSet.get('webpack'); - const runtimeRoots = runtime ? compilation.chunkGraph.getChunkRootModules(runtime) : null; - const refChunks = runtime ? Array.from(runtime.getAllReferencedChunks()) : null; + const runtime = + chunkSet.get('webpack-runtime') || chunkSet.get('webpack'); + const runtimeRoots = runtime + ? compilation.chunkGraph.getChunkRootModules(runtime) + : null; + const refChunks = runtime + ? Array.from(runtime.getAllReferencedChunks()) + : null; if (refChunks) { for (const refChunk of refChunks) { - const consumeSharedModules = compilation.chunkGraph.getChunkModulesIterableBySourceType( - refChunk, - 'consume-shared', - ); + const consumeSharedModules = + compilation.chunkGraph.getChunkModulesIterableBySourceType( + refChunk, + 'consume-shared', + ); if (!consumeSharedModules) continue; //loop through consume-shared modules for (const module of consumeSharedModules) { @@ -83,7 +88,6 @@ export class HoistPseudoEager { } } } - } }, ); @@ -92,4 +96,3 @@ export class HoistPseudoEager { } } export default HoistPseudoEager; - diff --git a/packages/nextjs-mf/src/plugins/container/InvertedContainerPlugin.ts b/packages/nextjs-mf/src/plugins/container/InvertedContainerPlugin.ts index bc775debb57..e58d70dbbe6 100644 --- a/packages/nextjs-mf/src/plugins/container/InvertedContainerPlugin.ts +++ b/packages/nextjs-mf/src/plugins/container/InvertedContainerPlugin.ts @@ -5,7 +5,7 @@ import { AsyncBoundaryPlugin } from '@module-federation/enhanced'; import HoistPseudoEager from './HoistPseudoEagerModules'; /** - * This interface extends the ModuleFederationPluginOptions interface and includes additional fields + * This interface extends the ModuleFederationPluginOptions interface and includes additional fields * specific to the InvertedContainerPlugin's behavior. * @interface InvertedContainerOptions * @property {string} [container] - The name of the container. From 204a0bc9224a01facf6467cbd9dab293bce38ee4 Mon Sep 17 00:00:00 2001 From: ScriptedAlchemy Date: Sun, 19 Nov 2023 13:11:47 -0800 Subject: [PATCH 053/185] ignore nx dir --- .gitignore | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.gitignore b/.gitignore index 4de67118892..2e173c9dafa 100644 --- a/.gitignore +++ b/.gitignore @@ -7,7 +7,7 @@ /build /@mf-types /docs - +/.nx # dependencies node_modules From 92ba93bd4ddded5f71a6f3413a7cd3b1c2427038 Mon Sep 17 00:00:00 2001 From: ScriptedAlchemy Date: Sun, 19 Nov 2023 13:44:45 -0800 Subject: [PATCH 054/185] test: add e2e test for next --- .vscode/launch.json | 110 ++++++++++++++++-- apps/3000-home/.eslintrc.json | 5 + apps/3000-home/components/SharedNav.tsx | 73 +++++------- apps/3000-home/cypress.config.ts | 6 + apps/3000-home/cypress/e2e/app.cy.ts | 29 +++++ apps/3000-home/cypress/e2e/checkout.cy.ts | 13 +++ apps/3000-home/cypress/e2e/shop.cy.ts | 52 +++++++++ apps/3000-home/cypress/fixtures/example.json | 5 + apps/3000-home/cypress/support/app.po.ts | 1 + apps/3000-home/cypress/support/commands.ts | 35 ++++++ apps/3000-home/cypress/support/e2e.ts | 17 +++ apps/3000-home/cypress/tsconfig.json | 20 ++++ apps/3000-home/pages/_app.tsx | 1 - apps/3000-home/pages/index.tsx | 3 +- apps/3000-home/project.json | 33 ++++++ apps/3000-home/tsconfig.json | 1 - apps/3001-shop/components/WebpackPng.tsx | 2 +- .../components/CheckoutTitle.tsx | 2 - nx.json | 3 + package.json | 3 + 20 files changed, 354 insertions(+), 60 deletions(-) create mode 100644 apps/3000-home/cypress.config.ts create mode 100644 apps/3000-home/cypress/e2e/app.cy.ts create mode 100644 apps/3000-home/cypress/e2e/checkout.cy.ts create mode 100644 apps/3000-home/cypress/e2e/shop.cy.ts create mode 100644 apps/3000-home/cypress/fixtures/example.json create mode 100644 apps/3000-home/cypress/support/app.po.ts create mode 100644 apps/3000-home/cypress/support/commands.ts create mode 100644 apps/3000-home/cypress/support/e2e.ts create mode 100644 apps/3000-home/cypress/tsconfig.json diff --git a/.vscode/launch.json b/.vscode/launch.json index 65653485755..1590b710ea4 100644 --- a/.vscode/launch.json +++ b/.vscode/launch.json @@ -5,26 +5,112 @@ "version": "0.2.0", "configurations": [ { - "command": "npm run start:next", - "name": "Run npm start:next", + "command": "npm run nx", + "name": "Run npm nx", "request": "launch", "type": "node-terminal" }, { - "type": "node", + "command": "npm run commit", + "name": "Run npm commit", "request": "launch", - "name": "gpt:pr", - "skipFiles": ["/**"], - "program": "${workspaceFolder}/gpt/index.js", - "args": ["--pr"] + "type": "node-terminal" + }, + { + "command": "npm run docs", + "name": "Run npm docs", + "request": "launch", + "type": "node-terminal" + }, + { + "command": "npm run e2e:test", + "name": "Run npm e2e:test", + "request": "launch", + "type": "node-terminal" + }, + { + "command": "npm run lint", + "name": "Run npm lint", + "request": "launch", + "type": "node-terminal" + }, + { + "command": "npm run test", + "name": "Run npm test", + "request": "launch", + "type": "node-terminal" + }, + { + "command": "npm run build", + "name": "Run npm build", + "request": "launch", + "type": "node-terminal" + }, + { + "command": "npm run lint-fix", + "name": "Run npm lint-fix", + "request": "launch", + "type": "node-terminal" + }, + { + "command": "npm run trigger-release", + "name": "Run npm trigger-release", + "request": "launch", + "type": "node-terminal" + }, + { + "command": "npm run serve:next", + "name": "Run npm serve:next", + "request": "launch", + "type": "node-terminal" + }, + { + "command": "npm run serve:website", + "name": "Run npm serve:website", + "request": "launch", + "type": "node-terminal" + }, + { + "command": "npm run build:website", + "name": "Run npm build:website", + "request": "launch", + "type": "node-terminal" + }, + { + "command": "npm run extract-i18n:website", + "name": "Run npm extract-i18n:website", + "request": "launch", + "type": "node-terminal" }, { - "type": "node", + "command": "npm run postinstall", + "name": "Run npm postinstall", "request": "launch", - "name": "gpt:commit", - "skipFiles": ["/**"], - "program": "${workspaceFolder}/gpt/index.js", - "args": ["--commit"] + "type": "node-terminal" + }, + { + "command": "npm run sync:types:webpack", + "name": "Run npm sync:types:webpack", + "request": "launch", + "type": "node-terminal" + }, + { + "command": "npm run sync:pullMFTypes", + "name": "Run npm sync:pullMFTypes", + "request": "launch", + "type": "node-terminal" + }, + { + "command": "npm run app:next:dev", + "name": "Run npm app:next:dev", + "request": "launch", + "type": "node-terminal" + }, + { + "command": "npm run app:next:prod", + "name": "Run npm app:next:prod", + "request": "launch", + "type": "node-terminal" } ] } diff --git a/apps/3000-home/.eslintrc.json b/apps/3000-home/.eslintrc.json index 2053b0f6903..ccc1a074c6a 100644 --- a/apps/3000-home/.eslintrc.json +++ b/apps/3000-home/.eslintrc.json @@ -1,5 +1,6 @@ { "extends": [ + "plugin:cypress/recommended", "plugin:@nx/react-typescript", "next", "next/core-web-vitals", @@ -20,6 +21,10 @@ { "files": ["*.js", "*.jsx"], "rules": {} + }, + { + "files": ["*.cy.{ts,js,tsx,jsx}", "cypress/**/*.{ts,js,tsx,jsx}"], + "rules": {} } ], "rules": { diff --git a/apps/3000-home/components/SharedNav.tsx b/apps/3000-home/components/SharedNav.tsx index 1960644a9c0..5a0a910975d 100644 --- a/apps/3000-home/components/SharedNav.tsx +++ b/apps/3000-home/components/SharedNav.tsx @@ -5,12 +5,8 @@ import './menu'; const SharedNav = () => { const { asPath, push } = useRouter(); - // is used here as a demo for tracking loading status of remote container - // const homeRemote = useMFRemote('home_app'); - // const shopRemote = useMFRemote('shop'); - // const checkoutRemote = useMFRemote('checkout'); - let activeMenu; + if (asPath === '/' || asPath.startsWith('/home')) { activeMenu = '/'; } else if (asPath.startsWith('/shop')) { @@ -19,8 +15,36 @@ const SharedNav = () => { activeMenu = '/checkout'; } - // const badgeColor = (remoteData) => - // remoteData.error ? 'red' : remoteData.loaded ? 'green' : 'yellow'; + const menuItems = [ + { + className: 'home-menu-link', + label: ( + <> + Home 3000 + + ), + key: '/', + onMouseEnter: () => {}, + }, + { + className: 'shop-menu-link', + label: ( + <> + Shop 3001 + + ), + key: '/shop', + }, + { + className: 'checkout-menu-link', + label: ( + <> + Checkout 3002 + + ), + key: '/checkout', + }, + ]; return ( @@ -32,40 +56,7 @@ const SharedNav = () => { onClick={({ key }) => { push(key); }} - items={[ - { - label: ( - <> - Home 3000 - - ), - key: '/', - onMouseEnter: () => { - // prefetch remote container on HOVER manually - // if you use `next/link` it prefetches remoteEntry automatically - // but here Antd.Menu does not use Link, so do it manually - // homeRemote.remote.getContainer(); - }, - }, - { - label: ( - <> - Shop 3001 - - ), - key: '/shop', - // onMouseEnter: () => shopRemote.remote.getContainer(), - }, - { - label: ( - <> - Checkout 3002 - - ), - key: '/checkout', - // onMouseEnter: () => checkoutRemote.remote.getContainer(), - }, - ]} + items={menuItems} />