Skip to content

chore(rslib-runtime): roll up bundleless runtime stack migration#4353

Closed
ScriptedAlchemy wants to merge 302 commits intomainfrom
rslib/runtime-core
Closed

chore(rslib-runtime): roll up bundleless runtime stack migration#4353
ScriptedAlchemy wants to merge 302 commits intomainfrom
rslib/runtime-core

Conversation

@ScriptedAlchemy
Copy link
Member

@ScriptedAlchemy ScriptedAlchemy commented Feb 2, 2026

Summary

  • roll up the full rslib bundleless migration chain into the rslib/runtime-core -> main PR
  • migrate the runtime stack to rslib bundleless outputs across runtime-core, runtime, sdk, runtime-tools, and webpack-bundler-runtime
  • align downstream integrations and consumers (enhanced, rspack, node, metro-core, inject-external-runtime-core-plugin, error-codes)
  • include related manifest demo and workflow parity updates required by the migration

Included Chain PRs (already merged into this branch)

Changed Packages

  • @module-federation/runtime-core
  • @module-federation/runtime
  • @module-federation/sdk
  • @module-federation/runtime-tools
  • @module-federation/webpack-bundler-runtime
  • @module-federation/enhanced
  • @module-federation/rspack
  • @module-federation/node
  • @module-federation/metro
  • @module-federation/runtime-plugins
  • @module-federation/error-codes

Changesets

  • .changeset/odd-birds-hear.md
  • .changeset/loud-elephants-lie.md
  • .changeset/mean-plants-bake.md
  • .changeset/tall-seals-lie.md
  • .changeset/wet-carpets-begin.md

Base

  • main

Single-PR Review Guide (No Additional PRs)

This PR will remain a single PR. Improvements are being done in-place (no stacked or follow-up PR splitting).

Suggested Review Order

  1. Core behavior/runtime changes first.
  2. Build/tooling and workflow updates second.
  3. Docs/examples/app fixtures last.

In-Place Scope Trim Checklist

  • Remove unrelated churn not required for this PR goal.
  • Keep lockfile and generated changes only when strictly needed.
  • Confirm acceptance criteria and regression tests are explicit in this PR.
  • Resolve merge conflict status and required CI checks before final re-review.

@changeset-bot
Copy link

changeset-bot bot commented Feb 2, 2026

🦋 Changeset detected

Latest commit: 3eec91b

The changes in this PR will be included in the next version bump.

This PR includes changesets to release 46 packages
Name Type
@module-federation/error-codes Patch
@module-federation/dts-plugin Patch
@module-federation/retry-plugin Patch
@module-federation/native-federation-tests Patch
@module-federation/native-federation-typescript Patch
@module-federation/third-party-dts-extractor Patch
@module-federation/core Patch
@module-federation/enhanced Patch
@module-federation/node Patch
@module-federation/nextjs-mf Patch
@module-federation/inject-external-runtime-core-plugin Patch
@module-federation/webpack-bundler-runtime Patch
@module-federation/rspack Patch
@module-federation/runtime Patch
@module-federation/runtime-core Patch
@module-federation/metro Patch
@module-federation/runtime-tools Patch
@module-federation/sdk Patch
@module-federation/rspress-plugin Patch
website-new Patch
@module-federation/cli Patch
@module-federation/manifest Patch
@module-federation/modern-js-v3 Patch
@module-federation/modern-js Patch
@module-federation/rsbuild-plugin Patch
@module-federation/storybook-addon Patch
shared-tree-shaking-no-server-host Patch
shared-tree-shaking-no-server-provider Patch
@module-federation/devtools Patch
@module-federation/data-prefetch Patch
@module-federation/bridge-react Patch
@module-federation/bridge-vue3 Patch
@module-federation/metro-plugin-rnc-cli Patch
@module-federation/metro-plugin-rnef Patch
@module-federation/esbuild Patch
@module-federation/managers Patch
@module-federation/utilities Patch
@module-federation/bridge-react-webpack-plugin Patch
shared-tree-shaking-with-server-host Patch
shared-tree-shaking-with-server-provider Patch
remote5 Patch
remote6 Patch
@module-federation/bridge-shared Patch
create-module-federation Patch
@module-federation/treeshake-server Patch
@module-federation/treeshake-frontend Patch

Not sure what this means? Click here to learn what changesets are.

Click here if you're a maintainer who wants to add another changeset to this PR

@netlify
Copy link

netlify bot commented Feb 2, 2026

Deploy Preview for module-federation-docs failed. Why did it fail? →

Name Link
🔨 Latest commit 3eec91b
🔍 Latest deploy log https://app.netlify.com/projects/module-federation-docs/deploys/69a937b7fe15f60008c5f662

@github-actions
Copy link
Contributor

github-actions bot commented Feb 6, 2026

Bundle Size Report

35 package(s) changed, 6 unchanged.

Package Total dist Delta ESM gzip Delta
enhanced 2.64 MB +1.35 MB (+104.4%) 842 B +98 B (+13.2%)
dts-plugin 850.5 kB +223.4 kB (+35.6%) 4.9 kB -18914 B (-78.9%)
node 280.3 kB +157.1 kB (+127.5%) 458 B -31 B (-6.3%)
runtime-core 454.6 kB +149.1 kB (+48.8%) 807 B -25383 B (-96.9%)
sdk 188.4 kB +83.8 kB (+80.1%) 460 B -7856 B (-94.5%)
nextjs-mf 193.3 kB +79.8 kB (+70.3%) 971 B +687 B (+241.9%)
webpack-bundler-runtime 118.0 kB +41.3 kB (+53.7%) 585 B -5474 B (-90.3%)
native-federation-typescript 73.3 kB +27.8 kB (+61.0%) 893 B +783 B (+711.8%)
core 40.1 kB +22.5 kB (+128.0%) 1.1 kB +664 B (+152.3%)
vue3-bridge 136.5 kB -23007 B (-14.1%) 21.1 kB -2214 B (-9.3%)
treeshake-server 795.7 kB -21462 B (-2.6%) 124 B -8039 B (-98.5%)
esbuild 284.5 kB +19.4 kB (+7.3%) 116 B no change
runtime 35.7 kB +17.8 kB (+99.3%) 786 B +28 B (+3.7%)
metro-core 252.0 kB +14.8 kB (+6.2%) 123 B -24 B (-16.3%)
error-codes 19.6 kB +13.2 kB (+207.2%) 189 B -650 B (-77.5%)
runtime-tools 14.8 kB +11.2 kB (+310.5%) 174 B +42 B (+31.8%)
third-party-dts-extractor 28.9 kB +11.0 kB (+61.9%) 130 B -1844 B (-93.4%)
native-federation-tests 57.6 kB +10.9 kB (+23.4%) 948 B +843 B (+802.9%)
bridge-react 350.5 kB -9259 B (-2.5%) 1.3 kB +2 B (+0.2%)
modern-js-plugin 188.1 kB +7.3 kB (+4.1%) 1.2 kB no change
modern-js-plugin-v3 179.1 kB +6.8 kB (+3.9%) 872 B no change
rsbuild-plugin 107.8 kB -4679 B (-4.1%) 91 B no change
retry-plugin 51.9 kB +3.8 kB (+7.9%) 839 B -2449 B (-74.5%)
utils 114.3 kB +3.6 kB (+3.3%) 328 B no change
managers 68.2 kB +3.5 kB (+5.4%) 324 B -10 B (-3.0%)
manifest 137.0 kB +2.1 kB (+1.6%) 182 B no change
inject-external-runtime-core-plugin 6.8 kB +1.8 kB (+35.2%) 646 B +101 B (+18.5%)
data-prefetch 111.2 kB -1650 B (-1.4%) 105 B no change
cli 26.1 kB -1385 B (-4.9%) 774 B -12 B (-1.5%)
rspack 56.9 kB -1368 B (-2.3%) 211 B no change
create-module-federation 12.9 kB -453 B (-3.3%) 3.5 kB -26 B (-0.7%)
rspress-plugin 10.6 kB -228 B (-2.1%) 2.8 kB -24 B (-0.8%)
metro-plugin-rnef 8.4 kB -74 B (-0.9%) 111 B no change
treeshake-frontend 634.2 kB -21 B (-0.0%) 0 B no change
storybook-addon 15.7 kB -6 B (-0.0%) 95 B no change

Total dist: 9.06 MB (+2.18 MB (+31.6%))
Total ESM gzip: 70.6 kB (-69702 B (-49.1%))

ScriptedAlchemy and others added 27 commits February 5, 2026 21:24
ScriptedAlchemy and others added 29 commits February 16, 2026 23:24
- @rslib/core → 0.19.6 across all packages and apps
- @rsbuild/core 2.0.0-beta.2 → 2.0.0-beta.4 (beta consumers)
- @rsbuild/core 1.3.21 → 1.7.3, ^1.6.15 → ^1.7.3 (stable consumers)
- @rsbuild/plugin-sass ^1.3.2 → ^1.5.0

Co-authored-by: Cursor <cursoragent@cursor.com>
Resolve loadScriptNode from @module-federation/sdk/node via an indirect require
so runtime-core does not export an undefined function.

Harden nextjs-mf post-build cjs copy steps to no-op when cjs outputs already
exist.

Co-authored-by: Cursor <cursoragent@cursor.com>
Remove the node package type field and keep manifest debug instrumentation updates
so ci:local e2e-manifest can build and run end-to-end.

Co-authored-by: Cursor <cursoragent@cursor.com>
Remove temporary manifest host/provider debug instrumentation while
keeping React Refresh exclusions that prevent $Refresh runtime errors.

Co-authored-by: Cursor <cursoragent@cursor.com>
Apply formatting updates for the two files reported by CI format:check
so the checkout-install gate passes consistently.

Co-authored-by: Cursor <cursoragent@cursor.com>
- Add watch mode to ci-local.mjs with --watch, --watch-path, --watch-debounce-ms
- Abort and restart jobs on file changes with proper process group termination
- Fix node package ESM/CJS handling and flush-chunks TS7053 type assertion
- Add pluginEmitCjsFromEsm and runtime plugin updates

Co-authored-by: Cursor <cursoragent@cursor.com>
Fix the broken lockfile dependency graph found during CI revalidation.
This keeps local and CI installs resolving consistently on this branch.

Co-authored-by: Cursor <cursoragent@cursor.com>
Align error-codes import entrypoints with emitted files and remove the
extra RawSource argument so additionalFilesToCompile no longer fails TYPE-001.

Co-authored-by: Cursor <cursoragent@cursor.com>
Refresh pnpm-lock.yaml for this branch so checkout-install and publish-preview
no longer fail with ERR_PNPM_OUTDATED_LOCKFILE.

Co-authored-by: Cursor <cursoragent@cursor.com>
Restore sdk and error-codes export paths to the filenames emitted by the
current build so CI package resolution no longer fails on these branches.

Co-authored-by: Cursor <cursoragent@cursor.com>
…syntax errors

Co-authored-by: Cursor <cursoragent@cursor.com>
# Conflicts:
#	packages/error-codes/package.json
#	packages/node/package.json
#	packages/storybook-addon/package.json
@zhoushaw zhoushaw closed this Mar 9, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants