Tobias Koppers
23d230bdf9
move chunk loading into separate plugins
2020-08-28 10:58:03 +02:00
Tobias Koppers
b66599ea58
move ArrayPushCallbackChunkFormat into separate plugin
2020-08-28 10:57:58 +02:00
Tobias Koppers
709e3f1788
remove unused code
2020-08-19 15:08:34 +02:00
chenxsan
fd19fa90b8
add output.charset option
2020-08-17 20:25:27 +08:00
Tobias Koppers
e16bdfda6c
refactor used exports analysis, hashing, code generation, optimizations
...
to keep track of runtimes, used exports depending on runtime
modules can have different hashes and generated code depending on runtime
chunks are only considered as equal for MergeDuplicateChunks and SplitChunks when exports used in contained modules are equal
added `optimization.usedExports: "global"` to opt-out from used exports analysis per runtime
added `splitChunks.usedExports` and `splitChunks.cacheGroups[x].usedExports` to enable/disable used exports comparing for modules
`splitChunks.usedExports` defaults to `true` in production
2020-07-27 22:40:44 +02:00
Tobias Koppers
204e104bc2
Merge pull request #11084 from smelukov/rename-json-script-type
...
rename jsonScriptType to scriptType
2020-06-29 14:34:21 +02:00
Tobias Koppers
8ca593e718
only use chunks with js for entry deferring code
2020-06-24 23:07:17 +02:00
Sergey Melyukov
139da61b5f
rename jsonScriptType to scriptType
2020-06-24 23:05:21 +03:00
Tobias Koppers
531f7b47f6
move script loading into separate runtime module
...
attach to existing script tags
2020-06-04 03:01:22 +02:00
Tobias Koppers
b9c50fdb09
fix jsdoc documentations
2020-04-28 19:42:58 +02:00
Tobias Koppers
edecce586b
handle dependOn at start of buildChunkGraph
...
handle jsonp chunk loading correctly for child entrypoints
add error message for incorrect dependOn
2020-02-11 09:12:13 +01:00
Tobias Koppers
6b9d510612
refactor chunk prefetching/preloading into separate plugin and runtime modules
2019-12-19 12:01:46 +01:00
Sergey Melyukov
faf784b6ab
refactor hop runtime helper
2019-12-03 16:27:39 +03:00
Sergey Melyukov
6b59d113a4
optimize webpack runtime size
2019-12-02 17:59:37 +03:00
Tobias Koppers
18899d2d69
fix problem with retrying import()
2019-10-29 10:25:44 +01:00
evilebottnawi
8198ffb3e6
refactor: code
2019-10-22 00:14:05 +02:00
Tobias Koppers
ecbcdf527f
apply chunk template modifications only to non-runtime chunks
2019-10-09 15:55:21 +02:00
Tobias Koppers
ddc3dae0e6
refactor Module.source() and Module.getRuntimeRequirements() into Module.codeGeneration
...
add code generation phase to Compilation
add `output.iife` options to remove iife wrapper
add `experiments.outputModule` which enabled `output.module`
add `output.module` which sets defaults to `output.iife: false`, `output.libraryTarget: "module"`, `output.jsonpScriptType: "module"`, `terserOptions.module: true`
add `output.module` example
improve runtime requirements needed by ConcatenatedModule
add entry inlining, which inlines entry module code into runtime scope (only when safe)
make whole bundle strict when all modules are strict
2019-10-08 23:59:48 +02:00
Tobias Koppers
53f68c9e7b
update deprecated usage of chunk and main templates
2019-10-08 23:46:33 +02:00
Tobias Koppers
f45ba2408e
remove items from runtime when unneeded
...
remove some hooks from MainTemplate, move some hooks to CompatRuntimeModule
add requireScope RuntimeGlobal
2019-10-08 23:46:23 +02:00
Tobias Koppers
e507392094
add output.ecmaVersion options to set emitted code style
...
fix a bug with prefetching initial chunks
InitFragments have get[End]Content methods which get a sourceContext
RuntimeModules have implicit chunk and compilation
changed default to `output.ecmaVersion: 2015`
2019-08-26 21:32:29 +02:00
Tobias Koppers
6db94536ad
Merge tag 'v4.34.0' into next
...
4.34.0
2019-06-13 10:51:12 +02:00
Tobias Koppers
abc825d58f
Merge tag 'v4.32.0' into next
...
4.32.0
2019-05-20 14:46:31 +02:00
Florent Cailhol
b12f24d20c
Update hook types
2019-05-10 09:52:22 +02:00
Tobias Koppers
f446bf8a9b
add ability to load dependent chunks for non-web targets
...
This allows to use `splitChunks` for initial chunks in i. e. node and webworker targets
2018-12-29 12:48:59 +01:00
Tobias Koppers
9d91861592
Refactor HMR for runtime modules
...
fixed a few HMR bugs
allow other module types for HMR
made HMR more flexible
2018-11-29 16:22:29 +01:00
Tobias Koppers
fa0ec849bd
replace renderCurrentHash with RuntimeGlobals.getFullHash
2018-11-29 16:19:22 +01:00
Tobias Koppers
f753f92c28
ensureChunk to RuntimeModule
...
step 1: non HMR cases
2018-11-29 16:16:39 +01:00
Florent Cailhol
8a10ea3c92
Type 'apply' method of plugins
2018-11-12 14:26:31 +01:00
Tobias Koppers
3cf01999b5
add ChunkGraph
...
move chunk modules and module chunks into the ChunkGraph
remove outdated unit tests
2018-08-14 15:32:13 +02:00
Tobias Koppers
cf5f1d723c
format existing code
2018-07-30 21:29:21 +02:00
Tobias Koppers
5238159d21
run prettier on existing code
2018-02-25 02:00:20 +01:00
Florent Cailhol
7dd41b55c6
Replace deprecated Tapable#apply by Plugin#apply
2017-12-20 11:53:56 +01:00
Florent Cailhol
36c690d37f
Use tapable instead of 'plugin'
2017-12-08 14:23:31 +01:00
Tobias Koppers
00f2b5ede7
advanced module type refactoring
...
added json type
.mjs default to javascript/esm type
adjusted parser plugins to react on module type
2017-11-11 19:27:19 +01:00