This repository was archived by the owner on Jun 19, 2019. It is now read-only.
Update dependency webpack to v4 #20
Open
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
This PR contains the following updates:
^3.5.5->^4.0.0Release Notes
webpack/webpack
v4.34.0Compare Source
Features
Bugfixes
v4.33.0Compare Source
Features
target: "electron-preload"for electron 5target: "web"in electron 5Bugfixes
v4.32.2Compare Source
Bugfixes
v4.32.1Compare Source
Bugfixes
node: false.v4.32.0Compare Source
Features
this.modeto the loader API, to allow loaders to choose defaults bymodesimilar to webpacks optionsimport()now includes the stack from where theimport()was calledBugfixes
const { a, ...rest } = obj, whererestconflicts with an imported binding etc.node: falsenow correctly disables__dirnameand__filenametoo__dirnameand__filenamenow no longer evaluates to something whennode: falseornode.__file/dirname: falseis setif(__dirname !== "")is no longer replaced withif(true)in such scenarios__webpack_public_path__for prefetching tooContribute
v4.31.0Compare Source
Features
errors-warningsstats presetBugfixes
v4.30.0Compare Source
Features
amd: falseto disable AMD supportCompilation.hooks.finishModulesnow also allows async pluginsoutput.libraryTarget: "system"to compile for SystemJs environmentBugfixes
nullid when concatenating an entry module in a different chunkPerformance
Contributing
v4.29.6Compare Source
Bugfixes
__webpack_require__andrequire.onErroris no longer evaluated toundefinedand evaluation is done at runtime instead.thisvalue inmodule.hot.acceptwith imported dependency is correctly preserved.Contributing
npmmodulesv4.29.5Compare Source
Bugfixes
@webassemblyjsto remove git dependencyv4.29.4Compare Source
Bugfixes
@webassemblyjsfor bugfixesv4.29.3Compare Source
Bugfixes
import()context uses__webpack_require__.e, but it is not in the runtimev4.29.2Compare Source
Internal changes
v4.29.1Compare Source
Bugfixes
__esModuleflag when modules are concatenated, but without usage informationv4.29.0Compare Source
Important Note for npm users
This release updates some dependencies, which may trigger a npm bug. See here for the webpack issue. The npm bug has been fixed, but a new npm version has not been released yet.
For workarounds see this comment.
Eventually the fix will be to upgrade npm once the bugfix is released.
Features
output.futureEmitAssetswhich gives the emitting logic of webpack 5v4.28.4Compare Source
Bugfixes
ProfilingPlugincreates output path if not existingoptimization.minimizerrun()failsv4.28.3Compare Source
Bugfixes
v4.28.2Compare Source
Bugfixes
v4.28.1Compare Source
Bugfixes
v4.28.0Compare Source
Features
checkResourcehas an additionalcontextargumentBugfixes
.mjsfiles as it's crashingv4.27.1Compare Source
Bugfixes
splitChunksenforce.v4.27.0Compare Source
Features
getResolvemethod to create their own resolver function with custom optionsBugfixes
export * fromv4.26.1Compare Source
Bugfixes
v4.26.0Compare Source
Features
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 (https://github.com/terser-js/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.minimizersconfiguration option to switch back to uglify-es or provide additional minimize options for terser.v4.25.1Compare Source
Bugfixes
v4.25.0Compare Source
Features
formatoption toDllPluginto allow generating formated manifest jsonProgressPluginto add and remove informationBugfixes
.mjsv4.24.0Compare Source
Features
DefinePlugin.runtimeValue(() => {...}, true)is always evaluatedmoduleargument toDefinePlugin.runtimeValueBugfixes
v4.23.1Compare Source
Bugfixes
return'development'===process.env.NODE_ENV&&'foo'v4.23.0Compare Source
Features
watchModeflag to Compiler to be able to detect watch mode in pluginsremovedFilesproperty to Compiler to detect removed filesBugfixes
@webassemblyjs/*for bugfixInternal changes
v4.22.0Compare Source
Features
&&and||expressionsBugfixes
Performance
v4.21.0Compare Source
Features
output.libraryTarget: "amd-require"which generates a AMDrequire([], ...)wrapper instead of adefine([], ...)wrapperoutput.library, which exposes the library to a subpropertyBugfixes
__webpack_require__.eis used at runtime but is not defined in the bundleglobaltypePerformance
v4.20.2Compare Source
Bugfixes
export defaultin concatenated modulesv4.20.1Compare Source
Bugfixes
libraryTarget: "amd"without library namev4.20.0Compare Source
Bugfixes
Internal changes
v4.19.1Compare Source
Bugfixes
import()withtarget: "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.mjsbrowserfield as object is used when usingtarget: "electron-renderer"export defaultare preservedexternalsvalue, now works correctly as documentedv4.19.0Compare Source
Bugfixes
v4.18.1Compare Source
Bugfixes
v4.18.0Compare Source
Features
v4.17.3Compare Source
Bugfixes
v4.17.2Compare Source
Bugfixes
v4.17.1Compare Source
Bugfixes
export *in a concatenated modulev4.17.0Compare Source
Features
Bugfixes
[contenthash]for js assetsv4.16.5Compare Source
Bugfixes
import()webpack-hot-clientand runtime chunksv4.16.4Compare Source
Bugfixes
chunkAssethook in HotModuleReplacementPluginv4.16.3Compare Source
Bugfixes
require.ensures.v4.16.2Compare Source
Bugfixes
module.requirelikerequiremodule.main.requireandmodule.parent.requirev4.16.1Compare Source
Bugfixes
output.hashDigesthas a more relaxed schemaInternal changes
v4.16.0Compare Source
Features
electron-renderertargetoptimization.moduleIdsandoptimization.chunkIdsoptions to replace other optionsBugfixes
output.library.rootand using a devtoolerr.stackis not setoptimization.splitChunks.maxSizeDependency.locis a string instead of an objectDeprecations
Dependency.comparein favor ofcompareLocationsoptimization.namedModulesis now deprecatedoptimization.hashedModuleIdsis now deprecatedoptimization.namedChunksis now deprecatedoptimization.occurrenceOrderis now deprecatedv4.15.1Compare Source
Bugfixes
v4.15.0Compare Source
Features:
maxSizeoption forsplitChunks(experimental)v4.14.0Compare Source
Features
Compilation.dependencyReferenceto modify the dependency referencesBugfixes
v4.13.0Compare Source
Features
DefinePluginnow supportsruntimeValues to pass computed values with dependencies that can change over timeoptimization.hashedModuleIdsresolve.aliasBugfixes
binfields are usedv4.12.2Compare Source
Bugfixes
v4.12.1Compare Source
Bugfixes
splitChunksimportwithsideEffects: falseDependencyReference[chunkhash]intarget: "webworker"ProfilingPluginInternal changes
lint-stagedv4.12.0Compare Source
Features
Bugfixes
import()when importing a non-ESMv4.11.1Compare Source
Features
optimization.mangleWasmImportsoption to disable mangling of wasm importsBugfixes
v4.11.0Compare Source
Features
reportProgressinafterEmitBugfixes
v4.10.2Compare Source
Bugfixes
nullmodule idsv4.10.1Compare Source
Bugfixes
v4.10.0Compare Source
Features
Symbol.toStringTag"Module"Bugfixes
export * fromare no longer including in the bundlev4.9.2Compare Source
Bugfixes
v4.9.1Compare Source
Bugfixes
Internal changes
v4.9.0Compare Source
Features
BannerPluginsupports a function asbanneroptionserveproperty in configuration schemaentryOnlyoption toDllPluginto only expose modules in the entry pointwebpack-cliandwebpack-commandusedIdsinrecordsfor stablilityBugfixes
splitChunkswhen request limit has reached (caused suboptimal splitting)__webpack_require__.e)runtimeChunkis even generated when all modules are moved bysplitChunks(caused multiple runtime chunks instead of single one)Internal changes
many-pagesexamplev4.8.3Compare Source
Bugfixes
debugdependencyoutput.library.rootv4.8.2Compare Source
Bugfixes
v4.8.1Compare Source
Bugfixes
v4.8.0Compare Source
Features
instantiateStreamingwhen availableBugfixes
v4.7.0Compare Source
Features
import(/* webpackIgnore: true */ "...")) to keep the import in the bundlechunkGroupsoptionnamedChunkGroupspropertyChunk Grouptext outputBugfixes
[contenthash:n]without on-demand-chunksInternal changes
v4.6.0Compare Source
Features
webpackPrefetch/webpackPreloadmagic comments toimport()stats.entrypoints[].childrenandstats.entrypoints[].childAssetsto stats jsonBugfixes
target: "webworker"thistoundefinedESM replacement in function default valuesnew require(...)is weird, but now behaves like in node.jsexport * from "commonjs"with partial overrideoutput.globalObjectintarget: "node-webkit"loadModulesand dependencies in these modulesunknown sizewhen size is unknownoptimizationconfigurationInternal changes
v4.5.0Compare Source
Features
Bugfixes
Contributing
yarn setupscript for bootstrapping local developmentv4.4.1Compare Source
Bugfixes
v4.4.0Compare Source
Features
splitChunks.chunkssupports a custom function nowmodeBugfixes
chunkFilename, because it's not workingexport default (function xxx() {})Performance
v4.3.0Compare Source
Features
[contenthash]placeholderBugfixes
browserfield is used for targetelectron-rendererdevtoolNamespacedefault correctly when passing an object tooutput.libraryv4.2.0Compare Source
Features
splitChunks.automaticNameDelimiterto configure the name separator for automatic namesstats.excludeModulesnow also accept booleansperformanceis disabled by default in non-web targetsBugfixes
events.jsonin ProfilingPluginv4.1.1Compare Source
Features
Bugfixes
sourceMapoption of the default UglifyJsPlugin now defaults to true when the SourceMapDevToolPlugin is usedmodule.assetsis now working again in the StatsdevtoolNamespacedefault works now also for arrays passed tooutput.librarychunksoption ofoptimization.splitChunksv4.1.0Compare Source
Features
filenameoption tooptimization.splitChunksto modify the filename template for splitted chunksBugfixes
this.xxxinProvidePluginv4.0.1Compare Source
Features
versionproperty to webpack exportsBugfixes
import()with CJS now gives correct exportsv4.0.0Compare Source
Big changes
modeor--mode) between two modes now: production or developmentoptimization.*(build your custom mode)process.env.NODE_ENVare set to production or development (only in built code, not in config)nonemode which disables everythingimport()always returns a namespace object. CommonJS modules are wrapped into the default exportimport()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)CommonsChunkPluginwas removed ->optimization.splitChunks,optimization.runtimeChunktype: "javascript/auto"when transforming JSON via loader to JSBig features
javascript/esmhandles ESM more strictly compared tojavascript/auto:defaultimport, everything else (including namespace import) emit errors.mjsmodules arejavascript/esmby defaultimport()sideEffects: falseis now supported in package.jsonsideEffectsin package.json also supports glob expressions and arrays of glob expressionsoptimization.splitChunksoption was introducedDetails: https://gist.github.com/sokra/1522d586b8e5c0f5072d7565c2bee693
import()occur in a dead branchwebpackIncludeandwebpackExcludeare supported by the magic comment forimport(). They allow to filter files when using a dynamic expression.System.import()now emits a warningRule.parser.system: trueSystem.importwithRule.parser.system: falsemodule.rules[].resolve. It's merged with the global configuration.optimization.minimizehas been added to switch minimizing on/offoptimization.minimizerhas been added to configurate minimizers and optionswebpack-clito use the CLI--progress) now displays plugin namesFeatures
module.rules[].typeoptions.dependenciesconfigurations now throw errorsideEffectscan be overriden via module.rulesoutput.hashFunctioncan now be a Constructor to a custom hash functionoutput.globalObjectconfig option to allow to choose the global object reference in runtime exitCodetypeandrequest.includetestandexcludeto the eval source map devtool pluginfor ofinstead offorEachMapandSetinstead of Objectsincludesinstead ofindexOftext/javascriptandasyncas this are the default values (saves a few bytes)__webpack_require__and argument is omitted.wasm,.mjs,.jsand.jsonextensions in this orderoutput.pathinfois now on by default in develoment modeentrydefaults to./srcoutput.pathdefaults to./distproductiondefaults when omiting themodeoption<{parents}>>{children}<and={siblings}=in StatsbuildAttime to statsimport()now emits a error instead of a warningdoneis now an async hookBugfixes
*/output.chunkCallbackNameto the schema to allow configurating WebWorker templatemodule.id/loadednow correctly bails out of Module Concatentation (Scope Hoisting)Watching.invalidate-!behavior with post loadersrunandwatchRunhooks forMultiCompilerthisis now undefined in ESMvar,constorletjavascript/dynamicorjavascript/moduleis used.buildMetaof nulloriginal-fsmodule for electron targetspluginsInternal changes
plugincalls withtapcalls (new plugin system)buildMeta.exportsType: "default"for json modulesneo-asyncinstead ofasyncRemoved features
module.loadersloaderContext.optionsCompilation.notCacheableflagNoErrorsPluginDependency.isEqualResourceNewWatchingPluginCommonsChunkPluginBreaking changes for plugins/loaders
pluginmethod is backward-compatibleCompiler.hooks.xxx.tap(<plugin name>, fn)nowChunk.chunks/parents/blocksare no longer Arrays. A Set is used internally and there are methods to access it.Parser.scope.renamesandParser.scope.definitionsare no longer Objects/Arrays, but Map/Sets.StackedSetMap(LevelDB-like datastructure) instead of ArraysCompiler.optionsis no longer set while applying pluginsDependency.getReference()may now return aweakproperty.Dependency.weakis now used by theDependencybase class and returned in the base impl ofgetReference()ModulesContextModuleandresolveDependenciesCompiler.resolversintoCompiler.resolverFactoryaccessible with pluginsDependency.isEqualResourcehas been replaced withDependency.getResourceIdentifierTemplateare now staticoutputOptionsandrequestShortenerhas been moved to this classModule.metahas been replaced withModule.buildMetaModule.buildInfoandModule.factoryMetahave been addedModulehave been moved into the new objectsloaderContext.rootContextwhich points to thecontextoptions. Loaders may use it to make stuff relative to the application root.this.hotflag to loader context when HMR is enabledbuildMeta.harmonyhas been replaced withbuildMeta.exportsType: "namespacemap/foreachChunks/Modules/Parentsmethods are now deprecated/removedcreateGeneratorandgeneratorhooks for NormalModuleFactory to customize code generationRenovate configuration
📅 Schedule: At any time (no schedule defined).
🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.
♻️ Rebasing: Whenever PR becomes conflicted, or if you modify the PR title to begin with "
rebase!".🔕 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.