Commit Graph

280 Commits

Author SHA1 Message Date
Yury Michurin 8b9fea3790 Set contentHashType to javascript 2019-12-19 12:03:49 +02:00
Yury Michurin 19eb1a99ed Fix issues raised in CR 2019-12-19 12:03:47 +02:00
Yury Michurin f9bd2e20bc Make inner folder entrypoints able to require common chunks 2019-12-19 12:03:45 +02:00
Sergey Melyukov f212d3c30e pr comments 2019-12-03 18:11:46 +03:00
Sergey Melyukov 6b59d113a4 optimize webpack runtime size 2019-12-02 17:59:37 +03:00
Tobias Koppers b65f82e965 upgrade watchpack 2019-11-15 13:53:55 +01:00
Tobias Koppers 2f1a0176b3 rename filesModified -> modifiedFiles
avoid creating additional arrays by allowing Iterable on WatchFileSystem interface
2019-11-15 13:49:15 +01:00
Tobias Koppers a877cd51d1 add presentational dependencies which are cheaper, but allow only templating 2019-10-30 07:49:20 +01:00
Tobias Koppers 6fbbca7756 fix typo 2019-10-29 10:04:18 +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 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 ab0ab1bdd1 Merge tag 'v4.39.1' into next
4.39.1
2019-08-05 13:32:25 +02:00
Tobias Koppers b73d35bbee Merge tag 'v4.39.0' into next
4.39.0
2019-08-05 13:12:09 +02:00
Tobias Koppers 8006117bae make status logging 1 char shorter 2019-08-02 09:45:26 +02:00
Tobias Koppers 0b0e9e9608 fix Progress and Stats Tests for colors and output 2019-08-01 14:04:24 +02:00
Tobias Koppers 8f0a443e6c Colored console for node environment
Status report in logger
ProgressPlugins uses logger
2019-08-01 13:51:18 +02:00
Tobias Koppers c17dfde7a8 Merge tag 'v4.37.0' into next
4.37.0
2019-07-24 10:51:04 +02:00
Tobias Koppers d532c4f24f allow to configure the infrastructure logger
rename includeDebugLogging to loggingDebug
rename logToConsole to createConsoleLogger
2019-07-22 09:22:36 +02:00
Tobias Koppers 955d5689a9 remove experimental from module type name
since there is the `experiments` config now
2019-07-15 15:03:29 +02:00
Tobias Koppers c94073b31c update enhanced-resolve 2019-07-05 00:45:41 +02:00
Tobias Koppers b2e7837288 replace Object.assign with object spread 2019-06-19 13:16:05 +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 e9c0d068dd refactor filesystem interfaces
add Compiler.intermediateFileSystem
avoid using `path` and `fs` module when possible
move `join`, `mkdirp` and `dirname` into utils
join and dirname is optional in FileSystem interface
remove mkdirp from Filesystem interface
2019-06-11 17:32:58 +02:00
Tobias Koppers de61023616 add side-by-side wasm support based on async modules
type: "webassembly/async-experimental"
remove i64 importing limitation since it will have BigInt integration eventually
update wasm example
2019-06-04 23:28:56 +02:00
Tobias Koppers b5e4c1f52c
Merge pull request #9169 from webpack/feature/no-js-chunks
don't emit and load JS files for chunks without JS modules
2019-05-22 14:13:51 +02:00
Tobias Koppers c5f94f3b6a don't emit and load JS files for chunks without JS modules
allow custom module types in rules
allow configCases to access stats
2019-05-22 13:12:15 +02:00
Tobias Koppers 2be9ca9431 rename incorrectly named file 2019-05-22 13:11:48 +02:00
Tobias Koppers 4492c30ac4 Update watching system to report more timing info to webpack
Add snapshotting feature to FileSystemInfo for better performance
2019-01-09 14:42:54 +01:00
Tobias Koppers 31f2e6d1f7 watch missing items as files not as directories 2019-01-08 15:14:36 +01:00
Steven Hargrove b9f52dcb4d hoist option logic, reduce code paths in handler 2019-01-04 12:40:17 -05: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 1374757006 remove ModuleReason
remove HotUpdateChunkTemplate
move compareLocations into comparators
re-enable NodeSourcePlugin for `.mjs`
2018-12-20 16:38:26 +01:00
Tobias Koppers 1b402bcae1 Merge tag 'v4.28.0' into next
4.28.0
2018-12-19 14:05:17 +01:00
Isiah Meadows 18d7396835 Remove a broken hook 2018-12-17 01:23:03 -05:00
Florent Cailhol 3c50dba922 Remove global buildin 2018-12-07 08:59:41 +01:00
Florent Cailhol 002128c288 Do not polyfill node bindings by default 2018-12-07 08:58:26 +01:00
Tobias Koppers 5c7d6d2db6 change ensureHandlers from array to object 2018-11-29 16:23:36 +01:00
Tobias Koppers 8066eaf299 put runtime modules into separate place in chunks
don't include them in modules array/object
better stats output for runtime moduels
2018-11-29 16:23:31 +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
Tobias Koppers 2857ad3ee4 runtime module for getChunkFilename 2018-11-29 16:15:26 +01:00
Florent Cailhol 8a10ea3c92 Type 'apply' method of plugins 2018-11-12 14:26:31 +01:00
Tobias Koppers eb28697419 move magic property names on __webpack_require__ into RuntimeGlobals file 2018-11-05 15:28:34 +01:00
Tobias Koppers 4f813e28a9 remove customizability of __webpack_require__ function name 2018-11-05 13:13:05 +01:00
Tobias Koppers 31e189fcde Merge tag 'v4.24.0' into next
4.24.0
2018-11-02 18:02:39 +01:00
Florent Cailhol 2a440fe925 Update development tools 2018-11-02 11:04:02 +01:00
Tobias Koppers d9a0d3a139 Merge tag 'v4.23.0' into next
4.23.0
2018-10-24 20:10:30 +02:00
Lex Alexander 2cdf04e14b feat(Compiler): Add file removal tracking in watch-run
-Closes 5072.
2018-10-18 15:58:58 -07:00
Tobias Koppers 19d60ba0cd Merge tag 'v4.19.1' into next
4.19.1
2018-09-18 10:13:54 +02:00
Tobias Koppers 97ed999aad Merge tag 'v4.19.0' into next
4.19.0

* Separate context for renderBoostrap and hooks
* Remove ModuleTemplate from MainTemplate.bootstrap hook
2018-09-15 13:10:58 +02:00
OJ Kwon 2df7b0c1cf
fix(nodemaintemplate): resolve async chunk path platform agnostic 2018-09-14 11:22:08 -07:00
Tobias Koppers 13b2cdd5ae hash content of bootstrap code
instead of trying to calculate it
from inputs

fixes #8027
fixes #7984
2018-09-13 23:25:26 +02:00
Florent Cailhol f75027475b Move HMR hotBoostrap hook 2018-09-07 14:14:10 +02:00
Tobias Koppers 6d5310fbd6 allow multiple entryModules per chunk
allow to specify ChunkGroup to depend on
move entry modules into ChunkGraph
2018-08-15 11:51:16 +02: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 11e127d162 pass moduleGraph along with multiple methods 2018-08-02 17:54:42 +02:00
Tobias Koppers ec1329a7d4 make libIdent required
add types
2018-08-02 16:29:20 +02:00
Tobias Koppers c9eb4c8e01 Merge tag 'v4.16.4' into next
4.16.4
2018-08-02 16:00:39 +02:00
Florent Cailhol 20406a4295 Update ESLint 2018-07-31 11:43:07 +02:00
Tobias Koppers 691a5b24b7 simplify addExpression 2018-07-30 22:39:30 +02:00
Florent Cailhol a19a0ebaa6 Refactor ProvidedDependency to avoid duplication 2018-07-30 22:38:28 +02:00
Florent Cailhol c545a02ba6 Convert NodeStuffPlugin 2018-07-30 22:37:34 +02:00
Florent Cailhol 9b7d9eb96f Fix review comments 2018-07-30 22:36:06 +02:00
Florent Cailhol f6a5053fb2 Add a way to inject provided modules 2018-07-30 22:35:52 +02:00
Tobias Koppers cf5f1d723c format existing code 2018-07-30 21:29:21 +02:00
Tobias Koppers 2b14ddc984 Merge tag 'v4.16.0' into next
4.16.0
2018-07-11 11:13:47 +02:00
Tobias Koppers 559cf94edb Simplify imports 2018-07-09 15:09:00 +02:00
Tobias Koppers 0a06f19fd8 Merge tag 'v4.15.0' into next
4.15.0
2018-07-04 22:19:50 +02:00
Florent Cailhol 5bc6b8d50e Rename ParserHelpers into JavascriptParserHelpers 2018-07-03 14:08:43 +02:00
Florent Cailhol 6097c5f993 Destructure parser helpers 2018-07-03 14:08:43 +02:00
Tobias Koppers ad8f496745 arrow functions, remove or improve eslint-disable comments 2018-06-27 13:48:13 +02:00
Tobias Koppers 8e3be48da4 allow to disable wasm import mangle
disable it by default (temporary)
2018-06-05 23:49:02 +02:00
Florent Cailhol 2a9452e51b Add brackets for multiline if/for statements 2018-05-29 15:45:44 +02:00
Tobias Koppers 4702ee9016 Use compile/compileStreaming when importObject is a Promise 2018-04-30 08:35:06 +02:00
Tobias Koppers b72e363f03 formatting for output code, nitpicks 2018-04-28 09:57:21 +02:00
Tobias Koppers 9156be961d rename and move BaseWasmMainTemplatePlugin
align usage with other plugins
2018-04-27 19:02:02 +02:00
Tobias Koppers 82a71be1dc Cleanup, refactoring, types 2018-04-27 18:53:07 +02:00
Tobias Koppers f876564b84 Merge branch 'master' into feat-rewrite-wasm
# Conflicts:
#	test/statsCases/aggressive-splitting-entry/expected.txt
#	test/statsCases/aggressive-splitting-on-demand/expected.txt
#	test/statsCases/chunks-development/expected.txt
#	test/statsCases/chunks/expected.txt
#	test/statsCases/import-context-filter/expected.txt
#	test/statsCases/import-weak/expected.txt
#	test/statsCases/limit-chunk-count-plugin/expected.txt
#	test/statsCases/module-assets/expected.txt
#	test/statsCases/named-chunks-plugin-async/expected.txt
#	test/statsCases/optimize-chunks/expected.txt
#	test/statsCases/preset-detailed/expected.txt
#	test/statsCases/preset-normal/expected.txt
#	test/statsCases/preset-verbose/expected.txt
#	test/statsCases/scope-hoisting-bailouts/expected.txt
#	test/statsCases/scope-hoisting-multi/expected.txt
#	yarn.lock
2018-04-27 15:39:12 +02:00
Mohsen Azimi 42698d61e2
wat? 2018-04-08 10:26:04 -07:00
Mohsen Azimi 2ba7596eac
Pass file name as part of options hash to vm.runInThisContext 2018-04-08 09:47:30 -07:00
Sven SAULEAU 6f5560c5d5
Merge remote-tracking branch 'upstream/master' into feat-rewrite-wasm 2018-03-29 13:53:46 +02:00
Sven SAULEAU ee6b5d434c
style: fix indentation 2018-03-29 13:40:27 +02:00
Sven SAULEAU 0476eb4499
Merge branch 'master' into feat-rewrite-wasm 2018-03-29 12:35:48 +02:00
Florent Cailhol f1092ad516 Update prettier toolchain 2018-03-26 16:56:10 +02:00
Tobias Koppers 296542ed79 add [contenthash] support 2018-03-24 12:08:36 +01:00
Florent Cailhol 3983803d30 Destructure 'require' to improve readability 2018-03-22 12:05:58 +01:00
Sven SAULEAU 405fea6719
refactor: move specific stuff out of the base method 2018-03-14 19:05:05 +01:00
Fernando Montoya 10ffa3ebfb Merge branch 'master' into feat-rewrite-wasm 2018-03-14 18:50:33 +01:00
Sven SAULEAU c2f1c4f123
refactor: use base plugin for web and node 2018-03-14 16:13:03 +01:00
Sven SAULEAU 856695a1fd
refactor: use web wasm plugin for node 2018-03-14 15:02:09 +01:00
Florent Cailhol f9e7a17666 Escape module names 2018-03-06 09:24:07 +01:00
Josh Soref 581069bb56 spelling: uncaught 2018-02-26 02:50:05 +00:00
Josh Soref b39266121a spelling: assembly 2018-02-26 02:25:03 +00:00
Tobias Koppers f32bd41c52 fix linting 2018-02-25 02:15:37 +01:00
Tobias Koppers 5238159d21 run prettier on existing code 2018-02-25 02:00:20 +01:00
Tobias Koppers edd8daf1d7 Merge branch 'master' into next
# Conflicts:
#	lib/optimize/ConcatenatedModule.js
#	package.json
#	yarn.lock
2018-02-09 17:04:33 +01:00