Tobias Koppers
1be6dc1dcb
Merge pull request #10286 from smelukov/inner-graph-decouple-parser-state
...
decouple inner-graph and parser state
2020-01-22 10:03:39 +01:00
Sergey Melyukov
533d7fced7
fix pr comments
2020-01-21 20:50:27 +03:00
Sergey Melyukov
5613a38bb1
decouple inner-graph and parser state
2020-01-21 17:36:22 +03:00
Tobias Koppers
e18e72b294
remove Array.prototype.reduce calls to simplify code
2020-01-18 16:37:06 +01:00
Tobias Koppers
b53a128513
provide better error message when a export name was not found
2020-01-15 22:44:06 +01:00
Tobias Koppers
0e2b4f5b93
Merge pull request #10196 from webpack/bugfix/10194
...
generate await code for import without await too
2019-12-30 21:14:18 +01:00
Tobias Koppers
bbace17380
generate await code for import without await too
...
fixes #10194
2019-12-30 20:34:36 +01:00
Tobias Koppers
4453c9632c
make order of exports determinism for hashing
...
fixes #10174
2019-12-27 21:31:41 +01:00
Tobias Koppers
26231576a8
fix parsing of requires in requires
2019-12-23 17:43:41 +01:00
Tobias Koppers
853ec50b57
bugfixes
...
allow mangle even if object prototype export names are used
prevent mangling for object prototype export names in CommonJS
only treat Object.defineProperty for top-level this as export
replace Object.defineProperty correctly when value is in brakets
2019-12-21 20:32:25 +01:00
Tobias Koppers
d16abb3294
detect cycles during this.loadModule from loader
...
fix #10152
2019-12-20 12:50:55 +01:00
Sergey Melyukov
05abeee20a
pr comments
2019-12-18 16:36:19 +03:00
Tobias Koppers
3b4a7455df
use parser state instead of module to store harmony/dynamic exports state
...
this is important for incremental build
2019-12-07 01:04:38 +01:00
Tobias Koppers
404e0f7c77
handle Object.defineProperty
2019-12-06 11:20:32 +01:00
Tobias Koppers
d9a2b7997a
refactor dynamic and harmony exports parser state
...
bailout when using AMD define
2019-12-06 11:13:15 +01:00
Tobias Koppers
66d7ebd9a8
fix Errors for require.parent/main.require
2019-12-06 11:13:13 +01:00
Tobias Koppers
782e4535ac
Refactor how exportsType work
...
add flagged exportsType for __esModule flagged
add getExportsType to merge strict with exportsType
move CommonJsStuffPlugin into CommonJsPlugin
split CommonJsPlugin into imports and exports part
enable minimal tree shaking for CommonJs imports and exports
2019-12-06 11:13:08 +01:00
Tobias Koppers
ae261ed4c1
move default object redirect logic into separate meta property
2019-12-06 11:12:26 +01:00
Tobias Koppers
ab8a768cac
remove module.id and loaded shortcuts and only include them when used
2019-12-06 11:09:43 +01:00
Sergey Melyukov
ba306b6f2c
Merge remote-tracking branch 'upstream/master' into optimize-webpack-runtime-size
2019-12-02 19:54:21 +03:00
Sergey Melyukov
6b59d113a4
optimize webpack runtime size
2019-12-02 17:59:37 +03:00
Tobias Koppers
5a01ed8121
rename exportsType named to default
...
exportsType default doesn't include named exports in strict esm
2019-11-20 12:43:53 +01:00
Tobias Koppers
cda629eaac
add missing runtime requirement for async module header
...
active async modules when top level await is used
2019-11-19 13:11:23 +01:00
Tobias Koppers
eeafeee32a
Merge pull request #9950 from webpack/dependabot/npm_and_yarn/prettier-1.19.1
...
chore(deps-dev): bump prettier from 1.18.2 to 1.19.1
2019-11-15 12:05:46 +01:00
Tobias Koppers
497b65e122
run prettier
2019-11-15 10:56:01 +01:00
Tobias Koppers
ed81ad0fa4
allocate warnings and errors arrays only when needed
2019-11-10 21:05:16 +01:00
Tobias Koppers
84b6817f60
consistency and bugfixes for reexporting json
2019-11-05 10:39:12 +01:00
Tobias Koppers
2f2125b4d1
add redirecting support to create correct exports info for exportsType=named
2019-11-05 10:38:02 +01:00
Tobias Koppers
14ee25cd0a
add support for tree-shaking JSON modules
2019-11-05 10:37:59 +01:00
Tobias Koppers
09d182132a
rename reference exports constants
2019-10-30 07:57:55 +01:00
Tobias Koppers
6b352c244a
make RequireIncludeDeprecationWarning serialize-able
2019-10-30 07:49:24 +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
8696017c55
add Dependency.getReferencedExports
...
remove Dependency.getReference
remove DependencyReference
2019-10-30 07:48:37 +01:00
Tobias Koppers
efe3a81325
remove sourceOrder from DependencyReference
2019-10-30 07:48:35 +01:00
Tobias Koppers
8d46b21fad
add Dependency.getCondition and conditional ModuleGraphConnections
...
getDependencyReference is no longer used to check of connection
2019-10-30 07:48:32 +01:00
Tobias Koppers
e1d1ab7d3b
no need to serialize weak as already in super class
2019-10-30 07:48:28 +01:00
Tobias Koppers
09d6301712
Move weak flag from DependencyReference to Dependency
2019-10-30 07:48:26 +01:00
Tobias Koppers
46fec5e252
emit a warning when require.include is used
2019-10-22 10:17:34 +02:00
Tobias Koppers
acff6ec992
move BasicEvaluatedExpression and JavascriptParserHelpers to javascript directory
2019-10-22 09:27:52 +02:00
evilebottnawi
8198ffb3e6
refactor: code
2019-10-22 00:14:05 +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
f434b1325e
avoid rewriting source from "module.exports"
...
this ensures backward-compat for plugins that
rewrite `module._source` after a simple module
is already parsed and dependencies point to
ranges in the old source.
2019-10-07 11:16:38 +02:00
Tobias Koppers
a5b3177fc0
conditional import specifiers do not generate import statements when exports are unused
2019-09-06 14:49:05 +02:00
Tobias Koppers
41a6f2af1a
fix PureExpressionDependency bug
2019-09-04 09:57:55 +02:00
Tobias Koppers
2e37731988
add analysis for top level symbols, exports and imports
...
integrates the work of Vincent Chan for GSoC 2018
Co-authored-by: Vincent Chan <cdzos97@gmail.com>
2019-09-03 14:18:40 +02:00
Tobias Koppers
ce41cdc29e
add `__webpack_exports_info__.usedExports` to get a list of used exports
2019-09-03 14:18:13 +02:00
Tobias Koppers
ab169893a1
refactor Parser to allow variable tagging
...
use variable tagging in harmony pluging (instead of magic renaming)
Parser no longer calls hooks.expression for x in `x = ...`, hooks.pattern is called instead
remove rootName argument from hooks.expressionMemberChain and hooks.callMemberChain
2019-09-03 14:17:46 +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
f68bb833d2
Merge export getters in a module into single statement
2019-08-23 14:07:01 +02:00
Tobias Koppers
0bce5fd8d5
detect ASI and generate more efficient code when no semicolon need to be inserted
2019-08-22 23:03:38 +02:00