algolia / community-project-boilerplate

Minimal setup for community projects [NO MORE MAINTAINED]
https://community.algolia.com/community-project-boilerplate
MIT License
3 stars 5 forks source link

fix(deps): update dependency webpack to v4 #62

Open renovate[bot] opened 6 years ago

renovate[bot] commented 6 years ago

This PR contains the following updates:

Package Type Update Change References
webpack dependencies major 3.12.0 -> 4.29.6 source

Release Notes

webpack/webpack ### [`v4.29.6`](https://togithub.com/webpack/webpack/releases/v4.29.6) [Compare Source](https://togithub.com/webpack/webpack/compare/v4.29.5...v4.29.6) ### Bugfixes - typeof `__webpack_require__` and `require.onError` is no longer evaluated to `undefined` and evaluation is done at runtime instead. - `this` value in `module.hot.accept` with imported dependency is correctly preserved. - webassemblyjs updated to latest version ### Contributing - added a linting step to ensure all dependencies resolve to `npm` modules ### [`v4.29.5`](https://togithub.com/webpack/webpack/releases/v4.29.5) [Compare Source](https://togithub.com/webpack/webpack/compare/v4.29.4...v4.29.5) ### Bugfixes - update `@webassemblyjs` to remove git dependency ### [`v4.29.4`](https://togithub.com/webpack/webpack/releases/v4.29.4) [Compare Source](https://togithub.com/webpack/webpack/compare/v4.29.3...v4.29.4) ### Bugfixes - update `@webassemblyjs` for bugfixes ### [`v4.29.3`](https://togithub.com/webpack/webpack/releases/v4.29.3) [Compare Source](https://togithub.com/webpack/webpack/compare/v4.29.2...v4.29.3) ### Bugfixes - fixes a bug where `import()` context uses `__webpack_require__.e`, but it is not in the runtime - WebpackErrors now console.log correctly in node > 10 ### [`v4.29.2`](https://togithub.com/webpack/webpack/releases/v4.29.2) [Compare Source](https://togithub.com/webpack/webpack/compare/v4.29.1...v4.29.2) ### Internal changes - update dependencies ### [`v4.29.1`](https://togithub.com/webpack/webpack/releases/v4.29.1) [Compare Source](https://togithub.com/webpack/webpack/compare/v4.29.0...v4.29.1) ### Bugfixes - add missing `__esModule` flag when modules are concatenated, but without usage information ### [`v4.29.0`](https://togithub.com/webpack/webpack/releases/v4.29.0) [Compare Source](https://togithub.com/webpack/webpack/compare/v4.28.4...v4.29.0) ### Important Note for npm users This release updates some dependencies, which may trigger a npm bug. See [here for the webpack issue](https://togithub.com/webpack/webpack/issues/8656). The [npm bug](https://npm.community/t/packages-with-peerdependencies-are-incorrectly-hoisted/4794) has [been fixed](https://togithub.com/npm/cli/pull/147), but a new npm version has not been released yet. For workarounds see [this comment](https://togithub.com/webpack/webpack/issues/8656#issuecomment-456713191). Eventually the fix will be to upgrade npm once the bugfix is released. ### Features - update acorn to v6 - limit the number of in parallel written output files to 15 - add `output.futureEmitAssets` which gives the emitting logic of webpack 5 - assets are replaced with SizeOnlySources - reading assets after emitting is no longer allowed - This allows memory to be garbage-collected ### [`v4.28.4`](https://togithub.com/webpack/webpack/releases/v4.28.4) [Compare Source](https://togithub.com/webpack/webpack/compare/v4.28.3...v4.28.4) ### Bugfixes - `ProfilingPlugin` creates output path if not existing - fixed support for arrow function functions for `optimization.minimizer` - failed hooks is now also called when `run()` fails ### [`v4.28.3`](https://togithub.com/webpack/webpack/releases/v4.28.3) [Compare Source](https://togithub.com/webpack/webpack/compare/v4.28.2...v4.28.3) ### Bugfixes - ProfilingPlugin creates the output folder if necessary ### [`v4.28.2`](https://togithub.com/webpack/webpack/releases/v4.28.2) [Compare Source](https://togithub.com/webpack/webpack/compare/v4.28.1...v4.28.2) ### Bugfixes - fixes a crash when multiple IgnorePlugins are used ### [`v4.28.1`](https://togithub.com/webpack/webpack/releases/v4.28.1) [Compare Source](https://togithub.com/webpack/webpack/compare/v4.28.0...v4.28.1) ### Bugfixes - fix error in IgnorePlugin when no contextRegExp is passed ### [`v4.28.0`](https://togithub.com/webpack/webpack/releases/v4.28.0) [Compare Source](https://togithub.com/webpack/webpack/compare/v4.27.1...v4.28.0) ### Features - IgnorePlugin: `checkResource` has an additional `context` argument ### Bugfixes - Injection of node.js globals has been disabled for `.mjs` files as it's crashing ### [`v4.27.1`](https://togithub.com/webpack/webpack/releases/v4.27.1) [Compare Source](https://togithub.com/webpack/webpack/compare/v4.27.0...v4.27.1) ### Bugfixes - v4.27.0 accidentially introduced a breaking change. This reverts the change and restores the original behavior for `splitChunks` `enforce`. ### [`v4.27.0`](https://togithub.com/webpack/webpack/releases/v4.27.0) [Compare Source](https://togithub.com/webpack/webpack/compare/v4.26.1...v4.27.0) ### Features - When using functions as plugins they are now also called with the compiler as parameter - This make it possible to use arrow functions as plugins - splitChunks.maxSize now emits a warning when minSize > maxSize - Loaders have now access to a `getResolve` method to create their own resolver function with custom options ### Bugfixes - splitChunks.cacheGroups.xxx.enforce now behaves as documented and enforce chunk creation - splitChunks.cacheGroups.xxx.enforce now no longer deletes minSize for maxSize - fixes a bug where splitChunks cause cacheGroups to be incorrectly merged when using the same name - now conditions are considered per cacheGroup - the correct cache group comment is displayed in stats - fixes a bug which causes providedExports not to be updated on rebuilds when using `export * from` ### [`v4.26.1`](https://togithub.com/webpack/webpack/releases/v4.26.1) [Compare Source](https://togithub.com/webpack/webpack/compare/v4.26.0...v4.26.1) ### Bugfixes - fix a bug where splitChunks.maxSize causes a hanging build - fix a bug where splitChunks.maxSize crashes when minSize > maxSize - fix a edgecase where splitChunks.maxSize can cause chunks bigger than minSize - remove unnecessary code from global builtin ### [`v4.26.0`](https://togithub.com/webpack/webpack/releases/v4.26.0) [Compare Source](https://togithub.com/webpack/webpack/compare/v4.25.1...v4.26.0) ### Features - Switch from uglify-es to terser as default minimizer Note: While they are officially backward-compatible, it can still happen that a new bugs occurs with terser, which break your production builds. Make sure to validate your production builds after upgrading to this version. (Note that it's always a good idea to test your output assets before deploying.) If you want to report bugs to terser (), please provide a minimal repro case with minimized and **non-minimized** code. You can configure webpack to generate non-minimized code in production mode by setting `optimization.minimize: false`. When reporting a bug to terser, best report a repro case which doesn't require running webpack and is reproducible with only the terser command line. See [`optimization.minimizers`](https://webpack.js.org/configuration/optimization/#optimization-minimizer) configuration option to switch back to uglify-es or provide additional minimize options for terser. ### [`v4.25.1`](https://togithub.com/webpack/webpack/releases/v4.25.1) [Compare Source](https://togithub.com/webpack/webpack/compare/v4.25.0...v4.25.1) ### Bugfixes - fix replacement of compile-time constant expression when expression is a wrapped expression (string prefix and/or suffix). ### [`v4.25.0`](https://togithub.com/webpack/webpack/releases/v4.25.0) [Compare Source](https://togithub.com/webpack/webpack/compare/v4.24.0...v4.25.0) ### Features - add `format` option to `DllPlugin` to allow generating formated manifest json - add flags to `ProgressPlugin` to add and remove information - entrypoint counter was added, but disabled by default to avoid breaking change ### Bugfixes - fix code generation for context dependencies when replacing compile-time constant expressions - disable the effect of the ProvidePlugin for `.mjs` ### [`v4.24.0`](https://togithub.com/webpack/webpack/releases/v4.24.0) [Compare Source](https://togithub.com/webpack/webpack/compare/v4.23.1...v4.24.0) ### Features - allow to pass no dependencies to DefinePlugin runtime value - `DefinePlugin.runtimeValue(() => {...}, true)` is always evaluated - add `module` argument to `DefinePlugin.runtimeValue` ### Bugfixes - update webassemblyjs dependency - fix bug when using entry names that look like numbers with HMR ### [`v4.23.1`](https://togithub.com/webpack/webpack/releases/v4.23.1) [Compare Source](https://togithub.com/webpack/webpack/compare/v4.23.0...v4.23.1) ### Bugfixes - add space when replacing expression with constant - i. e. for code like `return'development'===process.env.NODE_ENV&&'foo'` ### [`v4.23.0`](https://togithub.com/webpack/webpack/releases/v4.23.0) [Compare Source](https://togithub.com/webpack/webpack/compare/v4.22.0...v4.23.0) ### Features - add `watchMode` flag to Compiler to be able to detect watch mode in plugins - Prefer chunk names of entrypoints when merging chunks - add `removedFiles` property to Compiler to detect removed files ### Bugfixes - publish declarations to npm - upgrade `@webassemblyjs/*` for bugfix - fix crash when using a side-effect-free wasm module in production mode ### Internal changes - test on node.js 12 - fix memory leak in test suite ### [`v4.22.0`](https://togithub.com/webpack/webpack/releases/v4.22.0) [Compare Source](https://togithub.com/webpack/webpack/compare/v4.21.0...v4.22.0) ### Features - Add support for evaluating `&&` and `||` expressions ### Bugfixes - fix problems where order of things where not deterministic ### Performance - improve performance of chunk graph creation - this will improve rebuild performance in watch mode ### [`v4.21.0`](https://togithub.com/webpack/webpack/releases/v4.21.0) [Compare Source](https://togithub.com/webpack/webpack/compare/v4.20.2...v4.21.0) ### Features - add `output.libraryTarget: "amd-require"` which generates a AMD `require([], ...)` wrapper instead of a `define([], ...)` wrapper - support arrays of strings passed to `output.library`, which exposes the library to a subproperty ### Bugfixes - fix cases where `__webpack_require__.e` is used at runtime but is not defined in the bundle - fix behavior of externals of `global` type ### Performance - Some performance improvements to the chunk graph generation ### [`v4.20.2`](https://togithub.com/webpack/webpack/releases/v4.20.2) [Compare Source](https://togithub.com/webpack/webpack/compare/v4.20.1...v4.20.2) ### Bugfixes - keep comments in `export default` in concatenated modules ### [`v4.20.1`](https://togithub.com/webpack/webpack/releases/v4.20.1) [Compare Source](https://togithub.com/webpack/webpack/compare/v4.20.0...v4.20.1) ### Bugfixes - fix crash when using `libraryTarget: "amd"` without library name ### [`v4.20.0`](https://togithub.com/webpack/webpack/releases/v4.20.0) [Compare Source](https://togithub.com/webpack/webpack/compare/v4.19.1...v4.20.0) ### Bugfixes - update dependencies (webpack-sources, @​webassemblyjs/\*) - Handle errors thrown in renderes without crashing ### Internal changes - Extended typings - Update internal structure of options schema to generate typings - Note: this exposed an issue in webpack-cli, you need to upgrade to webpack-cli@3.1.1 ### [`v4.19.1`](https://togithub.com/webpack/webpack/releases/v4.19.1) [Compare Source](https://togithub.com/webpack/webpack/compare/v4.19.0...v4.19.1) ### Bugfixes - Internal requested filename for `import()` with `target: "electron-main"` uses correct path separator on windows (This fixes a problem with filemappings in vscode) - `devtool: "source-map"` and variants generate SourceMaps when output file is `.mjs` - `browser` field as object is used when using `target: "electron-renderer"` - Comments near `export default` are preserved - Passing an array as `externals` value, now works correctly as documented ### [`v4.19.0`](https://togithub.com/webpack/webpack/releases/v4.19.0) [Compare Source](https://togithub.com/webpack/webpack/compare/v4.18.1...v4.19.0) ### Bugfixes - Create a hash of the whole runtime code for the chunk/contenthash of entry chunks - Before hash was (incorrectly) calculated from (some) inputs ### [`v4.18.1`](https://togithub.com/webpack/webpack/releases/v4.18.1) [Compare Source](https://togithub.com/webpack/webpack/compare/v4.18.0...v4.18.1) ### Bugfixes - Update tapable version, which fixes a memory leak ### [`v4.18.0`](https://togithub.com/webpack/webpack/releases/v4.18.0) [Compare Source](https://togithub.com/webpack/webpack/compare/v4.17.3...v4.18.0) ### Features - Upgrade webassemblyjs dependency ### [`v4.17.3`](https://togithub.com/webpack/webpack/releases/v4.17.3) [Compare Source](https://togithub.com/webpack/webpack/compare/v4.17.2...v4.17.3) ### Bugfixes - Fix exit code when multiple CLIs are installed - No longer recommend installing webpack-command, but still support it when installed ### [`v4.17.2`](https://togithub.com/webpack/webpack/releases/v4.17.2) [Compare Source](https://togithub.com/webpack/webpack/compare/v4.17.1...v4.17.2) ### Bugfixes - fix a spacing issue with the ProgressPlugin on some terminals - force-upgrade webpack-sources for performance improvement (was already in semver range) ### [`v4.17.1`](https://togithub.com/webpack/webpack/releases/v4.17.1) [Compare Source](https://togithub.com/webpack/webpack/compare/v4.17.0...v4.17.1) ### Bugfixes - fix missing reexports in `export *` in a concatenated module ### [`v4.17.0`](https://togithub.com/webpack/webpack/releases/v4.17.0) [Compare Source](https://togithub.com/webpack/webpack/compare/v4.16.5...v4.17.0) ### Features - allow to provide custom functions to IgnorePlugin ### Bugfixes - remove incorrectly emitted dead code in concatenated modules - chunk ids contribute to `[contenthash]` for js assets - fix crash when trying to export globals in concatenated modules ### [`v4.16.5`](https://togithub.com/webpack/webpack/releases/v4.16.5) [Compare Source](https://togithub.com/webpack/webpack/compare/v4.16.4...v4.16.5) ### Bugfixes - (resource) query now works in `import()` - adding entries multiple times now overrides properly - This caused an issue when using `webpack-hot-client` and runtime chunks ### [`v4.16.4`](https://togithub.com/webpack/webpack/releases/v4.16.4) [Compare Source](https://togithub.com/webpack/webpack/compare/v4.16.3...v4.16.4) ### Bugfixes - fix `chunkAsset` hook in HotModuleReplacementPlugin ### [`v4.16.3`](https://togithub.com/webpack/webpack/releases/v4.16.3) [Compare Source](https://togithub.com/webpack/webpack/compare/v4.16.2...v4.16.3) ### Bugfixes - fix missing modules with chunks nested in unneeded `require.ensure`s. ### [`v4.16.2`](https://togithub.com/webpack/webpack/releases/v4.16.2) [Compare Source](https://togithub.com/webpack/webpack/compare/v4.16.1...v4.16.2) ### Bugfixes - handle `module.require` like `require` - emit warnings for `module.main.require` and `module.parent.require` - sort reasons in stats - handle errors when parsing manifest in DllReferencePlugin ### [`v4.16.1`](https://togithub.com/webpack/webpack/releases/v4.16.1) [Compare Source](https://togithub.com/webpack/webpack/compare/v4.16.0...v4.16.1) ### Bugfixes - fix reversed order when using optimization.occurrenceOrder (default in production mode) - `output.hashDigest` has a more relaxed schema - update dependencies - fix typo in schema ### Internal changes - typescript 3 rc ### [`v4.16.0`](https://togithub.com/webpack/webpack/releases/v4.16.0) [Compare Source](https://togithub.com/webpack/webpack/compare/v4.15.1...v4.16.0) ### Features - add wasm support for `electron-renderer` target - add `optimization.moduleIds` and `optimization.chunkIds` options to replace other options ### Bugfixes - fix order of side effect evaluation for exported dependencies in side-effect-free modules - fix some typos - Support the case when passing an array to `output.library.root` and using a devtool - fix a HMR logging message issue in browser where `err.stack` is not set - add missing default extensions to the DllReferencePlugin - module/chunk ids in Stats now sort numerical when they are numbers - fix lost chunk reasons when using `optimization.splitChunks.maxSize` - fix cases where `Dependency.loc` is a string instead of an object ### Deprecations - deprecated `Dependency.compare` in favor of `compareLocations` - `optimization.namedModules` is now deprecated - `optimization.hashedModuleIds` is now deprecated - `optimization.namedChunks` is now deprecated - `optimization.occurrenceOrder` is now deprecated ### [`v4.15.1`](https://togithub.com/webpack/webpack/releases/v4.15.1) [Compare Source](https://togithub.com/webpack/webpack/compare/v4.15.0...v4.15.1) ### Bugfixes - fix memory leaks when using HMR and in SplitChunksPlugin cache - fix undefined automaticNameDelimiter in cache groups when using maxSize - fix ProfilingPlugin for node.js 10 and 6 ### [`v4.15.0`](https://togithub.com/webpack/webpack/releases/v4.15.0) [Compare Source](https://togithub.com/webpack/webpack/compare/v4.14.0...v4.15.0) ### Features: - add `maxSize` option for `splitChunks` (experimental) - add a helpful error when using wasm in a initial chunk ### [`v4.14.0`](https://togithub.com/webpack/webpack/releases/v4.14.0) [Compare Source](https://togithub.com/webpack/webpack/compare/v4.13.0...v4.14.0) ### Features - add new hook `Compilation.dependencyReference` to modify the dependency references ### Bugfixes - Allow chunks to emit multiple assets to the same filename when hash matches ### [`v4.13.0`](https://togithub.com/webpack/webpack/releases/v4.13.0) [Compare Source](https://togithub.com/webpack/webpack/compare/v4.12.2...v4.13.0) ### Features - the `DefinePlugin` now supports `runtimeValue`s to pass computed values with dependencies that can change over time - added `optimization.hashedModuleIds` - crossOrigin for chunks is only set when really needed - added per chunk group indicies - updated enhanced-resolve - You can now use absolute paths as keys to `resolve.alias` ### Bugfixes - when delegating CLI the `bin` fields are used - when assigning indicies sync dependencies are now walked before async dependencies ### [`v4.12.2`](https://togithub.com/webpack/webpack/releases/v4.12.2) [Compare Source](https://togithub.com/webpack/webpack/compare/v4.12.1...v4.12.2) ### Bugfixes - fix crash when using invalid JSON with HMR - fix missing modules when a side-effect-free package is root of module concatenation - update chunkhash when entry-chunks list or prefetched chunks change ### [`v4.12.1`](https://togithub.com/webpack/webpack/releases/v4.12.1) [Compare Source](https://togithub.com/webpack/webpack/compare/v4.12.0...v4.12.1) ### Bugfixes - fix problem causing a stack overflow when reexporting circular - fix a bug causing missing modules in bundles when using `splitChunks` - run modules in correct order when using `import` with `sideEffects: false` - added order to `DependencyReference` - add missing support for `[chunkhash]` in `target: "webworker"` - fix bug causing incomplete profile (race condition) with the `ProfilingPlugin` ### Internal changes - Added more types - lint files on commit with `lint-staged` ### [`v4.12.0`](https://togithub.com/webpack/webpack/releases/v4.12.0) [Compare Source](https://togithub.com/webpack/webpack/compare/v4.11.1...v4.12.0) ### Features - Errors from loaders show the loader path in the error message - add support for optional catch and line and paragraph separator in strings (ES2019) ### Bugfixes - fixes a bug where chunks have duplicate ids when using records - fix bubbling in HMR for `import()` when importing a non-ESM - fix issue with in installing with pnpm - update dependencies of the ProfilingPlugin ### [`v4.11.1`](https://togithub.com/webpack/webpack/releases/v4.11.1) [Compare Source](https://togithub.com/webpack/webpack/compare/v4.11.0...v4.11.1) ### Features - add `optimization.mangleWasmImports` option to disable mangling of wasm imports ### Bugfixes - disable wasm import mangling temporary because of bugs in the underlying wasm processing ### [`v4.11.0`](https://togithub.com/webpack/webpack/releases/v4.11.0) [Compare Source](https://togithub.com/webpack/webpack/compare/v4.10.2...v4.11.0) ### Features - support `reportProgress` in `afterEmit` - Warnings are now emitted if magic comments don't compile - Added support for matchResource inline request for loaders - Using webpackPrefetch in entry chunk now triggers prefetching in runtime - No link tag needed for this in HTML - Warnings will be emitted when trying to use i64-functions imported from wasm ### Bugfixes - get_global initializer in wasm globals now work correctly - Reexporting globals is now handled correctly - Error origins and locations are now displayed correctly ### [`v4.10.2`](https://togithub.com/webpack/webpack/releases/v4.10.2) [Compare Source](https://togithub.com/webpack/webpack/compare/v4.10.1...v4.10.2) ### Bugfixes - order of wasm globals is correctly preversed while rewriting - skipping side-effect-free modules up to a concatenated modules will not longer cause `null` module ids ### [`v4.10.1`](https://togithub.com/webpack/webpack/releases/v4.10.1) [Compare Source](https://togithub.com/webpack/webpack/compare/v4.10.0...v4.10.1) ### Bugfixes - update reasons correctly when skipping side-effect-free modules ### [`v4.10.0`](https://togithub.com/webpack/webpack/releases/v4.10.0) [Compare Source](https://togithub.com/webpack/webpack/compare/v4.9.2...v4.10.0) ### Features - Export and import name strings in them wasm are mangled - Unused exports in wasm are removed (Tree Shaking) - Don't expect size improvements yet since there is not minimizer for WASM yet which does the Dead Code Elimination, which is the second part for this optimization - Direct WASM dependencies are enforced for: - functions imports with i64 parameters or return values - memory and table imports - generate shorter wasm runtime code - ESM namespace object now have `Symbol.toStringTag` `"Module"` ### Bugfixes - generate correct initializer for imported globals in wasm - side-effect-free modules referenced by `export * from` are no longer including in the bundle - the side-effects optimization is now possible in incremental compilation ### [`v4.9.2`](https://togithub.com/webpack/webpack/releases/v4.9.2) [Compare Source](https://togithub.com/webpack/webpack/compare/v4.9.1...v4.9.2) ### Bugfixes - functions is defined because used (fixes undeclared function error in firefox) - progress plugin works now in MultiCompiler scenarios again ### [`v4.9.1`](https://togithub.com/webpack/webpack/releases/v4.9.1) [Compare Source](https://togithub.com/webpack/webpack/compare/v4.9.0...v4.9.1) ### Bugfixes - fix parameter references in default parameters ### Internal changes - change test cases to text format ### [`v4.9.0`](https://togithub.com/webpack/webpack/releases/v4.9.0) [Compare Source](https://togithub.com/webpack/webpack/compare/v4.8.3...v4.9.0) ### Features - `BannerPlugin` supports a function as `banner` option - allow `serve` property in configuration schema - add `entryOnly` option to `DllPlugin` to only expose modules in the entry point - Allow to choose between `webpack-cli` and `webpack-command` - improve error message when JSON parsing fails - allow BOM in JSON - sort `usedIds` in `records` for stablility ### Bugfixes - align module not found error message with node.js - fix behavior of `splitChunks` when request limit has reached (caused suboptimal splitting) - fix handling of RegExp in records (caused absolute path in records) - fix handling of circular chunks (caused missing `__webpack_require__.e`) - `runtimeChunk` is even generated when all modules are moved by `splitChunks` (caused multiple runtime chunks instead of single one) - string ids are no longer recorded (caused duplicate/wrong chunk ids) - fix link to migration guide in error message ### Internal changes - add more typings - Use travis stages - add `many-pages` example ### [`v4.8.3`](https://togithub.com/webpack/webpack/releases/v4.8.3) [Compare Source](https://togithub.com/webpack/webpack/compare/v4.8.2...v4.8.3) ### Bugfixes - fix missing `debug` dependency - support arrays in `output.library.root` ### [`v4.8.2`](https://togithub.com/webpack/webpack/releases/v4.8.2) [Compare Source](https://togithub.com/webpack/webpack/compare/v4.8.1...v4.8.2) ### Bugfixes - WASM parser bugfixes - fix edge case when replacing top-level this in IIFE - avoid parser wasm many times ### [`v4.8.1`](https://togithub.com/webpack/webpack/releases/v4.8.1) [Compare Source](https://togithub.com/webpack/webpack/compare/v4.8.0...v4.8.1) ### Bugfixes - fix some WASM parsing issues ### [`v4.8.0`](https://togithub.com/webpack/webpack/releases/v4.8.0) [Compare Source](https://togithub.com/webpack/webpack/compare/v4.7.0...v4.8.0) ### Features - new WASM pipeline - use `instantiateStreaming` when available - allow circular dependencies between wasm modules (functions only) ### Bugfixes - fix a bug where runtime code for wasm was incorrectly cached - fix a bug where a splitChunks cacheGroup without name wasn't executed ### [`v4.7.0`](https://togithub.com/webpack/webpack/releases/v4.7.0) [Compare Source](https://togithub.com/webpack/webpack/compare/v4.6.0...v4.7.0) ### Features - add webpackIgnore magic comment (`import(/* webpackIgnore: true */ "...")`) to keep the import in the bundle - add chunkGroups to Stats - `chunkGroups` option - `namedChunkGroups` property - `Chunk Group` text output ### Bugfixes - prevent chunk merging for the runtimeChunk - fix a caching issue for concatenated modules - namedModules now handle name conflicts correctly - fix a crash when using `[contenthash:n]` without on-demand-chunks ### Internal changes - testing uses Jest now - testing in node.js 10 too - Performance improvements ### [`v4.6.0`](https://togithub.com/webpack/webpack/releases/v4.6.0) [Compare Source](https://togithub.com/webpack/webpack/compare/v4.5.0...v4.6.0) ### Features - improve stats output alignment - improve stats text output when all exports are used - add `webpackPrefetch`/`webpackPreload` magic comments to `import()` - add `stats.entrypoints[].children` and `stats.entrypoints[].childAssets` to stats json - add prefetched/preloaded chunks and assets to stats text output - Performance improvements ### Bugfixes - Escape chunk ids for `target: "webworker"` - fix `this` to `undefined` ESM replacement in function default values - `new require(...)` is weird, but now behaves like in node.js - fix behavior of `export * from "commonjs"` with partial override - fixed build time output in current locale in stats text output - fixed ChunkModuleIdRangePlugin and add tests - avoid race condition when using the loadModule loader API - fix default value of `output.globalObject` in `target: "node-webkit"` - fix a bug with `loadModules` and dependencies in these modules - fix hot.accept parser plugin to allow defined values as argument - print `unknown size` when size is unknown - fix a bug where some chunks were missing in the "single" runtime chunk - fix cloning of `optimization` configuration ### Internal changes - Set up infrastructure for linting typings with TypeScript ### [`v4.5.0`](https://togithub.com/webpack/webpack/releases/v4.5.0) [Compare Source](https://togithub.com/webpack/webpack/compare/v4.4.1...v4.5.0) ### Features - Performance improvements - Improve readablility of error messages with long loader string ### Bugfixes - Sort child compilations for consistent compilation hash - Fix bug causing all symbols to be renamed when concatenating modules ### Contributing - add `yarn setup` script for bootstrapping local development ### [`v4.4.1`](https://togithub.com/webpack/webpack/releases/v4.4.1) [Compare Source](https://togithub.com/webpack/webpack/compare/v4.4.0...v4.4.1) ### Bugfixes - fix yarn/npm install script on windows ### [`v4.4.0`](https://togithub.com/webpack/webpack/releases/v4.4.0) [Compare Source](https://togithub.com/webpack/webpack/compare/v4.3.0...v4.4.0) ### Features - When webpack-cli is not installed it will ask to install it - `splitChunks.chunks` supports a custom function now - Better warning when omitting `mode` ### Bugfixes - disallow functions for `chunkFilename`, because it's not working - generate correct code when using `export default (function xxx() {})` ### Performance - Performance improvements for sorting by identifier ### [`v4.3.0`](https://togithub.com/webpack/webpack/releases/v4.3.0) [Compare Source](https://togithub.com/webpack/webpack/compare/v4.2.0...v4.3.0) ### Features - add support for `[contenthash]` placeholder ### Bugfixes - `browser` field is used for target `electron-renderer` - set `devtoolNamespace` default correctly when passing an object to `output.library` ### [`v4.2.0`](https://togithub.com/webpack/webpack/releases/v4.2.0) [Compare Source](https://togithub.com/webpack/webpack/compare/v4.1.1...v4.2.0) ### Features - add `splitChunks.automaticNameDelimiter` to configure the name separator for automatic names - `stats.excludeModules` now also accept booleans - webpack throws an error when trying to run in twice at a time - `performance` is disabled by default in non-web targets - AMD parser plugins can now be extended by inheriting ### Bugfixes - Fix a race condition when writing `events.json` in ProfilingPlugin - HMR runtime code is reverted to ES5 style - script timeout is not correctly in seconds - reexporting JSON exports works correctly now - fix a bug when combining ProfilingPlugin with SourceMapDevToolPlugin - add a missing semicolon to the runtime code ### [`v4.1.1`](https://togithub.com/webpack/webpack/releases/v4.1.1) [Compare Source](https://togithub.com/webpack/webpack/compare/v4.1.0...v4.1.1) ### Features - Stats now displays the number of assets of a module ### Bugfixes - `sourceMap` option of the default UglifyJsPlugin now defaults to true when the SourceMapDevToolPlugin is used - `module.assets` is now working again in the Stats - chunk ids are not stringified on target node - `devtoolNamespace` default works now also for arrays passed to `output.library` - Format date with 2 digits in Stats for Build At - fix a bug renaming classes incorrectly - fix a bug where modules ignore the `chunks` option of `optimization.splitChunks` ### [`v4.1.0`](https://togithub.com/webpack/webpack/releases/v4.1.0) [Compare Source](https://togithub.com/webpack/webpack/compare/v4.0.1...v4.1.0) ### Features - add `filename` option to `optimization.splitChunks` to modify the filename template for splitted chunks - allow modules which doesn't emit code into the bundle ### Bugfixes - watchpack updated to 1.5.0 - performance fix for Module Concatenation (v8 bug) - fix using `this.xxx` in `ProvidePlugin` ### [`v4.0.1`](https://togithub.com/webpack/webpack/releases/v4.0.1) [Compare Source](https://togithub.com/webpack/webpack/compare/v4.0.0...v4.0.1) ### Features - add `version` property to webpack exports ### Bugfixes - `import()` with CJS now gives correct exports - Module concatenation bailout messages now point to correct module ### [`v4.0.0`](https://togithub.com/webpack/webpack/releases/v4.0.0) [Compare Source](https://togithub.com/webpack/webpack/compare/v3.12.0...v4.0.0) ### Big changes - Environment - Node.js 4 is no longer supported. Source Code was upgraded to a higher ecmascript version. - Usage - You have to choose (`mode` or `--mode`) between two modes now: production or development - production enables all kind of optimizations to generate optimized bundles - development enables comments and hint for development and enables the eval devtool - production doesn't support watching, development is optimized for fast incremental rebuilds - production also enables module concatenating (Scope Hoisting) - You can configure this in detail with the flags in `optimization.*` (build your custom mode) - `process.env.NODE_ENV` are set to production or development (only in built code, not in config) - There is a hidden `none` mode which disables everything - Syntax - `import()` always returns a namespace object. CommonJS modules are wrapped into the default export - This probably breaks your code, if you used to import CommonJs with `import()` - Configuration - You no longer need to use these plugins: - `NoEmitOnErrorsPlugin` -> `optimization.noEmitOnErrors` (on by default in production mode) - `ModuleConcatenationPlugin` -> `optimization.concatenateModules` (on by default in production mode) - `NamedModulesPlugin` -> `optimization.namedModules` (on by default in develoment mode) - `CommonsChunkPlugin` was removed -> `optimization.splitChunks`, `optimization.runtimeChunk` - JSON - webpack now handles JSON natively - You may need to add `type: "javascript/auto"` when transforming JSON via loader to JS - Just using JSON without loader should still work - allows to import JSON via ESM syntax - unused exports elimination for JSON modules - Optimization - Upgrade uglifyjs-webpack-plugin to v1 - ES15 support ### Big features - Modules - webpack now supports these module types: - javascript/auto: (The default one in webpack 3) Javascript module with all module systems enabled: CommonJS, AMD, ESM - javascript/esm: EcmaScript modules, all other module system are not available - javascript/dynamic: Only CommonJS and, EcmaScript modules are not available - json: JSON data, it's available via require and import - webassembly/experimental: WebAssembly modules (currently experimental) - `javascript/esm` handles ESM more strictly compared to `javascript/auto`: - Imported names need to exist on imported module - Dynamic modules (non-esm, i. e. CommonJs) can only imported via `default` import, everything else (including namespace import) emit errors - In `.mjs` modules are `javascript/esm` by default - WebAssembly modules - can import other modules (JS and WASM) - Exports from WebAssembly modules are validated by ESM import - You'll get a warning/error when trying to import a non-existing export from WASM - can only be used in async chunks. They doesn't work in initial chunks (would be bad for web performance) - Import modules using WASM via `import()` - This is an experimental feature and subject of change - Optimization - `sideEffects: false` is now supported in package.json - `sideEffects` in package.json also supports glob expressions and arrays of glob expressions - Instead of a JSONP function a JSONP array is used -> async script tag support, order no longer matter - New `optimization.splitChunks` option was introduced Details: - Dead branches are now removed by webpack itself - Before: Uglify removed the dead code - Now: webpack removes the dead code (in some cases) - This prevents crashing when `import()` occur in a dead branch - Syntax - `webpackInclude` and `webpackExclude` are supported by the magic comment for `import()`. They allow to filter files when using a dynamic expression. - Using `System.import()` now emits a warning - You can disable the warning with `Rule.parser.system: true` - You can disable `System.import` with `Rule.parser.system: false` - Configuration - Resolving can now be configured with `module.rules[].resolve`. It's merged with the global configuration. - `optimization.minimize` has been added to switch minimizing on/off - By default: on in production mode, off in development mode - `optimization.minimizer` has been added to configurate minimizers and options - Usage - Some Plugin options are now validated - CLI has been move to webpack-cli, you need to install `webpack-cli` to use the CLI - The ProgressPlugin (`--progress`) now displays plugin names - At least for plugins migrated to the new plugin system - Performance - UglifyJs now caches and parallizes by default - Multiple performance improvements, especially for faster incremental rebuilds - performance improvement for RemoveParentModulesPlugin - Stats - Stats can display modules nested in concatenated modules ### Features - Configuration - Module type is automatically choosen for mjs, json and wasm extensions. Other extensions need to be configured via `module.rules[].type` - Incorrect `options.dependencies` configurations now throw error - `sideEffects` can be overriden via module.rules - `output.hashFunction` can now be a Constructor to a custom hash function - You can provide a non-cryto hash function for performance reasons - add `output.globalObject` config option to allow to choose the global object reference in runtime exitCode - Runtime - Error for chunk loading now includes more information and two new properties `type` and `request`. - Devtool - remove comment footer from SourceMaps and eval - add support for `include` `test` and `exclude` to the eval source map devtool plugin - Performance - webpacks AST can be passed directly from loader to webpack to avoid extra parsing - Unused modules are no longer unnecessarly concatenated - Add a ProfilingPlugin which write a (Chrome) profile file which includes timings of plugins - Migrate to using `for of` instead of `forEach` - Migrate to using `Map` and `Set` instead of Objects - Migrate to using `includes` instead of `indexOf` - Replaced some RegExp with string methods - Queue don't enqueues the same job twice - Use faster md4 hash for hashing by default - Optimization - When using more than 25 exports mangled export names are shorter. - script tags are no longer `text/javascript` and `async` as this are the default values (saves a few bytes) - The concatenated module now generates a bit less code - constant replacements now don't need `__webpack_require__` and argument is omitted - Defaults - webpack now looks for the `.wasm`, `.mjs`, `.js` and `.json` extensions in this order - `output.pathinfo` is now on by default in develoment mode - in-memory caching is now off by default in production - `entry` defaults to `./src` - `output.path` defaults to `./dist` - Use `production` defaults when omiting the `mode` option - Usage - Add detailed progress reporting to SourceMapDevToolPlugin - removed plugins now give a useful error message - Stats - Sizes are now shown in kiB instead of kB in Stats - entrypoints are now shows by default in Stats - chunks now display `<{parents}>` `>{children}<` and `={siblings}=` in Stats - add `buildAt` time to stats - stats json now includes the output path - Syntax - A resource query is supported in context - Referencing entry point name in `import()` now emits a error instead of a warning - Upgraded to acorn 5 and support ES 2018 - Plugins - `done` is now an async hook ### Bugfixes - Generated comments no longer break on `*/` - webpack no longer modifies the passed options object - Compiler "watch-run" hook now has the Compiler as first parameter - add `output.chunkCallbackName` to the schema to allow configurating WebWorker template - Using `module.id/loaded` now correctly bails out of Module Concatentation (Scope Hoisting) - OccurenceOrderPlugin now sorts modules in correct order (instead of reversed) - timestamps for files are read from watcher when calling `Watching.invalidate` - fix incorrect `-!` behavior with post loaders - add `run` and `watchRun` hooks for `MultiCompiler` - `this` is now undefined in ESM - VariableDeclaration are correctly identified as `var`, `const` or `let` - Parser now parse the source code with the correct source type (module/script) when the module type `javascript/dynamic` or `javascript/module` is used. - don't crash on missing modules with `buildMeta` of null - add `original-fs` module for electron targets - HMRPlugin can be added to the Compiler outside of `plugins` ### Internal changes - Replaced `plugin` calls with `tap` calls (new plugin system) - Migrated many deprecated plugins to new plugin system API - added `buildMeta.exportsType: "default"` for json modules - Remove unused methods from Parser (parserStringArray, parserCalculatedStringArray) - Remove ability to clear BasicEvaluatedExpression and to have multiple types - Buffer.from instead of new Buffer - Avoid using forEach and use for of instead - Use `neo-async` instead of `async` - Update tapable and enhanced-resolve dependencies to new major versions - Use prettier ### Removed features - removed `module.loaders` - removed `loaderContext.options` - removed `Compilation.notCacheable` flag - removed `NoErrorsPlugin` - removed `Dependency.isEqualResource` - removed `NewWatchingPlugin` - removed `CommonsChunkPlugin` ### Breaking changes for plugins/loaders - new plugin system - `plugin` method is backward-compatible - Plugins should use `Compiler.hooks.xxx.tap(, fn)` now - New major version of enhanced-resolve - Templates for chunks may now generate multiple assets - `Chunk.chunks/parents/blocks` are no longer Arrays. A Set is used internally and there are methods to access it. - `Parser.scope.renames` and `Parser.scope.definitions` are no longer Objects/Arrays, but Map/Sets. - Parser uses `StackedSetMap` (LevelDB-like datastructure) instead of Arrays - `Compiler.options` is no longer set while applying plugins - Harmony Dependencies has changed because of refactoring - `Dependency.getReference()` may now return a `weak` property. `Dependency.weak` is now used by the `Dependency` base class and returned in the base impl of `getReference()` - Constructor arguments changed for all `Module`s - Merged options into options object for `ContextModule` and `resolveDependencies` - Changed and renamed dependencies for \`import() - Moved `Compiler.resolvers` into `Compiler.resolverFactory` accessible with plugins - `Dependency.isEqualResource` has been replaced with `Dependency.getResourceIdentifier` - Methods on `Template` are now static - A new RuntimeTemplate class has been added and `outputOptions` and `requestShortener` has been moved to this class - Many methods has been updated to use the RuntimeTemplate instead - We plan to move code which accesses the runtime to this new class - `Module.meta` has been replaced with `Module.buildMeta` - `Module.buildInfo` and `Module.factoryMeta` have been added - Some properties of `Module` have been moved into the new objects - added `loaderContext.rootContext` which points to the `context` options. Loaders may use it to make stuff relative to the application root. - add `this.hot` flag to loader context when HMR is enabled - `buildMeta.harmony` has been replaced with `buildMeta.exportsType: "namespace` - The chunk graph has changed: - Before: Chunks were connected with parent-child-relationships. - Now: ChunkGroups are connected with parent-child-relationships. ChunkGroups contain Chunks in order. - Before: AsyncDependenciesBlocks reference a list of Chunks in order. - Now: AsyncDependenciesBlocks reference a single ChunkGroup. - file/contextTimestamps are Maps now - `map/foreach` `Chunks/Modules/Parents` methods are now deprecated/removed - NormalModule accept options object in Constructor - Added required generator argument for NormalModule - Added `createGenerator` and `generator` hooks for NormalModuleFactory to customize code generation - Allow to customize render manifest for Chunks via hooks

Renovate configuration

:date: Schedule: "every weekend" in timezone Europe/Paris.

:vertical_traffic_light: Automerge: Disabled by config. Please merge this manually once you are satisfied.

:recycle: Rebasing: Whenever PR is stale, or if you modify the PR title to begin with "rebase!".

:no_bell: Ignore: Close this PR and you won't be reminded about this update again.



This PR has been generated by Renovate Bot. View repository job log here.