Vigia

Upgrading @nx/module-federation from 23.x to 24.x

Comparison of the public API of @nx/module-federation 23.3.1 and 24.0.0, computed automatically from their TypeScript types. A changed signature is a candidate for a breaking change, not a certainty.

Summary

Removed import paths3
Removed exports13
Changed signatures13
Removed class or interface members40
Changed class or interface members24
Newly deprecated24
Requirement changes (engines, peer dependencies)3
New exports0

Removed import paths

Removed import paths
@nx/module-federation/internal
@nx/module-federation/url-helpers
@nx/module-federation/url-helpers.js

Removed exports

importexportkindBefore
@nx/module-federationmapRemotesfunction(remotes: Remotes, remoteEntryExt: "js" | "mjs", determineRemoteUrl: (remote: string) => string, isRemoteGlobal?: boolean | undefined): Record<string, string>
@nx/module-federationsharePackagesfunction(packages: string[]): Record<string, SharedLibraryConfig>
@nx/module-federationWorkspaceLibrarytype{ name: string; root: string; importKey: string | undefined; }
@nx/module-federationmapRemotesForSSRfunction(remotes: Remotes, remoteEntryExt: "js" | "mjs", determineRemoteUrl: (remote: string) => string): Record<string, string>
@nx/module-federationapplySharedFunctionfunction(sharedConfig: Record<string, SharedLibraryConfig>, sharedFn: SharedFunction | undefined): void
@nx/module-federationreadRootPackageJsonfunction(): PackageJson
@nx/module-federationnormalizeProjectNamefunction(name: string): string
@nx/module-federationapplyAdditionalSharedfunction(sharedConfig: Record<string, SharedLibraryConfig>, additionalShared: AdditionalSharedConfig | undefined, projectGraph: ProjectGraph): void
@nx/module-federationshareWorkspaceLibrariesfunction(workspaceLibs: WorkspaceLibrary[], tsConfigPath?: string | undefined, bundler?: "rspack" | "webpack" | undefined): SharedWorkspaceLibraryConfig
@nx/module-federationgetNpmPackageSharedConfigfunction(pkgName: string, version: string): SharedLibraryConfig | undefined
@nx/module-federationSharedWorkspaceLibraryConfigtype{ getAliases: () => Record<string, string>; getLibraries: (projectRoot: string, eager?: boolean | undefined) => Record<string, SharedLibraryConfig>; getReplacementPlugin: () => any; }
@nx/module-federationgetDependentPackagesForProjectfunction(projectGraph: ProjectGraph, name: string): { workspaceLibraries: WorkspaceLibrary[]; npmPackages: string[]; }
@nx/module-federationWorkspaceLibrarySecondaryEntryPointtype{ name: string; path: string; }

Changed signatures

exportBeforeAfter
@nx/module-federation · NxModuleFederationConfigOverride{ [x: string]: moduleFederationPlugin.ModuleFederationPluginOptions; [x: number]: moduleFederationPlugin.ModuleFederationPluginOptions; [x: symbol]: moduleFederationPlugin.ModuleFederationPluginOptions; }{ [x: string]: unknown; }
@nx/module-federation/rspack · withModuleFederation(options: ModuleFederationConfig, configOverride?: NxModuleFederationConfigOverride | undefined): Promise<(config: Configuration, { context }: { context: any; }) => Configuration>(..._args: unknown[]): Promise<IdentityConfigFn>
@nx/module-federation/rspack · withModuleFederationForSSR(options: ModuleFederationConfig, configOverride?: NxModuleFederationConfigOverride | undefined): Promise<(config: any, { context }: { context: any; }) => any>(..._args: unknown[]): Promise<IdentityConfigFn>
@nx/module-federation/angular · withModuleFederation(options: ModuleFederationConfig, configOverride?: NxModuleFederationConfigOverride | undefined): Promise<(config: any) => any>(..._args: unknown[]): Promise<IdentityConfigFn>
@nx/module-federation/angular · withModuleFederationForSSR(options: ModuleFederationConfig, configOverride?: NxModuleFederationConfigOverride | undefined): Promise<(config: any) => any>(..._args: unknown[]): Promise<IdentityConfigFn>
@nx/module-federation/webpack · withModuleFederation(options: ModuleFederationConfig, configOverride?: NxModuleFederationConfigOverride | undefined): Promise<(config: any, ctx: any) => any>(..._args: unknown[]): Promise<IdentityConfigFn>
@nx/module-federation/webpack · withModuleFederationForSSR(options: ModuleFederationConfig, configOverride?: NxModuleFederationConfigOverride | undefined): Promise<(config: any) => any>(..._args: unknown[]): Promise<IdentityConfigFn>
@nx/module-federation/rspack.js · withModuleFederation(options: ModuleFederationConfig, configOverride?: NxModuleFederationConfigOverride | undefined): Promise<(config: Configuration, { context }: { context: any; }) => Configuration>(..._args: unknown[]): Promise<IdentityConfigFn>
@nx/module-federation/rspack.js · withModuleFederationForSSR(options: ModuleFederationConfig, configOverride?: NxModuleFederationConfigOverride | undefined): Promise<(config: any, { context }: { context: any; }) => any>(..._args: unknown[]): Promise<IdentityConfigFn>
@nx/module-federation/angular.js · withModuleFederation(options: ModuleFederationConfig, configOverride?: NxModuleFederationConfigOverride | undefined): Promise<(config: any) => any>(..._args: unknown[]): Promise<IdentityConfigFn>
@nx/module-federation/angular.js · withModuleFederationForSSR(options: ModuleFederationConfig, configOverride?: NxModuleFederationConfigOverride | undefined): Promise<(config: any) => any>(..._args: unknown[]): Promise<IdentityConfigFn>
@nx/module-federation/webpack.js · withModuleFederation(options: ModuleFederationConfig, configOverride?: NxModuleFederationConfigOverride | undefined): Promise<(config: any, ctx: any) => any>(..._args: unknown[]): Promise<IdentityConfigFn>
@nx/module-federation/webpack.js · withModuleFederationForSSR(options: ModuleFederationConfig, configOverride?: NxModuleFederationConfigOverride | undefined): Promise<(config: any) => any>(..._args: unknown[]): Promise<IdentityConfigFn>

Removed class or interface members

memberimportBefore
NxModuleFederationPlugin._options@nx/module-federation/rspackany
NxModuleFederationPlugin.configOverride@nx/module-federation/rspackany
NxModuleFederationDevServerPlugin.nxBin@nx/module-federation/rspackany
NxModuleFederationDevServerPlugin.setup@nx/module-federation/rspackany
NxModuleFederationDevServerPlugin._options@nx/module-federation/rspackany
NxModuleFederationSSRDevServerPlugin.nxBin@nx/module-federation/rspackany
NxModuleFederationSSRDevServerPlugin.setup@nx/module-federation/rspackany
NxModuleFederationSSRDevServerPlugin._options@nx/module-federation/rspackany
NxModuleFederationSSRDevServerPlugin.startServer@nx/module-federation/rspackany
NxModuleFederationSSRDevServerPlugin.devServerProcess@nx/module-federation/rspackany
NxModuleFederationPlugin._options@nx/module-federation/angularany
NxModuleFederationPlugin.configOverride@nx/module-federation/angularany
NxModuleFederationDevServerPlugin.nxBin@nx/module-federation/angularany
NxModuleFederationDevServerPlugin.setup@nx/module-federation/angularany
NxModuleFederationDevServerPlugin._options@nx/module-federation/angularany
NxModuleFederationSSRDevServerPlugin.nxBin@nx/module-federation/angularany
NxModuleFederationSSRDevServerPlugin.setup@nx/module-federation/angularany
NxModuleFederationSSRDevServerPlugin._options@nx/module-federation/angularany
NxModuleFederationSSRDevServerPlugin.startServer@nx/module-federation/angularany
NxModuleFederationSSRDevServerPlugin.devServerProcess@nx/module-federation/angularany
NxModuleFederationPlugin._options@nx/module-federation/rspack.jsany
NxModuleFederationPlugin.configOverride@nx/module-federation/rspack.jsany
NxModuleFederationDevServerPlugin.nxBin@nx/module-federation/rspack.jsany
NxModuleFederationDevServerPlugin.setup@nx/module-federation/rspack.jsany
NxModuleFederationDevServerPlugin._options@nx/module-federation/rspack.jsany
NxModuleFederationSSRDevServerPlugin.nxBin@nx/module-federation/rspack.jsany
NxModuleFederationSSRDevServerPlugin.setup@nx/module-federation/rspack.jsany
NxModuleFederationSSRDevServerPlugin._options@nx/module-federation/rspack.jsany
NxModuleFederationSSRDevServerPlugin.startServer@nx/module-federation/rspack.jsany
NxModuleFederationSSRDevServerPlugin.devServerProcess@nx/module-federation/rspack.jsany
NxModuleFederationPlugin._options@nx/module-federation/angular.jsany
NxModuleFederationPlugin.configOverride@nx/module-federation/angular.jsany
NxModuleFederationDevServerPlugin.nxBin@nx/module-federation/angular.jsany
NxModuleFederationDevServerPlugin.setup@nx/module-federation/angular.jsany
NxModuleFederationDevServerPlugin._options@nx/module-federation/angular.jsany
NxModuleFederationSSRDevServerPlugin.nxBin@nx/module-federation/angular.jsany
NxModuleFederationSSRDevServerPlugin.setup@nx/module-federation/angular.jsany
NxModuleFederationSSRDevServerPlugin._options@nx/module-federation/angular.jsany
NxModuleFederationSSRDevServerPlugin.startServer@nx/module-federation/angular.jsany
NxModuleFederationSSRDevServerPlugin.devServerProcess@nx/module-federation/angular.jsany

Changed class or interface members

memberBeforeAfter
NxModuleFederationPlugin.apply(compiler: Compiler): void(): void
NxModuleFederationPlugin.constructor(_options: { config: ModuleFederationConfig; isServer?: boolean | undefined; }, configOverride?: NxModuleFederationConfigOverride | undefined): NxModuleFederationPlugin(..._args: unknown[]): NxModuleFederationPlugin
NxModuleFederationDevServerPlugin.apply(compiler: Compiler): void(): void
NxModuleFederationDevServerPlugin.constructor(_options: { config: ModuleFederationConfig; devServerConfig?: NxModuleFederationDevServerConfig | undefined; }): NxModuleFederationDevServerPlugin(..._args: unknown[]): NxModuleFederationDevServerPlugin
NxModuleFederationSSRDevServerPlugin.apply(compiler: Compiler): void(): void
NxModuleFederationSSRDevServerPlugin.constructor(_options: { config: ModuleFederationConfig; devServerConfig?: NxModuleFederationDevServerConfig | undefined; }): NxModuleFederationSSRDevServerPlugin(..._args: unknown[]): NxModuleFederationSSRDevServerPlugin
NxModuleFederationPlugin.apply(compiler: Compiler): void(): void
NxModuleFederationPlugin.constructor(_options: { config: ModuleFederationConfig; isServer?: boolean | undefined; }, configOverride?: NxModuleFederationConfigOverride | undefined): NxModuleFederationPlugin(..._args: unknown[]): NxModuleFederationPlugin
NxModuleFederationDevServerPlugin.apply(compiler: Compiler): void(): void
NxModuleFederationDevServerPlugin.constructor(_options: { config: ModuleFederationConfig; devServerConfig?: NxModuleFederationDevServerConfig | undefined; }): NxModuleFederationDevServerPlugin(..._args: unknown[]): NxModuleFederationDevServerPlugin
NxModuleFederationSSRDevServerPlugin.apply(compiler: Compiler): void(): void
NxModuleFederationSSRDevServerPlugin.constructor(_options: { config: ModuleFederationConfig; devServerConfig?: NxModuleFederationDevServerConfig | undefined; }): NxModuleFederationSSRDevServerPlugin(..._args: unknown[]): NxModuleFederationSSRDevServerPlugin
NxModuleFederationPlugin.apply(compiler: Compiler): void(): void
NxModuleFederationPlugin.constructor(_options: { config: ModuleFederationConfig; isServer?: boolean | undefined; }, configOverride?: NxModuleFederationConfigOverride | undefined): NxModuleFederationPlugin(..._args: unknown[]): NxModuleFederationPlugin
NxModuleFederationDevServerPlugin.apply(compiler: Compiler): void(): void
NxModuleFederationDevServerPlugin.constructor(_options: { config: ModuleFederationConfig; devServerConfig?: NxModuleFederationDevServerConfig | undefined; }): NxModuleFederationDevServerPlugin(..._args: unknown[]): NxModuleFederationDevServerPlugin
NxModuleFederationSSRDevServerPlugin.apply(compiler: Compiler): void(): void
NxModuleFederationSSRDevServerPlugin.constructor(_options: { config: ModuleFederationConfig; devServerConfig?: NxModuleFederationDevServerConfig | undefined; }): NxModuleFederationSSRDevServerPlugin(..._args: unknown[]): NxModuleFederationSSRDevServerPlugin
NxModuleFederationPlugin.apply(compiler: Compiler): void(): void
NxModuleFederationPlugin.constructor(_options: { config: ModuleFederationConfig; isServer?: boolean | undefined; }, configOverride?: NxModuleFederationConfigOverride | undefined): NxModuleFederationPlugin(..._args: unknown[]): NxModuleFederationPlugin
NxModuleFederationDevServerPlugin.apply(compiler: Compiler): void(): void
NxModuleFederationDevServerPlugin.constructor(_options: { config: ModuleFederationConfig; devServerConfig?: NxModuleFederationDevServerConfig | undefined; }): NxModuleFederationDevServerPlugin(..._args: unknown[]): NxModuleFederationDevServerPlugin
NxModuleFederationSSRDevServerPlugin.apply(compiler: Compiler): void(): void
NxModuleFederationSSRDevServerPlugin.constructor(_options: { config: ModuleFederationConfig; devServerConfig?: NxModuleFederationDevServerConfig | undefined; }): NxModuleFederationSSRDevServerPlugin(..._args: unknown[]): NxModuleFederationSSRDevServerPlugin

Newly deprecated

export@deprecated
@nx/module-federation/rspack · withModuleFederationRemoved in Nx v24. Use `ModuleFederationPlugin` from `@module-federation/enhanced`. This stub will be removed in Nx v25.
@nx/module-federation/rspack · NxModuleFederationPluginRemoved in Nx v24. Use `ModuleFederationPlugin` from `@module-federation/enhanced`. This stub will be removed in Nx v25.
@nx/module-federation/rspack · withModuleFederationForSSRRemoved in Nx v24. Use `ModuleFederationPlugin` from `@module-federation/enhanced`. This stub will be removed in Nx v25.
@nx/module-federation/rspack · NxModuleFederationDevServerPluginRemoved in Nx v24. Serve hosts and remotes with their own serve targets. This stub will be removed in Nx v25.
@nx/module-federation/rspack · NxModuleFederationSSRDevServerPluginRemoved in Nx v24. Serve hosts and remotes with their own serve targets. This stub will be removed in Nx v25.
@nx/module-federation/angular · withModuleFederationRemoved in Nx v24. Use `ModuleFederationPlugin` from `@module-federation/enhanced`. This stub will be removed in Nx v25.
@nx/module-federation/angular · NxModuleFederationPluginRemoved in Nx v24. Use `ModuleFederationPlugin` from `@module-federation/enhanced`. This stub will be removed in Nx v25.
@nx/module-federation/angular · withModuleFederationForSSRRemoved in Nx v24. Use `ModuleFederationPlugin` from `@module-federation/enhanced`. This stub will be removed in Nx v25.
@nx/module-federation/angular · NxModuleFederationDevServerPluginRemoved in Nx v24. Serve hosts and remotes with their own serve targets. This stub will be removed in Nx v25.
@nx/module-federation/angular · NxModuleFederationSSRDevServerPluginRemoved in Nx v24. Serve hosts and remotes with their own serve targets. This stub will be removed in Nx v25.
@nx/module-federation/webpack · withModuleFederationRemoved in Nx v24. Use `ModuleFederationPlugin` from `@module-federation/enhanced`. This stub will be removed in Nx v25.
@nx/module-federation/webpack · withModuleFederationForSSRRemoved in Nx v24. Use `ModuleFederationPlugin` from `@module-federation/enhanced`. This stub will be removed in Nx v25.
@nx/module-federation/rspack.js · withModuleFederationRemoved in Nx v24. Use `ModuleFederationPlugin` from `@module-federation/enhanced`. This stub will be removed in Nx v25.
@nx/module-federation/rspack.js · NxModuleFederationPluginRemoved in Nx v24. Use `ModuleFederationPlugin` from `@module-federation/enhanced`. This stub will be removed in Nx v25.
@nx/module-federation/rspack.js · withModuleFederationForSSRRemoved in Nx v24. Use `ModuleFederationPlugin` from `@module-federation/enhanced`. This stub will be removed in Nx v25.
@nx/module-federation/rspack.js · NxModuleFederationDevServerPluginRemoved in Nx v24. Serve hosts and remotes with their own serve targets. This stub will be removed in Nx v25.
@nx/module-federation/rspack.js · NxModuleFederationSSRDevServerPluginRemoved in Nx v24. Serve hosts and remotes with their own serve targets. This stub will be removed in Nx v25.
@nx/module-federation/angular.js · withModuleFederationRemoved in Nx v24. Use `ModuleFederationPlugin` from `@module-federation/enhanced`. This stub will be removed in Nx v25.
@nx/module-federation/angular.js · NxModuleFederationPluginRemoved in Nx v24. Use `ModuleFederationPlugin` from `@module-federation/enhanced`. This stub will be removed in Nx v25.
@nx/module-federation/angular.js · withModuleFederationForSSRRemoved in Nx v24. Use `ModuleFederationPlugin` from `@module-federation/enhanced`. This stub will be removed in Nx v25.
@nx/module-federation/angular.js · NxModuleFederationDevServerPluginRemoved in Nx v24. Serve hosts and remotes with their own serve targets. This stub will be removed in Nx v25.
@nx/module-federation/angular.js · NxModuleFederationSSRDevServerPluginRemoved in Nx v24. Serve hosts and remotes with their own serve targets. This stub will be removed in Nx v25.
@nx/module-federation/webpack.js · withModuleFederationRemoved in Nx v24. Use `ModuleFederationPlugin` from `@module-federation/enhanced`. This stub will be removed in Nx v25.
@nx/module-federation/webpack.js · withModuleFederationForSSRRemoved in Nx v24. Use `ModuleFederationPlugin` from `@module-federation/enhanced`. This stub will be removed in Nx v25.

Requirement changes (engines, peer dependencies)

BeforeAfter
peerDependencies.webpack^5.0.0—
peerDependencies.@module-federation/node^2.0.0—
peerDependencies.@module-federation/enhanced^2.0.0—

Give your AI agent these facts

Vigia is a free MCP server: your coding agent checks versions, breaking changes and vulnerabilities before it writes code. No signup, no API key.

claude mcp add --transport http vigia https://vigia.coredls.cloud/mcp

Add to CursorAdd to VS Code★ Star on GitHub

Any other MCP client
{ "mcpServers": { "vigia": { "url": "https://vigia.coredls.cloud/mcp" } } }

Agent skill (SKILL.md): tells the agent when to use Vigia · GitHub Action for pull requests

Frequently asked questions

What are the breaking changes when upgrading @nx/module-federation from 23 to 24?

Between @nx/module-federation 23.3.1 and 24.0.0, Vigia found 13 removed exports, 13 changed signatures and 64 removed or changed class or interface members.

What became deprecated in @nx/module-federation 24?

24 exports or members are newly marked as deprecated in @nx/module-federation 24.0.0.

For agents

GET https://vigia.coredls.cloud/v1/packages/npm/@nx/module-federation/upgrade?from=23.3.1&to=24.0.0