unstale

npm / webpack

webpack

What changed in webpack 5, from its official release notes, upgrade guides and advisories. Sources checked 2026-10-17.

17 breaking5 security4 deprecations141 new APIs and options37 performance68 behavior and defaults12 tooling214 fixes and other

See which of these apply to your code, ranked, in your agent:

npx @unstale/cli init

@unstale/cli 0.1.1 on npm

webpack 5498 changes

Breaking changes 17

  • Minification now parses JavaScript with webpack's own parser rather than terser's and refuses early errors.

    5.112.0release notes

  • Writes to imported bindings now throw without preventing module concatenation.

    5.111.1release notes

  • A non-optional read past an undefined DefinePlugin member now throws.

    5.111.0release notes

  • Remove experiments.outputModule; set output.module to emit ESM instead.

    5.111.0release notes

  • Minification now handles embedded bodies and style attributes through their embedded paths, decodes script types, and bases attribute minification on decoded values.

    5.111.0release notes

  • Accept output.module to emit ESM in place of experiments.outputModule.

    5.111.0release notes

  • Throws when a deferred namespace of an async module is forced while the module evaluates.

    5.110.3release notes

  • Throws SyntaxError or WebAssembly.CompileError when a module cannot be parsed.

    5.110.1release notes

  • Reports an error when an object external has no entry for the externals type being used.

    5.109.0release notes

  • Supports parsers without location APIs by deriving locations from node offsets; AST nodes no longer carry loc.

    5.109.0release notes

  • [hash] now resolves to the local ident hash, matching css-loader; use [modulehash] for the module hash.

    5.108.0release notes

  • Rejects new import.defer(...) and new import.source(...) with member access as a SyntaxError.

    5.108.0release notes

  • Rejects new import.source(...) with member access as a SyntaxError.

    5.108.0release notes

  • new import.defer(...) and new import.source(...) now fail with a parse-time SyntaxError; parenthesized forms remain valid and throw TypeError at runtime.

    5.107.0release notes

  • Emits an error when a proxy server returns a non-200 status code instead of failing silently.

    5.106.0release notes

  • Accessing a non-existent import.meta.env property now returns an empty object instead of the full object at runtime.

    5.105.0release notes

  • Re-validates redirects against allowedUris, restricts them to http(s), and limits redirect count to prevent SSRF and untrusted content inclusion; rejected redirects are not cached or written to the lockfile.

    5.104.0release notes

Security 5

  • Injects a Content-Security-Policy meta tag with inline-content hashes and an optional nonce.

    5.109.0release notes

  • Rejects __proto__, constructor, and prototype path segments to prevent prototype pollution.

    5.108.0release notes

  • Fixed a user information bypass vulnerability in the plugin.

    5.104.1release notes

  • webpack buildHttp: allowedUris allow-list bypass via URL userinfo (@) leading to build-time SSRF behavior

    5.104.1security advisory

  • webpack buildHttp HttpUriPlugin allowedUris bypass via HTTP redirects → SSRF + cache persistence

    5.104.0security advisory

Deprecations 4

  • Harmony* names are renamed to ESM* names and the old spellings are deprecated.

    5.112.0release notes

  • Deprecated in favor of importMeta.webpackContext.

    5.109.0release notes

  • ModuleNotFoundError is re-exported from webpack/lib/ModuleNotFoundError for compatibility with older plugins; the re-export will be removed in webpack 6.

    5.107.1release notes

  • All deprecated methods and options are now marked with @deprecated in types.

    5.106.0release notes

New APIs and options 141

  • Adds customMedia and customSelectors minimization options and resolves chained names.

    5.112.0release notes

  • Adds a JavaScript SyntaxTree read like the CSS one, along with toEstreeObject.

    5.112.0release notes

  • Set to "all" to expose the exports of every entry module.

    5.112.0release notes

  • Adds an HTML parser chunk-name option and a webpackChunkName comment for tags.

    5.112.0release notes

  • Adds a parser option for classic-script this semantics.

    5.112.0release notes

  • Adds a CSS charset option; false drops @charset for UTF-8 CSS.

    5.112.0release notes

  • Adds a CSS minimization option for converting approximate colors.

    5.112.0release notes

  • Drops a declaration that a later one overrides when no target is named.

    5.112.0release notes

  • Adds JSON minimization, enabled by default with futureDefaults.

    5.112.0release notes

  • Adds an option to discover chunk intersections.

    5.112.0release notes

  • Adds an ignore hook and keeps unfollowed from symlinks.

    5.112.0release notes

  • Shared modules now accept include and exclude version and request filters.

    5.112.0release notes

  • Adds SSRManifestPlugin and fixes server-rendered CSS collection and adoption.

    5.112.0release notes

  • Exposed under its scope and now accepts several requests, with the current one first.

    5.112.0release notes

  • Adds XML parsing and SVG/XML minification with data URLs and attribute sorting.

    5.112.0release notes

  • Export cssMinify on css.syntax.

    5.111.0release notes

  • Export htmlMinify on html.syntax.

    5.111.0release notes

  • Add lowerUnsupported while dropping information already stated or readable only by a gone engine.

    5.111.0release notes

  • Add mergeScripts, along with boolean and token switches.

    5.111.0release notes

  • Add an option for spec namespace objects.

    5.111.0release notes

  • Add normalizeUrlAttributes, mergeScripts, and boolean and token switches.

    5.111.0release notes

  • Add an option to join CSS rules across a gap.

    5.111.0release notes

  • Add output.copy to copy files and directories into the output directory.

    5.111.0release notes

  • Add output.environment.topLevelAwait and await every async ESM entry.

    5.111.0release notes

  • Export webpack's renderEmbeddedSource for minifying inline CSS and JSON through the embedded-source path.

    5.111.0release notes

  • Keeps optimization.minimize boolean; its options move to optimization.minimizeOptions.

    5.110.3release notes

  • Add a placeholder used for the file name of asset and HTML modules with futureDefaults.

    5.110.0release notes

  • Add a placeholder used for the path of asset and HTML modules with futureDefaults.

    5.110.0release notes

  • Support printing CSS and HTML in beautified as well as minified form.

    5.110.0release notes

  • Accept an object for an entry's html option to override output.html per option.

    5.110.0release notes

  • Mark externals as side-effect-free with a sideEffects flag.

    5.110.0release notes

  • Externalize installed packages with the nodeModules preset and its allowlist option, replacing the webpack-node-externals plugin.

    5.110.0release notes

  • Add a module rule condition based on the description file's relative path.

    5.110.0release notes

  • Add an aggregated shutdown hook to MultiCompiler.

    5.110.0release notes

  • Configure HTML minification options, including whitespace, comments, empty attributes and elements, implied tags, and attribute sorting.

    5.110.0release notes

  • Configure or exclude the minifier for each asset type.

    5.110.0release notes

  • Configure an AMD-style loader branch in UMD output.

    5.110.0release notes

  • Skip prefetch links for chunks that are already preloaded or prefetched.

    5.110.0release notes

  • Enable performance hints for checks not set individually, including duplicate packages, circular dependencies, large modules, and unused configuration.

    5.110.0release notes

  • Set to "stats" to report performance hints in stats only.

    5.110.0release notes

  • Add renderEmbeddedSource and minify its output out of the box.

    5.110.0release notes

  • Read CSS collected while rendering without a DOM; collected CSS remains in the order styles were applied.

    5.110.0release notes

  • Adds an externals type that loads AMD externals without an AMD library wrapper.

    5.109.0release notes

  • Adds ?raw, ?url, ?inline, and ?no-inline asset query suffixes under experiments.futureDefaults.

    5.109.0release notes

  • Supports zstd compression for the filesystem cache.

    5.109.0release notes

  • Controls case sensitivity for import.meta.glob matching.

    5.109.0release notes

  • Exposes the original DOM event as error.event.

    5.109.0release notes

  • Adds a CSS option for font preloading.

    5.109.0release notes

  • Adds fine-grained parser options for import.meta.

    5.109.0release notes

  • Adds MODE, DEV, PROD, SSR, and BASE_URL defaults.

    5.109.0release notes

  • Adds glob imports with a caseSensitive option and consistent hidden-file and node_modules matching.

    5.109.0release notes

  • Can resolve an asset specifier to its emitted asset URL through the importMeta.resolve parser option.

    5.109.0release notes

  • Provides the replacement parser option for importMetaContext.

    5.109.0release notes

  • Enables built-in build progress through infrastructure logging.

    5.109.0release notes

  • Compilation hook for injecting script, link, meta, and other tags with injectTo placement.

    5.109.0release notes

  • Adds a JavaScript option for CSS preloading from dynamic imports.

    5.109.0release notes

  • Adds parser configuration for URL resource hints.

    5.109.0release notes

  • Selects whether HTML is parsed as a document or an element fragment.

    5.109.0release notes

  • Bundles Worklet addModule() entries.

    5.109.0release notes

  • Exposes the active MultiWatching instance.

    5.109.0release notes

  • Adds an interop hint of "default" or "esModule" to control default-export interop.

    5.109.0release notes

  • CommonJS modules with statically analyzable exports can be concatenated; set commonjs: false to opt out.

    5.109.0release notes

  • Configures the base element during HTML head generation.

    5.109.0release notes

  • Supports arrays and per-icon link attributes: sizes, media, color, type, and crossorigin.

    5.109.0release notes

  • Controls where chunk tags are injected into HTML.

    5.109.0release notes

  • Controls inlining chunk content into HTML with true, "script", or "style".

    5.109.0release notes

  • Generates and links a web app manifest with hashed icons.

    5.109.0release notes

  • Configures meta tags during HTML head generation.

    5.109.0release notes

  • Configures the HTML document title during head generation.

    5.109.0release notes

  • Emits preload, prefetch, modulepreload, and preconnect resource hints; it is on by default for ESM output.

    5.109.0release notes

  • Adds a WebAssembly fallback for responses with an incorrect MIME type.

    5.109.0release notes

  • Adds estimated-time reporting to the progress bar.

    5.109.0release notes

  • Adds phase timings to progress reporting.

    5.109.0release notes

  • Adds progressBar: "auto".

    5.109.0release notes

  • Adds a configurable progress bar width.

    5.109.0release notes

  • Exposes the original DOM event as error.event.

    5.109.0release notes

  • Setting type: false disables a built-in HTML parser source.

    5.109.0release notes

  • Configures warnings for strict-mode-only syntax and semantic hazards in ES module output.

    5.109.0release notes

  • Compilation hook for mutating, removing, or moving existing script, link, style, and meta tags.

    5.109.0release notes

  • Exports the HTML modules plugin with transformHtml and htmlEmitted compilation hooks.

    5.109.0release notes

  • Magic comment for inlining chunk content into HTML.

    5.109.0release notes

  • Adds dedicated module classes for all built-in module types.

    5.108.0release notes

  • Adds a target that emits ESM and externalizes bun:* and Node.js built-in modules.

    5.108.0release notes

  • Adds a universal boolean for universal targets, including universal and web-plus-node targets.

    5.108.0release notes

  • Supports CSS in Node for universal targets and collects styles for SSR.

    5.108.0release notes

  • Adds an HTML source type that extracts url() references from CSS-valued attributes.

    5.108.0release notes

  • Adds a helper for typed configuration files.

    5.108.0release notes

  • Adds Deno targets that emit ESM, resolve Node.js built-ins with node:, and leave Deno import protocols external.

    5.108.0release notes

  • Adds worker entry configuration for worker chunk filenames.

    5.108.0release notes

  • Supports inline digests in hash path placeholders, such as [contenthash:base64:8].

    5.108.0release notes

  • Adds the CSS parser as option and resolves url() inside HTML style attributes.

    5.108.0release notes

  • Disables or customizes URL-attribute extraction for HTML modules, including source types for custom attributes.

    5.108.0release notes

  • Transforms HTML module source before parsing.

    5.108.0release notes

  • Marks top-level names as side-effect-free for tree shaking.

    5.108.0release notes

  • Adds support for inlineExports to improve tree-shaking.

    5.108.0release notes

  • Adds an environment capability that enables Object.hasOwn in generated runtime code where supported.

    5.108.0release notes

  • Adds an environment capability option and emits let or const instead of var in generated runtime code where safe.

    5.108.0release notes

  • Enables emitting ||= in runtime code when the target supports logical assignment operators.

    5.108.0release notes

  • Adds an environment capability that enables spread syntax in generated runtime code where supported.

    5.108.0release notes

  • Adds an environment capability for using an unguarded Symbol in generated runtime code where supported.

    5.108.0release notes

  • Emits an HTML file per entrypoint and injects its JS and CSS chunks, including dependOn shared chunks.

    5.108.0release notes

  • Gates the runtime MODULE_NOT_FOUND guard.

    5.108.0release notes

  • Adds a worker-specific chunk filename option.

    5.108.0release notes

  • Supports [uniqueName] and its [uniquename] alias in template paths.

    5.108.0release notes

  • Adds a target preset for browser, web worker, Node.js, Electron, and NW.js that always outputs ECMAScript modules.

    5.108.0release notes

  • The HTML generator option type is now HtmlGeneratorOptions, making the extract option available in createGenerator and generator hook types.

    5.107.1release notes

  • The experimental HTML tokenizer exposes parse errors through a callback, distinguishing recoverable warnings from errors caused by incomplete offset ranges.

    5.107.1release notes

  • Reserves the html module type for first-class HTML entry-point support.

    5.107.0release notes

  • Enables experimental TypeScript transformation using Node.js module.stripTypeScriptTypes; supports erasable TypeScript in .ts, .cts, .mts, and TypeScript data URLs, but not TSX or non-erasable syntax.

    5.107.0release notes

  • The function form for CSS modules accepts string[] as well as string.

    5.107.0release notes

  • Adds a CssLoadingRuntimeModule compilation hook so plugins can control where stylesheet <link> elements are inserted.

    5.107.0release notes

  • Enables emitting parsed, URL-rewritten HTML as a standalone .html file alongside the module's JavaScript export.

    5.107.0release notes

  • Controls whether webpack sets .name to "default" for anonymous default export functions and classes; defaults to true for applications and false for libraries with output.library.

    5.107.0release notes

  • The pure parser option for css/module and css/auto requires every selector to contain a local class or id, otherwise webpack emits a build error.

    5.107.0release notes

  • Supports the annotation to mark functions as pure for better tree-shaking.

    5.107.0release notes

  • Adds the orderModules hook to CssModulesPlugin compilation hooks.

    5.107.0release notes

  • CSS modules support exportType: "style" to inject styles into the DOM via HTMLStyleElement, similar to style-loader.

    5.106.0release notes

  • Adds an option to configure the hash function used for hashing.

    5.106.0release notes

  • Adds an option to enable or disable validation in webpack plugins and loaders, with an API for using it inside plugins.

    5.106.0release notes

  • Adds a context option for virtual modules, allowing a custom context path to resolve relative imports; it defaults to auto-derived context.

    5.106.0release notes

  • Adds a method to distinguish basic source types and clarify how modules with non-basic source types like remote still produce JavaScript output.

    5.105.4release notes

  • ECMA modules now support createRequire.

    5.105.3release notes

  • Context modules now support import.defer().

    5.105.0release notes

  • Adds a resolver option that can be disabled, use the default tsconfig.json, specify a tsconfig path, or accept configFile and references options.

    5.105.0release notes

  • Adds options to control the renaming of at-rules and various identifiers in CSS modules.

    5.104.0release notes

  • Adds the base64url, base62, base58, base52, base49, base36, base32, and base25 digests.

    5.104.0release notes

  • Adds support for universal lazy compilation.

    5.104.0release notes

  • Provides a stable runtime function variable.

    5.104.0release notes

  • Adds support for composes properties in CSS.

    5.103.0release notes

  • Allows using a custom JavaScript parse function.

    5.103.0release notes

  • Adds a top-level option to enable DotenvPlugin.

    5.103.0release notes

  • Adds DotenvPlugin for enabling dotenv support.

    5.103.0release notes

  • Adds the CSS exportType option with link, text, and css-style-sheet values; link is the default.

    5.103.0release notes

  • Adds support for the ignoreList option in devtool plugins.

    5.103.0release notes

  • Adds support for import.defer() for a static path.

    5.103.0release notes

  • Adds support for import.meta.dirname.

    5.103.0release notes

  • Adds support for accessing environment variables through import.meta.env.

    5.103.0release notes

  • Adds support for import.meta.filename.

    5.103.0release notes

  • Adds handling for import.meta.main.

    5.103.0release notes

  • Adds support for named exports and for disabling named exports when importing JSON with a type attribute.

    5.103.0release notes

  • Adds WebpackManifestPlugin.

    5.103.0release notes

Performance 37

  • Uses module paths so parallel minification can load built-in minimizers directly in workers instead of serializing function sources.

    5.112.0release notes

  • Speeds up comment lookup, tokenization, and grammar parsing.

    5.112.0release notes

  • Module concatenation is skipped when providedExports is disabled.

    5.112.0release notes

  • Performs in one pass minification previously completed by a second pass.

    5.111.1release notes

  • Drops dead CSS left by a cut and joins more blocks that print alike.

    5.111.1release notes

  • Completes joins, drops, and collapses in one pass instead of requiring a second.

    5.111.1release notes

  • Speeds parsing by stepping over dropped selector preludes in bytes.

    5.111.1release notes

  • Stops emitting the CSS chunk loading runtime when every CSS chunk is initial.

    5.110.2release notes

  • Minifies more HTML and CSS shorthands.

    5.110.2release notes

  • Cuts two costs off printing.

    5.110.2release notes

  • Speeds up cache writes.

    5.110.1release notes

  • Speed up builds and reduce memory use through faster parsing, minification, dependency processing, and shared watching for MultiCompiler children.

    5.110.0release notes

  • Speeds up CSS parsing and reduces memory use across experimental and non-modules parsing paths.

    5.109.1release notes

  • Improves parser speed and reduces peak memory use.

    5.109.1release notes

  • Speeds up stats generation and reduces its peak memory use.

    5.109.1release notes

  • Enables the Node.js compile cache in the webpack CLI entry point.

    5.109.1release notes

  • HTML parsing uses less CPU and memory by skipping unused AST nodes.

    5.108.4release notes

  • Parsing is faster by avoiding unused selector AST nodes and value tokens.

    5.108.4release notes

  • CSS parsing is faster and uses less memory for CSS AST nodes.

    5.108.3release notes

  • Inlines export default values when the exported value is a primitive constant.

    5.108.0release notes

  • Defers building unused re-export targets of side-effect-free barrel modules.

    5.108.0release notes

  • The hook is invoked once per directory with all matched files in one batch, reducing per-file overhead in context resolution.

    5.107.2release notes

  • Per-child code-generation results are released in MultiCompiler and when the compiler closes, reducing memory retention.

    5.107.2release notes

  • Watch-mode rebuilds avoid purging the stat cache for every file under an explicitly watched context directory.

    5.107.2release notes

  • Multi-module chunks no longer include unnecessary __webpack_require__ runtime helpers.

    5.107.2release notes

  • The side-effects connection-state walk uses an allocation-light iterative loop, restoring rebuild performance while keeping deep import chains stack-safe.

    5.107.2release notes

  • Watch-mode rebuilds reuse warm stat caches for watched context directories instead of discarding stats for every file under the directory.

    5.107.2release notes

  • Peak memory usage is reduced on large builds.

    5.107.2release notes

  • Drops unused __webpack_require__, __webpack_require__.d, and __webpack_require__.o helpers from module library bundles when their on-demand exports source is dropped.

    5.107.0release notes

  • CSS bundles omit the runtime when all imported CSS modules are concatenated into the same scope.

    5.107.0release notes

  • Guard collection is skipped when exports-presence mode is disabled, improving parsing performance.

    5.105.1release notes

  • JavaScript modules are no longer generated for unused CSS exports, reducing unnecessary output and bundle size.

    5.105.0release notes

  • Destructuring assignments reuse cached stringified environment definitions.

    5.105.0release notes

  • Improves the speed of identifier parsing.

    5.104.0release notes

  • Avoids extra runtime for the initial CSS chunk.

    5.103.0release notes

  • Reduces generated output when globalThis is supported.

    5.103.0release notes

  • Avoids generating extra runtime code for module libraries.

    5.103.0release notes

Behavior and default changes 68

  • JavaScript is minified with webpack's printer under futureDefaults and with terser otherwise.

    5.112.0release notes

  • More path, module, and file filter options now accept glob patterns.

    5.112.0release notes

  • A run of inline script tags can be bundled into one chunk that the page can inline.

    5.112.0release notes

  • Source maps now emit the scopes field so debuggers can resolve imported ESM bindings by name.

    5.112.0release notes

  • Drops fallback declarations when every target in browserslist reads past them.

    5.111.1release notes

  • Bases HTML value minification on what a value means rather than its spelling.

    5.111.1release notes

  • Folds more enumerated attribute values and drops values that name no keyword.

    5.111.1release notes

  • Lower CSS nesting, :dir(), and custom at-rules; case folding and escapes are gated.

    5.111.0release notes

  • Absolute-path inputs accept file URLs in any spelling that Node reads.

    5.111.0release notes

  • Filesystem cache build dependencies may be optional.

    5.111.0release notes

  • With futureDefaults enabled, output.module is enabled by default on ESM-capable targets and for module and modern-module library types.

    5.111.0release notes

  • processResult is async, and a tap can rename the asset it rewrote.

    5.111.0release notes

  • Tree shake CommonJS object literal exports, destructured require bindings, unused method requires, and unused side-effect-free require calls and reexports.

    5.110.0release notes

  • Wrap concatenated modules in lazy accessors and inline require calls while preserving wrapped-body names and side effects.

    5.110.0release notes

  • Warn on cross-kind CSS module export conflicts and let the class win.

    5.110.0release notes

  • Patch the HTML head in place on hot update instead of forcing a full reload, including when removing a script that never executed.

    5.110.0release notes

  • Minify HTML while preserving the parsed document, including attribute grammars and tree structure.

    5.110.0release notes

  • Do not emit development source maps for module libraries or when futureDefaults is enabled.

    5.110.0release notes

  • Module rules support OS-independent glob matching.

    5.110.0release notes

  • Report which compilers changed on the MultiCompiler done hook.

    5.110.0release notes

  • When enabled, safely minify CSS and HTML assets with source maps unless a minimizer is already configured for them; each rewrite can be disabled by its named option.

    5.110.0release notes

  • CSS sources in source maps are named by their resource path, without the css prefix.

    5.109.2release notes

  • The filesystem cache removes unreferenced files after storing, ages files by recorded time so restored caches are cleaned too, and collects all fully expired packs in one store.

    5.109.2release notes

  • Compiles async modules to generators for targets without async/await.

    5.109.0release notes

  • “Weird” CommonJS modules are wrapped into module concatenation instead of causing concatenation to bail out.

    5.109.0release notes

  • Emits analyzable new URL, worker/worklet URL, and import() references with literal specifiers.

    5.109.0release notes

  • Defaults to "auto", enabling built-in WebAssembly support unless a loader is registered for those files.

    5.109.0release notes

  • Defaults to "auto", enabling built-in CSS support unless a loader is registered for those files.

    5.109.0release notes

  • Defaults to "auto", enabling built-in HTML support unless a loader is registered for those files.

    5.109.0release notes

  • Defaults to "auto", enabling built-in TypeScript support on Node.js >= 22.6 when no TypeScript loader is registered.

    5.109.0release notes

  • Recognizes twitter:player:stream metadata, legacy SVG references, and Web App Manifest icons, screenshots, and shortcuts URLs as asset-bearing sources.

    5.109.0release notes

  • HTML link sources are bundled as their own emitted page, while rel="preload" and rel="prefetch" links are bundled as chunks.

    5.109.0release notes

  • The default is now globalThis for universal targets.

    5.108.4release notes

  • Supports CommonJS reexports using Object.defineProperty value and getter descriptors.

    5.108.0release notes

  • Supports inline hash digests and lengths in CSS module localIdentName placeholders.

    5.108.0release notes

  • Import specifiers and require() or import() calls in dead branches gated by inlined imported constants are skipped.

    5.108.0release notes

  • Under the html/css experiments, the default ./src entry supports .html and .css.

    5.108.0release notes

  • Uses module-import for electron externals when the target supports ESM.

    5.108.0release notes

  • Extracts more source URLs from SVG and legacy or obsolete attributes.

    5.108.0release notes

  • Schema-generated CLI flags now support JSON Schema const.

    5.108.0release notes

  • Keeps export mangling enabled when a namespace object is used as a whole value by materializing a decoupled object with original export names.

    5.108.0release notes

  • Universal node-plus-web targets resolve the Worker constructor from worker_threads when no global Worker exists.

    5.108.0release notes

  • Allows tree-shaking unused calls to NO_SIDE_EFFECTS-annotated exports across module boundaries.

    5.108.0release notes

  • Top-level await and import.meta are treated as ES module markers, matching Node.js syntax detection so no explicit module type is needed.

    5.108.0release notes

  • Static member reads from a const binding created with require(LITERAL) are tracked as referenced exports, allowing unused CommonJS exports to be removed when usedExports is enabled.

    5.107.1release notes

  • With experiments.html and experiments.css, CSS chunks reachable from a script entry are emitted as stylesheet links in import order, with nonce, crossorigin, and referrerpolicy copied from the originating tag.

    5.107.1release notes

  • Resolver defaults now include module-sync to align with Node.js's synchronously-loadable ESM condition.

    5.107.0release notes

  • Module concatenation is supported for CSS modules with text, css-style-sheet, style, and link export types.

    5.107.0release notes

  • @value identifiers can be used as @import URLs and inside url() functions.

    5.107.0release notes

  • Inline CSS source maps are embedded for text, style, and css-style-sheet export types; imported CSS is merged for text and css-style-sheet, and generated class exports map back to original selectors.

    5.107.0release notes

  • The experimental TypeScript support requires Node.js >= 22.6 with the stable mode: "strip" API.

    5.107.0release notes

  • Conflicting order warnings for CSS now include fragment groups.

    5.106.0release notes

  • Destructuring assignment with require in CommonJS is supported, allowing tree shaking.

    5.106.0release notes

  • The localIdentName option now accepts a function.

    5.106.0release notes

  • External modules can now be placed in async chunks when outputting ECMA modules.

    5.106.0release notes

  • Async WASM modules now support source.

    5.106.0release notes

  • Asset modules are marked side-effect-free only when this option is enabled, preventing asset-copying imports from breaking otherwise.

    5.105.3release notes

  • Asset modules are now considered side-effect free.

    5.105.0release notes

  • The devtool option now supports array values.

    5.105.0release notes

  • Unknown import.meta properties are determined at runtime rather than statically analyzed at compile time.

    5.105.0release notes

  • Generated source maps include the ignoreList property only when it has content, avoiding empty arrays.

    5.105.0release notes

  • Worker modules can now be resolved by export condition name when using new Worker().

    5.105.0release notes

  • Adds the ability to use built-in properties in dotenv and DefinePlugin.

    5.104.0release notes

  • Uses the fully qualified class name or export name for the placeholder in CSS modules.

    5.104.0release notes

  • Supports object access.

    5.104.0release notes

  • Adds a module existence check to provide a more informative error message in development mode.

    5.104.0release notes

  • Adds support for __dirname with the universal target.

    5.103.0release notes

  • Adds support for __filename with the universal target.

    5.103.0release notes

Tooling 12

  • Can profile hook map taps, including resolver and parser hooks.

    5.112.0release notes

  • Report inner-graph, AMD, and bare module bailouts.

    5.110.0release notes

  • Improves module parse errors with a babel-style code frame and the module type.

    5.109.0release notes

  • Shows why a module was marked as not cacheable.

    5.109.0release notes

  • Adds HMR support with body and title DOM patching on update.

    5.108.0release notes

  • Schema-generated CLI flags now support JSON Schema if/then/else.

    5.108.0release notes

  • NormalModuleCreateData is generic over module type, narrowing parser, parserOptions, generator, and generatorOptions to the types for that module.

    5.107.1release notes

  • NormalModuleFactory parser and generator methods are generic over module type and return specific parser or generator classes for known types.

    5.107.1release notes

  • Callback types are narrowed by context: chunk filename callbacks require pathData.chunk, and module filename callbacks require pathData.module.

    5.107.1release notes

  • Experimental options are now marked as such in the types.

    5.106.2release notes

  • The schema's deprecate flag improves TypeScript support by identifying options already deprecated by the configuration.

    5.106.0release notes

  • Resolution supports new features for tsconfig.json.

    5.105.4release notes

Fixes and other changes 214

  • Loader output for .wasm is parsed as JavaScript when async wasm is auto-enabled.

    5.112.0release notes

  • Scopes and exports a CSS Modules @value consistently whether it is local or imported.

    5.112.0release notes

  • Supports deferred imports introduced by hot updates.

    5.112.0release notes

  • An async runtimeValue is now resolved over an async beforeParse hook.

    5.112.0release notes

  • Awaits every async entry before resolving an ESM library import.

    5.112.0release notes

  • Minified CSS and HTML are stable on a second pass, including for truncated input.

    5.112.0release notes

  • Keeps the last HMR update when output.clean is used and stops rechecking removed files.

    5.112.0release notes

  • Plugins set on a multi-configuration array are now applied to the MultiCompiler.

    5.112.0release notes

  • Reads errors through the processErrors hook via getErrors, matching hasWarnings, so filtered errors do not contradict the result.

    5.112.0release notes

  • Watch mode rebuilds when a file is deleted while a build is running.

    5.112.0release notes

  • Preserves regular expression flags when rebuilding context request matchers.

    5.112.0release notes

  • Preserves the spread of shadows and canonicalizes merged selector lists.

    5.111.1release notes

  • Gathers a CSS layer across a rule that writes only a different layer.

    5.111.1release notes

  • Omits implied tags and merges adjacent runs on the first pass.

    5.111.1release notes

  • Preserves the initial keyword where an engine treats it distinctly.

    5.111.1release notes

  • Joins adjacent CSS rules after cuts and preserves values that escapes previously consumed.

    5.111.1release notes

  • Joins rules made adjacent by a top-level @layer gather.

    5.111.1release notes

  • Preserves the page's closing html tag spelling regardless of how the element was opened.

    5.111.1release notes

  • Looks up attributes using decoded values rather than their source spelling.

    5.111.1release notes

  • Tree construction now follows HTML template form and frameset rules.

    5.111.1release notes

  • Preserves an attribute's delimiter and value spelling when quoting is frozen.

    5.111.1release notes

  • Rewrites attribute values whose source uses character references.

    5.111.1release notes

  • Unquotes HTML attribute values containing a vertical tab.

    5.111.1release notes

  • Orders attributes by their output and reads values after decoding.

    5.111.1release notes

  • Fixes module library exports lost under cache or missing behind a re-export.

    5.111.1release notes

  • Each switch now governs only its own CSS rewrite.

    5.111.1release notes

  • A fulfilled async cycle member is rejected with the cycle's evaluation error.

    5.111.0release notes

  • Settle a CSS chunk load when there is no DOM and its stylesheet cannot be read.

    5.111.0release notes

  • Preserve colors when rounding would change read-back channels, and lower CSS color functions and related syntax more accurately.

    5.111.0release notes

  • Lower CSS spellings a target cannot read and write a color fallback before an unsupported color spelling.

    5.111.0release notes

  • Await an evaluating-async dependency of a deferred import.

    5.111.0release notes

  • Fix generated ESM external reexports to escape requests, use configured requests, preserve live bindings and import attributes, and avoid stack overflows in star-reexport cycles.

    5.111.0release notes

  • Fix import.meta and require.main, and scope-hoist import.meta.main.

    5.111.0release notes

  • Honor resolve.fileSystem; the notes also identify where module.exprContextCritical moved.

    5.111.0release notes

  • Fixes circular reexport severity.

    5.110.3release notes

  • Fixes using new on a default import of a wrapped CommonJS module.

    5.110.3release notes

  • Evaluates a deferred import's async dependencies where the import occurs.

    5.110.3release notes

  • Omits ambiguous export * names from the module namespace.

    5.110.3release notes

  • Fixes handling of import() options.

    5.110.3release notes

  • Fixes namespace writes.

    5.110.3release notes

  • Skips ESM interop when require() targets a module outside the concatenation.

    5.110.3release notes

  • Fixes concatenated require() in a require.ensure callback or with a computed request.

    5.110.3release notes

  • Fixes reads of mangled exports through require() and a leaked internal reference.

    5.110.3release notes

  • Avoids reporting a missing export for a name deferred by a side-effect-free barrel.

    5.110.3release notes

  • Fixes analyzable ESM baking around cycles, mixed-served wasm and style url maps.

    5.110.2release notes

  • Strips a BOM added by a loader to a string and shifts a source map that counted it.

    5.110.2release notes

  • Fixes ESM circular reexports and cyclic const TDZ, and defers evaluation order.

    5.110.2release notes

  • Reports a named import that is never read when it names a missing export.

    5.110.2release notes

  • Stops output.html from emitting an unused JS chunk for each generated page.

    5.110.2release notes

  • Accepts the optimization.minimize: true shorthand when a plugin sets it in apply().

    5.110.1release notes

  • Fixes handling of a RegExp without capture groups in snapshot.managedPaths.

    5.110.1release notes

  • Resolve absolute symlink targets and treat an unreadable context as missing.

    5.110.0release notes

  • Avoid emitting a dead module and a failing require for an asset-url external.

    5.110.0release notes

  • Treat top-level this as the global scope in a classic worker entry.

    5.110.0release notes

  • Emit a CommonJS entry's default as export default in module library output.

    5.110.0release notes

  • Release compilation and file system caches retained after compiler.close().

    5.110.0release notes

  • Fix optional chains that read an undefined object member.

    5.110.0release notes

  • Derive import defer behavior from the target.

    5.110.0release notes

  • Derive import source behavior from the target and fix the source phase.

    5.110.0release notes

  • An etag mismatch in the memory cache falls through to the file cache instead of reporting a miss.

    5.110.0release notes

  • Fix tree shaking for a namespace reexported as default and prevent reading undefined from its member.

    5.110.0release notes

  • Fix common outputPath calculation, reruns after dependency validation failures, and watch-mode recovery after fatal child errors.

    5.110.0release notes

  • Keep the runtime out of strict mode when output.globalObject reads this.

    5.110.0release notes

  • Respect strictThisContextOnImports for require member calls.

    5.110.0release notes

  • Fix top-level using and await using declarations in modules.

    5.110.0release notes

  • Support UNC paths in module and context replacement plugins.

    5.110.0release notes

  • Skips require().prop in dead branches gated by inlined imported constants.

    5.109.2release notes

  • Aliases pointing at package directories whose names end with .js are resolved again.

    5.109.2release notes

  • The loader context target is reported as universal for the universal target.

    5.109.2release notes

  • Tracks dependencies by parsing sources when require.cache children are unavailable, such as on Bun.

    5.109.1release notes

  • Names the failing key when evaluation of a typeof value fails, making the error easier to diagnose.

    5.109.1release notes

  • Fixes a stray semicolon emitted before an imported call following a parenthesized sequence element.

    5.109.1release notes

  • Ignores ERR_SERVER_NOT_RUNNING during backend disposal so compiler.close() succeeds on Bun.

    5.109.1release notes

  • Returns a real ArrayBuffer so WebAssembly.instantiate accepts the loader result.

    5.109.1release notes

  • Makes re-export analysis independent of module processing order.

    5.109.1release notes

  • Guards setNoDelay and force-closes connections during lazy-compilation backend disposal to improve Deno compatibility.

    5.109.1release notes

  • Fixes inlined non-binary assets with encoding: false emitting "undefined" instead of their content.

    5.109.0release notes

  • Changes an HTML page's content hash when its inlined chunk content changes.

    5.109.0release notes

  • Escapes ? and # so source map names are not truncated.

    5.109.0release notes

  • Prevents unused CSS module exports from leaking into the JavaScript wrapper.

    5.109.0release notes

  • CSS modules scope view-transition names and pseudo references under customIdents.

    5.109.0release notes

  • Decodes non-base64 data URIs as UTF-8 to preserve multi-byte characters.

    5.109.0release notes

  • Skips anonymous default export name fix-up when name is non-configurable, avoiding an exception on pre-ES2015 engines.

    5.109.0release notes

  • Fixes deferred import error rethrows, evaluation guards, namespace identity, and lazy evaluation of initial-chunk context imports.

    5.109.0release notes

  • Merges object-form and dotted definitions so import.meta.env and process.env are consistent for direct, whole-object, and destructured access.

    5.109.0release notes

  • Resolves directory requests to their index module in scoped DllReferencePlugin.

    5.109.0release notes

  • Evaluates and validates the second argument to dynamic import(specifier, options).

    5.109.0release notes

  • Preserves live bindings for a module library's entry exports, including when the runtime is emitted as a separate chunk.

    5.109.0release notes

  • Renders sizes of 1 TiB or larger instead of displaying "undefined".

    5.109.0release notes

  • Prevents a dangling stylesheet link for a JavaScript-only chunk in an HTML entry.

    5.109.0release notes

  • Fixes escaping, head detection, duplicate meta tags, resource-hint and entry-tag retention with inject: false, and stylesheet placement.

    5.109.0release notes

  • Ignores a base element inside an inert template when resolving HTML URLs.

    5.109.0release notes

  • Prevents reuse of an already-used numbered suffix that could produce duplicate module or chunk ids.

    5.109.0release notes

  • Native CSS resolves @custom-media, including media-type values, and @custom-selector.

    5.109.0release notes

  • Fixes broken HMR with output.module and non-import chunk loading by emitting a plain-JSON hot-update manifest.

    5.109.0release notes

  • Recognizes modern RegExp flags d, s, u, and v when statically evaluating new RegExp(...).

    5.109.0release notes

  • Keeps required JSON data intact when prototype methods such as arr.includes() are called on it.

    5.109.0release notes

  • Fixes undersized modules being merged into the wrong result group.

    5.109.0release notes

  • Prevents a malformed HTML magic comment from leaking a pending inline directive onto the next element.

    5.109.0release notes

  • HTML asset URLs are resolved against the document's <base href>.

    5.108.4release notes

  • Directory references in new URL(...) are passed through instead of being resolved.

    5.108.4release notes

  • The cache is keyed on a lazy barrel's still-lazy re-export targets.

    5.108.4release notes

  • Fixes an HMR code generation crash when harmony accept has unresolved imports.

    5.108.3release notes

  • Matches dependencies by module reference so HMR code generation handles imports without a module or chunk id.

    5.108.3release notes

  • Fixes deferral of ungrouped side-effect imports in lazy barrels.

    5.108.2release notes

  • Respects the node: prefix for Node.js core modules used as externals.

    5.108.2release notes

  • Fixes invalid property access for escaped namespace imports with multi-character mangled export names.

    5.108.1release notes

  • Adds frames to the ProfilingPlugin event so its trace loads in Chrome DevTools.

    5.108.1release notes

  • Keeps all CommonJS exports when an exported function accesses them through this.

    5.108.0release notes

  • Keeps the full exports object when a require() binding is re-exported.

    5.108.0release notes

  • No longer drops exports accessed before a deferred require binding.

    5.108.0release notes

  • Access to an undefined object member now resolves as undefined.

    5.108.0release notes

  • Recognizes forward-slash Windows absolute paths such as C:/dir consistently.

    5.108.0release notes

  • Resolves and rewrites asset URLs inside iframe srcdoc in HTML modules.

    5.108.0release notes

  • Re-encodes inline hash digests from the full content hash for full entropy, realContentHash compatibility, and dynamically loaded chunk filenames; preserves leading zero bytes in base-N digests.

    5.108.0release notes

  • Fixes module-sharing hostname validation.

    5.108.0release notes

  • On the node target, resolves a global Worker constructor to worker_threads.

    5.108.0release notes

  • Allows the filesystem root as output.path by treating EISDIR like EEXIST in mkdirp.

    5.108.0release notes

  • Improves commonjs, node-commonjs, and global externals for universal targets.

    5.108.0release notes

  • Chunk-hash placeholders in chunk URLs embedded in extracted HTML are now resolved.

    5.107.2release notes

  • HTML content hashes now account for changes to referenced assets and inline-style URLs.

    5.107.2release notes

  • Missing entry options are filled in when an async block joins an existing entrypoint.

    5.107.2release notes

  • Fixes a first-activation ReferenceError for lazy-compiled modules in closure-wrapped umd, umd2, amd, amd-require, and system library bundles with statically enumerable externals.

    5.107.2release notes

  • External runtime conditions are included in concatenated-module hash updates, so changes invalidate persistent caches.

    5.107.2release notes

  • CreateData now represents the fully populated value passed to module creation hooks, while ResolveData.createData is Partial<CreateData>.

    5.107.1release notes

  • Decodes all WHATWG named character references, including legacy bare forms and multi-code-point entities, with longest-prefix backtracking.

    5.107.1release notes

  • Imported bindings inside inline AMD define callbacks in ES modules are rewritten to imported references, avoiding runtime ReferenceError; inner graph usage analysis is also fixed for a related function pattern.

    5.107.1release notes

  • Hash placeholders with length suffixes, such as [fullhash:N] and [hash:N], are now interpolated at runtime instead of remaining as XXXX.

    5.107.1release notes

  • Traversal is iterative, preventing stack overflows on long linear chains of side-effect-free imports.

    5.107.1release notes

  • Multiple SourceMapDevToolPlugin instances can coexist with devtool on the same asset; additional related.sourceMap entries are appended instead of overwritten.

    5.107.1release notes

  • WebAssembly async and sync generator hooks now use EmptyGeneratorOptions instead of EmptyParserOptions.

    5.107.1release notes

  • Prefetch orders are resolved per import() call site instead of leaking across imports that share a webpackChunkName.

    5.107.1release notes

  • Preload orders are resolved per import() call site instead of leaking across imports that share a webpackChunkName.

    5.107.1release notes

  • Supports no-expression template literals in computed member access, such as import.meta[url].

    5.107.0release notes

  • Recomputes CSS chunk content hashes and rendered bytes when an asset referenced from CSS changes its hashed filename.

    5.107.0release notes

  • Preserves the @charset at-rule when CSS modules use exportType: "text".

    5.107.0release notes

  • Fixes HMR for concatenated CSS modules with style exportType using stable per-module style element identifiers and inner module IDs in HMR records.

    5.107.0release notes

  • Fixes self-composition duplicate module instances, per-class local() and global() tracking, and composed-file ordering.

    5.107.0release notes

  • A .module.<ext> file imported directly and via icss composes or :import becomes a single module instance.

    5.107.0release notes

  • Fixes @value resolution when the same local name is imported from multiple modules.

    5.107.0release notes

  • Cyclic star re-exports now detect per-name cycles and fall through to a non-cyclic source instead of producing a recursive getter chain.

    5.107.0release notes

  • External dependencies in ESM output preserve defer and source import phase keywords, as import attributes do.

    5.107.0release notes

  • Fixes typeof and instanceof for deferred default-only and default-with-named external modules under optimization.concatenateModules.

    5.107.0release notes

  • Assignment to a deferred namespace no longer evaluates the module; deferred namespaces are distinct from eager namespaces and shared across defer-import call sites for the same module.

    5.107.0release notes

  • A side-effect-free SequenceExpression argument with a static specifier is resolved like a direct static import() specifier.

    5.107.0release notes

  • Tree-shaking purity analysis handles more expression types and PURE comments in template interpolations, while preventing comments from leaking across object properties.

    5.107.0release notes

  • Resolves [hash] and [fullhash] placeholders when generating url() references for experiments.css.

    5.107.0release notes

  • Escapes # in a request's directory portion when it also contains a query string, allowing projects in such paths to resolve correctly.

    5.107.0release notes

  • Attaches a no-op rejection handler to best-effort prefetch so chunk loading failures do not cause unhandled rejections.

    5.107.0release notes

  • When an ES module exports the literal name "module.exports", CommonJS require() returns that export's value instead of the namespace object, matching Node.js behavior.

    5.107.0release notes

  • Preserves using declaration initializers when inner graph optimization is enabled.

    5.107.0release notes

  • Fixes spec deviations in the deferred namespace object returned by this runtime helper.

    5.107.0release notes

  • Asset modules are available in JS context when referenced from both CSS and a lazily compiled JS chunk.

    5.106.2release notes

  • CSS modules now handle @charset at-rules.

    5.106.2release notes

  • CSS @import inherits the parent module's exportType, so a file configured as text correctly creates a style tag when imported by a style parent.

    5.106.2release notes

  • The entries and entrypoints options no longer have user-provided falsy values overridden by || default handling.

    5.106.2release notes

  • Missing generator options are included in the hash, ensuring persistent cache invalidation when configuration changes.

    5.106.2release notes

  • The modules option no longer has its user-provided falsy value overridden by || default handling.

    5.106.2release notes

  • Generated fix-up code now references the real assignment target and uses Object.defineProperty and Object.getOwnPropertyDescriptor, avoiding ReferenceError and supporting pre-ES2015 runtimes.

    5.106.1release notes

  • Local ident hashing now uses compiler context instead of module context, avoiding hash collisions for same-named files in different directories.

    5.106.1release notes

  • CSS modules no longer rename !important as a local identifier.

    5.106.1release notes

  • Entry chunks are hashed after runtime chunks to prevent stale content-hash references in watch mode.

    5.106.0release notes

  • Corrects url() path resolution and preserves source maps for non-link CSS export types, including style, text, and css-style-sheet.

    5.106.0release notes

  • Fixes resolving in CSS modules.

    5.106.0release notes

  • Anonymous default-exported functions and classes now receive the name "default", per the ES specification.

    5.106.0release notes

  • As a standalone expression, import.meta now returns a complete object with known properties and stable identity; preserve-unknown ESM output merges runtime properties.

    5.106.0release notes

  • When outputting an ECMA module library, webpack no longer renders an unused top-level __webpack_exports__ declaration.

    5.106.0release notes

  • Absolute-path virtual module IDs now use their context directly instead of concatenating it with compiler.context.

    5.106.0release notes

  • Handles createRequire when it appears in expressions.

    5.105.4release notes

  • Narrows detection to explicit existence checks on namespace imports, such as "x" in ns.

    5.105.4release notes

  • Fixes the types for multi stats.

    5.105.4release notes

  • Removes empty, needless JavaScript output for normal CSS modules.

    5.105.4release notes

  • The bytes import attribute now produces immutable bytes to match the TC39 specification.

    5.105.3release notes

  • Context modules now handle rejections correctly.

    5.105.3release notes

  • Empty JavaScript files are no longer generated for CSS-only entry points.

    5.105.3release notes

  • CSS modules with @import now work during HMR when exportType is not link, without special HMR handling.

    5.105.3release notes

  • Missing-module errors are thrown after the interception handler, allowing interception to customize the module factory.

    5.105.3release notes

  • Webpack no longer crashes when a referenced chunk is not a runtime chunk.

    5.105.3release notes

  • The missing declaration is added in certain bundles that combine a JavaScript entry with non-JavaScript entries.

    5.105.3release notes

  • Fixed a type regression affecting WebpackPluginInstance.

    5.105.2release notes

  • Part of createRequire generation behavior for require calls with node: specifiers was reverted to preserve compatibility with those modules' exports.

    5.105.1release notes

  • Cache keys and filenames are sanitized for Windows filesystem compatibility, replacing colons with double underscores and sanitizing other invalid characters.

    5.105.1release notes

  • Conditional imports are detected to avoid compile-time linking errors for non-existent exports.

    5.105.0release notes

  • Rendering of Node.js built-in modules is improved for ECMA module output.

    5.105.0release notes

  • Star exports for dependencies are preserved in ECMA module output.

    5.105.0release notes

  • Fixes ESM default export handling for .mjs files in Module Federation.

    5.105.0release notes

  • Fixes missing export generation when concatenated modules in different chunks share the same runtime.

    5.105.0release notes

  • Declaring a module variable in module scope no longer conflicts with the default moduleArgument.

    5.105.0release notes

  • Fixes an unused export name when a self-referencing dependency is imported inside a web worker.

    5.105.0release notes

  • Stats output now respects the stats.errorStack option.

    5.105.0release notes

  • Sets resourceData.context so subsequent module resolution uses a valid filesystem path instead of the virtual scheme path.

    5.105.0release notes

  • Supports multiple URL patterns for Worker self-imports and deduplicates Workers that resolve to the same module.

    5.105.0release notes

  • Reuses the same async entrypoint for the same Worker URL within a module to avoid circular dependency warnings.

    5.105.0release notes

  • Avoids accessing the WEBPACK_IMPORT_KEY declaration with var during reexports runtime calculation.

    5.104.1release notes

  • Fixes bugs for the css/global type.

    5.104.0release notes

  • Removes CSS link tags when CSS imports are removed.

    5.104.0release notes

  • Handles more at-rules for CSS modules.

    5.104.0release notes

  • Fixes parsing of CSS nesting and CSS custom properties.

    5.104.0release notes

  • Prevents debugId injection from being corrupted when using hidden-source-map.

    5.104.0release notes

  • Adds serialization support for HookWebpackError.

    5.104.0release notes

  • Makes import.meta.filename and import.meta.dirname compatible with eval devtools.

    5.104.0release notes

  • Improves hashing and reduces collisions for CSS local identifiers.

    5.104.0release notes

  • Doesn't write the URL fragment to the filename and instead applies it to the module URL.

    5.104.0release notes

  • Renames single nested __webpack_export__ and __webpack_require__ identifiers in already bundled code.

    5.103.0release notes

  • Fixes cases where defer imports and dynamic default exports are mixed.

    5.103.0release notes

  • Fixes loading of async modules in defer imports.

    5.103.0release notes

  • Chunks declared with dependOn are loaded before the common chunk.

    5.103.0release notes

  • Handles __dirname for ES modules.

    5.103.0release notes

  • Returns to a namespace import when an external request includes a specific export.

    5.103.0release notes

  • Handles __filename for ES modules.

    5.103.0release notes

  • Delays HMR accept dependencies to preserve import attributes.

    5.103.0release notes

  • Fixes the identifier used for import bindings of module externals.

    5.103.0release notes

  • Reexports a module for default imports when no exports are used.

    5.103.0release notes

  • Properly handles external presets for the universal target.

    5.103.0release notes