webpack v5.0.0-beta.17 Release Notes

Release Date: 2020-06-03 // almost 4 years ago
  • Known Problems

    • ๐Ÿš€ The transitive move-file dependency requires node >= 10.17, while webpack is intended to be >= 10.13 compatible. This temporary increases the min node version for this beta release until we found a solution to that.
      • Fixed, latest patch releases are >= 10.13 compatible

    ๐Ÿ”‹ Features

    • Using module in an ESM no longer needs the whole namespace object
    • 0๏ธโƒฃ SideEffects flag can follow reexports that are partially dynamic or use a compat default
    • ๐Ÿ‘ export * uses more exports info data for better exports
    • 0๏ธโƒฃ dynamic export * no longer flags the default export as maybe provided
    • ๐Ÿ‘ allow module concatenation even when provided exports are unknown, but used exports are known
    • โž• add promise external, which is like var but awaits the global value in a async module
    • โž• add import external, which uses import() to load a native ESM
    • โž• add output.importFunctionName to change the import() to something else, e.g. to a polyfill.
    • โœ‚ remove some unneeded dependencies
    • Module Federation
      • removed scope shortcut object config for container plugins (BREAKING)
      • add ability to pass advanced options to container plugins
      • allow to expose an array of modules (similar to entry)
      • allow to provide an array of remote locations (they act as fallback)
      • await when a promise is returned by the external
      • allow to expose an index module which is used when using the remote without subpath
      • change exposed keys to be prefixed with ./ (BREAKING)
      • automatically inferred keys do no longer omit leading non-word chars
      • add version handling to shared modules (see #10960 for details, BREAKING)

    ๐Ÿ›  Bugfixes

    • 0๏ธโƒฃ export default no longer converts function declarations to expressions
    • inline external type can also provided when using an array external.
    • ๐Ÿ›  fixed a bug in snapshotting that caused changes to be ignored during watching
    • โž• add missing dependency for correct typings
    • Persistent Caching
      • DllPlugin related classes are now serializable
      • Dates are serializable

    ๐Ÿ”„ Changes

    • ๐Ÿ”€ merged all asset processing hooks into a new hook processAssets with stages
    • ๐Ÿ—„ Modifications to compilation.asset after sealing are deprecated