v5.0.0-beta.4
Pre-release
Pre-release
Features
- add
dependencies
to ProgressPlugin, enabled by default - add support for
npm fund
Persistent Caching
- make SourceMap and source names in NormalModule context-independent
- upgrade webpack-sources
- use only public methods for serialization
- add caching support for SourceMapDevToolPlugin (all non eval based
source-map
devtools)
Bugfixes
- different resolve options are not cached separately
- fix throttling of ProgressPlugin output
Performance
- resolver cache respects
resolve.cacheWithContext
now, which defaults to false - merge concurrent resolve request in cache
- newly created file system snapshots are considered as valid now
- avoid creating arrays in ModuleGraph getConnections
- allocate lazily:
- ModuleGraphConnection.explanations
- ChunkGraphModule.entryInChunks, ChunkGraphModule.runtimeInChunks
- Module.warnings, Module.errors
- NormalModule._sourceSizes, NormalModule.presentationalDependencies
- Module.factoryMeta
- ModuleGraphModule.outgoingConnections
- omit unneeded process.nextTicks
- remove return value of ChunkGraph.connectChunkAndModule to skip check
- upgrade webpack-sources
- cache utf-8 to buffer conversions and reverse
- cache string to json conversions and reverse
- ProgressPlugin
- fix throttling of output
- AsyncQueue
- use
setImmediate
instead ofprocess.nextTick
to schedule the next task- This keeps event loop spinning and improved build speed
- use
- hoist some expressions/RegExps
Persistent Caching
- nested plain object are (de)serialize in one pass
- print warning when big strings are serialized
- upgrade webpack-sources
- avoid serializing strings, prefer Buffers
- allow lazy stringified etags for identity check for memory cache