v22.0.0-next.1 is on npm. This is the release candidate for the Angular 22 line, and we would like to hear from you before it goes out as 22.0.0 stable.
If you use Module Federation with Angular, please try this build on a real project and tell us what breaks, what feels off, and what you would like to see improved. Every report on this issue helps us ship a better stable release.
Try it
All three packages are released together:
npm i @angular-architects/module-federation@22.0.0-next.1
npm i @angular-architects/module-federation-runtime@22.0.0-next.1
npm i @angular-architects/module-federation-tools@22.0.0-next.1
Upgrading from v21:
ng update @angular-architects/module-federation@22.0.0-next.1
A worked host-and-two-remotes setup that runs against these sources lives in apps/ if you want a reference config to compare against.
What is in this release
- Angular 22 support — builders, schematics and the
ng add / init-webpack flows updated for the Angular 22 CLI.
ng update migrations are shipped again — including migrate-to-custom-webpack, which replaces the removed ngx-build-plus builders with @angular-builders/custom-webpack.
- rspack support moved to the maintained builder (still experimental).
- A real diagnostic for unsupported remote types. A bad
type in the manifest used to surface as a TypeError naming neither the remote nor the value; it now throws an error that names both.
sharedMappings now honours the skip list. The filter result was previously discarded, so the skip list was a no-op for explicit sharedMappings arrays.
- Native Federation has moved out of this repository to github.com/native-federation.
ng add no longer offers the Native Federation stack — use native-federation/angular-adapter instead. The deprecated v3 sources for Angular 21 stay on the 21.x.x branch.
Breaking changes to watch for
ng add @angular-architects/module-federation no longer offers Native Federation. If your workflow depended on that option, switch to the new adapter linked above.
- A package listed in both
sharedMappings and the skip list is no longer mapped or shared. The skip list covers tslib, zone.js, @angular-architects/module-federation, @angular-architects/module-federation-runtime, the @softarc/native-federation-* entries, @angular/router/upgrade, @angular/common/upgrade, plus anything you pass in your own skip option. This is unusual in practice — sharedMappings is for monorepo libraries resolved through tsconfig paths — but a config that relied on the old behaviour will now silently stop sharing that package.
ngx-build-plus is gone. The migrate-to-custom-webpack migration handles the switch; please report anything it misses.
What we would especially like feedback on
- Upgrading an existing v21 (or older) project to v22 — did
ng update do the right thing?
ng add / init-webpack on a fresh Angular 22 workspace, both CLI and Nx.
- Dynamic Module Federation and manifest-based setups.
- The rspack builder, if you are on it.
- Monorepo library sharing through
sharedMappings, given the skip-list fix above.
- Anything in the docs that is now stale or misleading.
How to report
- Works fine? Say so in a comment, and mention your setup (Angular version, CLI or Nx, webpack or rspack, static or dynamic federation). Knowing what is already covered is as useful as knowing what is broken.
- Something is broken? A comment here is welcome, but for anything with a reproduction please open a bug report and link it back to this issue — it is much easier to track and fix that way.
- Idea or improvement? Comment here, or open a feature request.
Reproductions (a StackBlitz or a small repo) make the difference between a fix landing in 22.0.0 and it landing in a patch afterwards.
Thanks for helping us test 🙏
v22.0.0-next.1 is on npm. This is the release candidate for the Angular 22 line, and we would like to hear from you before it goes out as
22.0.0stable.If you use Module Federation with Angular, please try this build on a real project and tell us what breaks, what feels off, and what you would like to see improved. Every report on this issue helps us ship a better stable release.
Try it
All three packages are released together:
Upgrading from v21:
A worked host-and-two-remotes setup that runs against these sources lives in
apps/if you want a reference config to compare against.What is in this release
ng add/init-webpackflows updated for the Angular 22 CLI.ng updatemigrations are shipped again — includingmigrate-to-custom-webpack, which replaces the removedngx-build-plusbuilders with@angular-builders/custom-webpack.typein the manifest used to surface as aTypeErrornaming neither the remote nor the value; it now throws an error that names both.sharedMappingsnow honours the skip list. The filter result was previously discarded, so the skip list was a no-op for explicitsharedMappingsarrays.ng addno longer offers the Native Federation stack — use native-federation/angular-adapter instead. The deprecated v3 sources for Angular 21 stay on the21.x.xbranch.Breaking changes to watch for
ng add @angular-architects/module-federationno longer offers Native Federation. If your workflow depended on that option, switch to the new adapter linked above.sharedMappingsand the skip list is no longer mapped or shared. The skip list coverstslib,zone.js,@angular-architects/module-federation,@angular-architects/module-federation-runtime, the@softarc/native-federation-*entries,@angular/router/upgrade,@angular/common/upgrade, plus anything you pass in your ownskipoption. This is unusual in practice —sharedMappingsis for monorepo libraries resolved through tsconfigpaths— but a config that relied on the old behaviour will now silently stop sharing that package.ngx-build-plusis gone. Themigrate-to-custom-webpackmigration handles the switch; please report anything it misses.What we would especially like feedback on
ng updatedo the right thing?ng add/init-webpackon a fresh Angular 22 workspace, both CLI and Nx.sharedMappings, given the skip-list fix above.How to report
Reproductions (a StackBlitz or a small repo) make the difference between a fix landing in
22.0.0and it landing in a patch afterwards.Thanks for helping us test 🙏