Tobias Koppers
e1b5a78a24
add optimization.sideEffects: "flag" and use this by default
...
analysing for side effects cause unnecessary changes in parent modules and we want to avoid that in development
2020-10-27 06:50:07 +01:00
Tobias Koppers
0a8529fcb1
fix undetected module references
2020-10-20 13:50:32 +02:00
Karlis Gangis
95eabe47ec
fix: handle star import name collisions in module concatenation
2020-10-20 13:50:56 +03:00
Tobias Koppers
b3c73a543b
fix runtime-specific handling in concatenated modules
2020-10-16 11:47:30 +02:00
Tobias Koppers
2888c8a406
Revert "fix unused modules in chunk when optimizing runtime-specific "
2020-10-15 20:17:26 +02:00
Tobias Koppers
11935a9141
Merge pull request #11703 from webpack/bugfix/11678
...
fix infinite loop in inner graph optimization
2020-10-15 14:33:48 +02:00
Tobias Koppers
b6bc2730b9
fix infinite loop in inner graph optimization
...
fixes #11678
2020-10-15 13:24:40 +02:00
Tobias Koppers
5d9d9b90fb
fix runtime-specific handling in concatenated modules
2020-10-15 10:18:41 +02:00
Tobias Koppers
c00f65bc40
follow reexport in concatenated modules even if they are skipped due to side effects
...
fixes #11662
2020-10-13 10:01:54 +02:00
Tobias Koppers
bbe12305d6
Merge pull request #11628 from webpack/bugfix/real-content-hash
...
emit error instead of crashing when unexpected problem occurs
2020-10-10 22:06:40 +02:00
Tobias Koppers
47097196bd
skip connections copied to concatenated module
...
fixes #11617
2020-10-10 01:14:00 +02:00
Tobias Koppers
a8fb45d242
fixes crash in SideEffectsFlagPlugin
...
fixes #11615
2020-10-09 23:15:35 +02:00
Tobias Koppers
84b196d32d
emit error instead of crashing when unexpected problem occurs
2020-10-09 09:14:34 +02:00
Tobias Koppers
e7a18705c7
fix crash when using shared with runtimeChunk
2020-10-08 00:28:30 +02:00
Tobias Koppers
18c20d6327
Merge pull request #11582 from webpack/update-schema-utils
...
chore(deps): update `schema-utils`
2020-10-07 10:30:11 +02:00
Tobias Koppers
8e562aa260
fix some nitpicks with active state
2020-10-07 09:36:41 +02:00
Tobias Koppers
7948cb29df
don't touch not provided exports as they could be on the prototype
...
fix #11580
2020-10-06 15:38:17 +02:00
Tobias Koppers
fcca1d649d
analyse source code for side effects
...
mark the module as side effects free in such cases
allow 3rd state TRANSITIVE_ONLY to be side-effect-free but dependencies should still be included (for mini-css-extract-plugin)
2020-10-06 14:10:29 +02:00
Tobias Koppers
146670b3bd
fix splitChunks error message bug
2020-10-06 11:11:10 +02:00
evilebottnawi
8c19efb7fd
chore(deps): update `schema-utils`
2020-10-05 21:58:54 +03:00
Tobias Koppers
51b6e9c4d7
fix delete in concatenated module
2020-09-29 22:12:42 +02:00
Tobias Koppers
68f0dbe748
allow plugins to modify the default size types for splitChunks
2020-09-29 14:34:59 +02:00
Tobias Koppers
5807e6c4db
when splitChunks entry violates minSize or minRemainingSize retry without offending modules
...
fixes #11513
2020-09-25 16:16:05 +02:00
Tobias Koppers
ea7af1df11
allow to move modules to parent chunks
2020-09-25 10:51:13 +02:00
Tobias Koppers
e0b10e9935
fix caching bug in RealContentHashPlugin
2020-09-16 11:12:41 +02:00
Tobias Koppers
eddd3206dc
add raw export for named reexport from non-harmony
2020-09-15 12:36:29 +02:00
Tobias Koppers
277d4b1b67
handle export mangling in concatenated modules
2020-09-15 12:36:23 +02:00
Tobias Koppers
9af66ff9af
revert to registering the namespace export because we need to know this early
2020-09-15 12:36:16 +02:00
Tobias Koppers
39e1a7e4c7
move magic names to constants in ConcatenationScope
...
improve types
2020-09-15 12:36:06 +02:00
Tobias Koppers
9af1d7526b
refactor module concatenation to address discovered bugs/edge cases
2020-09-15 12:36:02 +02:00
Tobias Koppers
23e91dbbac
move module concatenation bailout checks to Module and for NormalModule to Generator
2020-09-15 12:35:59 +02:00
Tobias Koppers
b58393fce0
fix optimization bailout for HMR dependencies
2020-09-15 12:35:58 +02:00
Tobias Koppers
9941a8a497
create root reexports based on export mappings instead of dependencies
2020-09-15 12:35:55 +02:00
Tobias Koppers
5560415856
create root exports based on export mappings instead of dependencies
2020-09-15 12:35:46 +02:00
Tobias Koppers
91cc17b438
register exports in DependencyTemplates
2020-09-15 12:35:38 +02:00
Tobias Koppers
21e202eb24
move concatenation logic to HarmonyImportSpecifierDependency
2020-09-15 12:35:30 +02:00
Tobias Koppers
fc551fa6f3
move concatenation logic to HarmonyExportExpressionDependency
2020-09-15 12:35:21 +02:00
Tobias Koppers
47344e7e77
move concatenation logic to HarmonyExportSpecifierDependency and HarmonyExportImportedSpecifierDependency
2020-09-15 12:35:13 +02:00
Tobias Koppers
04dde38b4c
move concatenation logic to HarmonyImportSideEffectDependency
2020-09-15 12:35:03 +02:00
Tobias Koppers
fdd4a7713f
add ConcatenationScope
2020-09-15 12:34:50 +02:00
Tobias Koppers
ed06a7f83a
new Worker() support
...
add support for async anonymous entrypoints from inside the codebase
add worker example
move entry options into Entrypoint and receive them from there
2020-09-08 07:37:20 +02:00
Ivan Kopeykin
a3fc25cadb
refactor asiSafe flag in dependencies
2020-08-29 17:00:03 +03:00
Ivan Kopeykin
35c56e67ae
refactor how asi handled
...
- add asiSafeExpression helper for JavascriptParser
- use asiSafe flag in DefinePlugin
- try to use (...) instead of Object()
2020-08-28 19:46:56 +03:00
Tobias Koppers
c0249af6d1
Merge pull request #11370 from webpack/feature/javascript-parser-improvement
...
use bitmask instead of array+set in getMemberExpressionInfo
2020-08-28 10:08:22 +02:00
Tobias Koppers
49d9ec5625
cleanup public api and expose JavascriptParser
2020-08-28 01:46:14 +02:00
Tobias Koppers
cee47dc867
Store cache dependencies inside of Snapshot to reduce cache size
2020-08-24 18:16:54 +02:00
Tobias Koppers
49a28a73cf
accept Source-like objects in assets and cache sources for RealContentHashPlugin
2020-08-20 09:54:59 +02:00
Tobias Koppers
64ceeabeae
fixes #11337
2020-08-19 14:45:55 +02:00
Tobias Koppers
b13fe97801
fix edgecase without any hash used
2020-08-19 11:37:17 +02:00
Tobias Koppers
e3fcabd6f6
add caching to RealContentHashPlugin
2020-08-19 11:25:53 +02:00
Tobias Koppers
2748077a4d
bugfixes
2020-08-19 09:46:41 +02:00
Tobias Koppers
b929d4cdce
calculate real content hash for assets after asset processing
2020-08-18 22:07:24 +02:00
Tobias Koppers
71cf7f4dc8
add support for reexporting in CommonJS
...
and necessary refactoring + fixes for that
2020-08-17 21:32:47 +02:00
Tobias Koppers
9676693fa3
splitChunks performance improvement
2020-08-14 10:47:37 +02:00
Tobias Koppers
8b91b6c508
use target info to implement side effects plugin
2020-08-12 23:20:45 +02:00
Tobias Koppers
163e7674a0
track the target binding of harmony reexports
...
display target binding in module info header
check conflicting star exports (fixes #7562 ) when statically known
2020-08-11 20:13:01 +02:00
Ivan Kopeykin
4fc44a3398
add more types
2020-08-02 23:47:54 +03:00
Tobias Koppers
9e81495f7b
add useful error messages for runtime and dependsOn
2020-08-01 06:43:16 +02:00
Tobias Koppers
4c3216efad
add size optimization mode to `optimization.mangleExports`
2020-07-31 12:54:38 +02:00
Tobias Koppers
a4f17775b1
fix dependOn behavior with runtimes, fix runtime passing by entry
2020-07-30 11:18:09 +02:00
Tobias Koppers
1027268fab
bugfixes
2020-07-28 10:13:34 +02:00
Tobias Koppers
6e7e145107
linting
2020-07-27 22:59:56 +02:00
Tobias Koppers
1265765141
polish, types
2020-07-27 22:41:04 +02: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
b3466e996b
add entry[x].runtime option to allow runtime chunk per entry
2020-07-27 22:40:40 +02:00
Tobias Koppers
fd9b399ae9
Create Cache facade to make it easier to use
...
add missing serializers for classes used in test suite
2020-07-15 11:14:28 +02:00
Tobias Koppers
6014ca7e86
splitChunks improvements
...
add new splitChunks.enforceSizeThreshold option
enforces splitting on certain size (ignoring maxRequests and minRemainingSize)
reduce default for splitChunks.minSize to 20k
set default for splitChunks.enforceSizeThreshold to 50k
fix bug where sorting didn't work for minSize: 0
2020-07-13 10:12:17 +02:00
Tobias Koppers
25a41fa9bb
optimize storage format of ExportMode
2020-07-06 21:40:39 +02:00
Tobias Koppers
eac7d290ca
no need to sort already ordered results
2020-06-22 09:31:03 +02:00
Tobias Koppers
5e87e9bf55
fix too aggressive chunk renaming for maxSize
2020-06-22 09:30:01 +02:00
Tobias Koppers
9d2b79fa83
cache CacheGroup objects
2020-06-22 09:28:21 +02:00
Tobias Koppers
c00fec3aa7
Merge pull request #10964 from pushkar100/feature/lazy-load-named-exports
...
Lazy loading only required exports from dynamic import()
2020-06-16 15:04:06 +02:00
Tobias Koppers
a4ac8f0328
Cleanup
2020-06-10 14:01:24 +02:00
Tobias Koppers
3df380e2d7
add script external
...
change defaults of ModuleFederationPlugin to var library and script remoteType
allow using empty entry in config
2020-06-04 03:18:07 +02:00
Tobias Koppers
fde5b3df11
allow to concatenate modules when used exports are known
2020-05-19 14:42:21 +02:00
Tobias Koppers
5efac22a5c
improve side-effects handling for dynamic reexports
2020-05-19 02:08:11 +02:00
Tobias Koppers
f06086c53b
Merge pull request #10631 from mohsen1/mohsen--ts3.9
...
Upgrade to TypeScript 3.9
2020-05-13 17:56:20 +02:00
Tobias Koppers
ba83554d60
keep function declarations when using export default
...
fixes #10870
2020-05-12 22:49:33 +02:00
Mohsen Azimi
042b4ee7d4
Use @ts-expext-error
2020-05-12 14:34:29 +02:00
Tobias Koppers
b9c50fdb09
fix jsdoc documentations
2020-04-28 19:42:58 +02:00
Tobias Koppers
a643278726
refactor exports info logic always represent exports object instead of namespace object
...
improve test case
2020-04-22 21:01:29 +02:00
Tobias Koppers
cbb6ee6809
test more test cases for typings and fix typing bug
2020-04-21 09:25:55 +02:00
Tobias Koppers
8509a225e9
use bindContextCache more often
2020-04-17 10:54:27 +02:00
Tobias Koppers
b38330754f
add hooks for walking parts of classes
...
import handling of classes and expressions
2020-04-09 15:53:59 +02:00
Ivan Kopeykin
411728b146
remove unnecessary condition
2020-04-09 10:39:00 +03:00
Ivan Kopeykin
de24d3e69d
fix(InnerGraph) for ClassExpression
2020-04-09 10:28:46 +03:00
Ivan Kopeykin
cc99b42293
fix InnerGraph for super expression
2020-04-09 01:33:55 +03:00
Ivan Kopeykin
ccea9ef4ce
fix for #10616
2020-04-09 01:32:34 +03:00
Tobias Koppers
7044757751
cleanup, generalization
2020-04-08 22:15:02 +02:00
Ivan Kopeykin
38304f95cc
increase priority of PureExpressionDependency
2020-04-08 22:13:14 +02:00
Ivan Kopeykin
660c7a4b89
fix(InnerGraph): #10623
2020-04-08 22:13:12 +02:00
Mohsen Azimi
7b07a8db66
Upgrade to Prettier 2
2020-03-28 18:20:24 -04:00
evilebottnawi
dafa4cd69a
chore: setup cspell
2020-03-12 19:51:26 +03:00
Nitin Kumar
285529a643
chore: fix typos across the project
2020-03-10 07:29:46 +05:30
Tobias Koppers
6e4b478940
improve exports hoisting in concatenated modules
...
#10409
2020-02-21 20:57:48 +01:00
Tobias Koppers
fdeded05f4
hoist exports to the top of a concatenated module
...
to handle circular dependencies with non-concatenated modules
fixes #10409
2020-02-21 12:21:32 +01:00
Tobias Koppers
6477ca56f8
Split options defaulting in normalization and defaults
...
Apply defaults after plugins are applied to allow plugins to feature their own defaults.
This allows to make preset plugins.
2020-02-17 19:12:54 +01: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
8cbb4ed72c
remove dependencies from inner graph
...
only use TopLevelSymbols in graph
2020-02-05 11:06:27 +01:00
Tobias Koppers
1d2d1085bd
use jsdoc object notation
2020-02-05 10:17:05 +01:00
Sergey Melyukov
a9b72d4b40
Merge remote-tracking branch 'upstream/master' into inner-graph-usage-callback
2020-02-04 15:31:06 +03:00
Tobias Koppers
64675e3093
use output.hashFunction and hashDigest for getKey in SplitChunksPlugin
2020-02-04 09:18:54 +01:00
Tobias Koppers
8399762621
use bigints as chunks key for performance
2020-02-04 09:18:18 +01:00
Tobias Koppers
26d68719a3
cache getKey for splitChunks.maxSize
2020-02-03 11:02:49 +01:00
Tobias Koppers
e96695a18a
add more time logging
2020-01-30 16:10:56 +01:00
Tobias Koppers
e6113e9787
optimize SideEffectsFlagPlugin performance
2020-01-30 16:10:53 +01:00
Sergey Melyukov
907ed08519
usage callbacks on inner graph
2020-01-30 04:34:30 +03:00
Tobias Koppers
3be270d91d
fix bug with renaming of variables in concatenated modules
...
fixes #10308
2020-01-29 20:57:44 +01:00
Tobias Koppers
a488d073c3
Merge pull request #10295 from smelukov/inner-graph-incapsulating
...
Incapsulate inner graph logic
2020-01-29 14:50:10 +01:00
Tobias Koppers
77abab8c97
cleanup, renaming
2020-01-29 14:24:55 +01:00
Tobias Koppers
b40a345451
refactor Persistent Cache
...
cache is split into multiple .pack files which represent usage of cache items
this allows to only read/deserialize files that are needed
and reduces the need to rewrite .pack files
while still packaging multiple cache items together
lazy (de)serialization system has changed to allow writeLazy and writeSeparate
2020-01-28 11:35:06 +01:00
Sergey Melyukov
432d338f9a
incapsulate tag variable
2020-01-27 18:46:23 +03:00
Sergey Melyukov
68a61677dc
move flatter algo into InnerGraph
2020-01-27 18:33:40 +03:00
Sergey Melyukov
721ce54bdf
incapsulating inner graph logic
2020-01-23 15:59:27 +03:00
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
95297186d5
remove Array.prototype.reduce calls to simplify code
2020-01-20 14:41:39 +01:00
Tobias Koppers
131e4177ff
remove Array.prototype.reduce calls to simplify code
2020-01-18 19:56:19 +01:00
Tobias Koppers
e9948449aa
Merge pull request #10262 from webpack/bugfix/pure-annotation-calls
...
the pure annotation only applies to function calls
2020-01-16 00:00:19 +01:00
Tobias Koppers
4f1107bcc9
the pure annotation only applies to function calls
2020-01-15 22:54:42 +01:00
Tobias Koppers
c80bae2959
faster cache access of contextify
2020-01-15 11:20:22 +01:00
Tobias Koppers
aed6ab1d89
improve renaming of variables in concatenated modules
...
more detailed tracking of conflicted references
to avoid renaming variables when possible
fixes #10168
2019-12-23 21:54:57 +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
dda3279221
Merge tag 'v4.41.4'
...
4.41.4
2019-12-19 13:55:43 +01:00
Tobias Koppers
ab4fa8ddb3
Merge pull request #10146 from liximomo/fix-sideEffects
...
fix: bundle wrong modules
2019-12-18 17:39:10 +01:00
liximomo
156a0874a9
fix: prevent incorrectly redirect
2019-12-18 17:01:58 +01:00
Sergey Melyukov
cd174adeb0
Merge remote-tracking branch 'upstream/master' into inner-graph-eval-used
2019-12-18 16:37:03 +03:00
Sergey Melyukov
05abeee20a
pr comments
2019-12-18 16:36:19 +03:00
Tobias Koppers
c81963bf6b
fixes #10104
2019-12-17 17:23:54 +01:00
Tobias Koppers
33d9f7bdbf
bugfix: candiates should only be added when adding was successful
2019-12-17 11:24:23 +01:00
Tobias Koppers
73fd64fc90
refactor
...
refactor ConcatenatedModule to avoid compilation argument
avoid caching inner modules in ConcatenatedModule
improve performance of ModuleConcatenationPlugin
add ModuleStoreError when storing of module fails
2019-12-16 21:08:32 +01:00
Sergey Melyukov
5d18a8e27d
persistent cache for concat modules
2019-12-16 21:06:24 +01:00
Sergey Melyukov
9bca2286ed
opt-out inner graph optimization when eval is used
2019-12-16 16:49:01 +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
d9a2b7997a
refactor dynamic and harmony exports parser state
...
bailout when using AMD define
2019-12-06 11:13:15 +01:00
Tobias Koppers
dd4d68ac8f
use Symbol to flag skipped export names
2019-12-06 11:13:14 +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
32ec03f2b2
fix export mangling for unused default objects
2019-12-06 11:12:27 +01:00
Tobias Koppers
6ef9ea8f27
add two chars to numberToIdentifier
2019-12-06 11:12:07 +01: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
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
b90f3e14a1
upgrade webpack-sources
...
make source maps and source names context independent
add enhanced-resolve declarations
add types to Module.build
fix tooling for import order to support import renaming
add support for concatenated modules in eval source maps
2019-11-12 08:59:08 +01:00
Tobias Koppers
5abf55b1af
allocate presentationalDependencies array only when needed
2019-11-10 21:05:28 +01:00
Tobias Koppers
61e8b44fb9
allocate Module.factoryMeta only when needed
2019-11-10 21:05:21 +01:00
Tobias Koppers
ed81ad0fa4
allocate warnings and errors arrays only when needed
2019-11-10 21:05:16 +01:00
Tobias Koppers
efe0c2e610
avoid creating arrays in getConnections
2019-11-10 21:05:05 +01:00
Tobias Koppers
9a07012695
fix problem with accessing the default named export of json
2019-11-05 10:39:14 +01:00
Tobias Koppers
84b6817f60
consistency and bugfixes for reexporting json
2019-11-05 10:39:12 +01:00
Tobias Koppers
14ee25cd0a
add support for tree-shaking JSON modules
2019-11-05 10:37:59 +01:00
Tobias Koppers
4479b6c660
add comment, optimize code
2019-10-30 09:35:17 +01:00
Tobias Koppers
9010d8bf77
allow to disable connection
...
fix bug
2019-10-30 09:35:14 +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
evilebottnawi
8198ffb3e6
refactor: code
2019-10-22 00:14:05 +02:00
Tobias Koppers
b5e8915b14
Merge pull request #9736 from vankop/limit-chunk-count-plugin
...
fix: Limit chunk count plugin
2019-10-21 09:02:49 +02:00
Tobias Koppers
b4d782fb94
remove unused type
2019-10-09 13:54:38 +02:00
Tobias Koppers
3e54494606
remove supportsSymbolsDeconflicting
2019-10-09 11:49:48 +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
7733d2b1c1
fix infinite loop on circular inner graph references
2019-10-07 10:52:35 +02:00
Tobias Koppers
f01e7d253b
fix handling of circular references in the inner graph
2019-10-02 07:25:12 +02:00
Tobias Koppers
b80174a069
Improve backward-compat for various things
...
to enable mini-css-extract-plugin
2019-09-26 22:06:54 +02:00
Tobias Koppers
f7f408372f
Merge tag 'v4.41.0' into next
...
4.41.0
2019-09-26 21:41:52 +02:00
Ivan Kopeykin
97775bcc0a
Fix default parameter in LimitChunkCountPlugin constructor
2019-09-25 17:02:57 +03:00
Tobias Koppers
6f1c685071
Improve performance of LimitChunkCountPlugin a lot
2019-09-24 16:32:20 +02:00
Michael Budde
465922fb5f
nit: Don't recompute filename hash
2019-09-18 08:04:58 +02:00
Tobias Koppers
7bde43f47a
Merge tag 'v4.40.0' into next
...
4.40.0
2019-09-13 11:12:26 +02:00
Tobias Koppers
758269e814
add emit/updateAsset to Compilation
...
add asset info with
* immutable for long term cache-able asset
* size for the asset size in bytes
* development for devtools
* hotModuleReplacement for HMR assets
show asset info in stats
2019-09-11 14:43:42 +02:00
Tobias Koppers
935830a879
only handle defined variables and imports as pure expressions
2019-09-08 22:29:51 +02:00
Tobias Koppers
786c655751
avoid adding dependencies in pre walk, branch might be skipped
2019-09-08 15:21:00 +02:00
Tobias Koppers
ec518945f1
fix edge case in scope analysis
...
fix double declaration problem in variable declarations
remove TrackingSet
rename StackedSetMap to StackedMap and remove add method
add more scope analysis test
2019-09-05 13:34:16 +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
9aba345ae7
fix minor bug in concatenated modules
2019-09-03 14:18:01 +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
1eec744a13
generate more efficient external reference in concatenated modules
2019-08-23 09:26:44 +02:00
Tobias Koppers
ddf3566c56
bailed out external ESM in ConcatenatedModule generate property access correctly
2019-08-22 09:58:49 +02:00
Tobias Koppers
24ef835375
Merge pull request #9548 from webpack/refactor-migrate-on-schema-utils
...
Refactor migrate on schema utils
2019-08-08 13:42:52 +02:00
evilebottnawi
6a99b5316d
refactor: migrate on `schema-utils`
2019-08-07 18:10:40 +03:00
Tobias Koppers
c21fb4bd58
Add LazySet for file/context/missingDependencies for performance
2019-08-07 16:13:56 +02:00
Tobias Koppers
7d16eb52f6
track callContext in ConcatenatedModule
...
fixes #9500
2019-07-31 16:05:15 +02:00
Tobias Koppers
302e8d5e2b
add time logging for SplitChunksPlugin
2019-07-26 14:03:18 +02:00
Tobias Koppers
1d72a05fed
Merge tag 'v4.36.0' into next
...
4.36.0
2019-07-17 16:02:33 +02:00
Tobias Koppers
50bb510d65
avoiding v8 deopts
2019-07-10 00:29:20 +02:00
Tobias Koppers
b2e7837288
replace Object.assign with object spread
2019-06-19 13:16:05 +02:00
Tobias Koppers
fbff5f3c75
allow filename as function at more places
...
fixes #9296
2019-06-18 22:22:09 +02:00
Tobias Koppers
6cd2f367b8
Merge pull request #9302 from webpack/bugfix/issue-9288
...
fix chunk name reuse in SplitChunks
2019-06-18 16:50:11 +02:00
Ryan Drew
07dc8330d0
update name-too-long comment to length 109
2019-06-18 10:29:09 -04:00
Ryan Drew
6e16e12007
remove update to 100 line length
...
This commit removes the update to 100 line length. It's bad
practice to introduce a behavior change like that.
2019-06-18 10:04:14 -04:00
Tobias Koppers
568f08203c
Merge pull request #9282 from DanielRuf/fix/remove-duplicate-code-blocks
...
fix: remove duplicate code blocks in condition and switch-case
2019-06-18 15:28:50 +02:00
Tobias Koppers
e9b8b00b4f
fix chunk name reuse in SplitChunks
...
fixes #9288
2019-06-18 15:26:28 +02:00
Ryan Drew
054c933950
introduce name truncation config option for SplitChunksPlugin
2019-06-15 14:20:48 -04:00
Daniel Ruf
0b70bafc57
fix: remove unused check for changed which always evaluates to false
2019-06-15 13:42:22 +02:00
Daniel Ruf
bb944d3de6
fix: remove duplicate code blocks in condition and switch-case
2019-06-15 13:31:45 +02:00
Tobias Koppers
0505e177f1
add more types and fix/remove TODOs
...
change Chunk.files to Set
remove checkContext from IgnorePlugin
remove external flag from ExternalModule
2019-06-14 10:45:56 +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
01eb9885a5
disable splitChunks.minRemainingSize for multiple selected chunks
2019-06-12 08:58:17 +02:00
Tobias Koppers
2f5bd7a8e3
fix minRemainingSize when multiple chunks are affected
...
issue: https://github.com/webpack/webpack/issues/8537#issuecomment-499818693
2019-06-11 17:46:36 +02:00
Tobias Koppers
fd4b3c503a
pretty files
2019-06-09 11:23:42 +02:00
Tobias Koppers
1977cb1036
move async module flag to ModuleGraph
2019-06-05 11:15:25 +02:00
Tobias Koppers
1b685d1de8
change DependencyReference.importedNames to be always an string[][]
2019-05-29 11:55:07 +02:00
Tobias Koppers
43bc7a306e
Refactor to track nested exports
...
Harmony dependencies track access to nested properties
Flag nested exports
2019-05-29 11:55:00 +02:00
Tobias Koppers
ad5a6d105b
Merge tag 'v4.32.2' into next
...
4.32.2
2019-05-23 01:19:34 +02:00
Tobias Koppers
fec26a9503
fix concatenated version of reexport dependency for sideEffects
...
fixes #9159
2019-05-22 21:32:52 +02:00
Tobias Koppers
abc825d58f
Merge tag 'v4.32.0' into next
...
4.32.0
2019-05-20 14:46:31 +02:00
Tobias Koppers
a4bbdae0d2
fix problem with dll and sideEffects
...
allow to redirect module and id in reexports
SideEffects plugin redirects reexports too
fixes #9146
2019-05-20 11:28:33 +02:00
Tobias Koppers
a3f2314a63
replace micromatch with glob-to-regexp for sideEffects flag
2019-05-16 21:54:03 +02:00
Tobias Koppers
92f8c36ca2
add `minRemainingSize` option for splitChunks to ensure leftover chunks from splitting have a minimum size
...
defaults to `minSize` of cache group
defaults to global option when not specified
global option defaults to zero in development
2019-05-13 13:10:23 +02:00
Tobias Koppers
0c39719729
avoid zero sized modules as they lead to problems
2019-05-13 12:29:29 +02:00
Florent Cailhol
b12f24d20c
Update hook types
2019-05-10 09:52:22 +02:00
Tobias Koppers
b66143f706
Merge tag 'v4.30.0' into next
...
4.30.0
2019-05-09 21:34:28 +02:00
Adam Postma
ff8c37e887
correct spelling mistake, update identifer to identifier
2019-04-12 10:29:41 -06:00
Tobias Koppers
255b3b460d
fixes #8908
2019-03-15 12:39:21 +01:00
Matt Mulder
287c2b7ef1
fix null module reference when concatenating entryModule in split chunk
2019-03-15 01:30:36 -07:00
Tobias Koppers
924daa105b
Use simpler/faster hash function to get a hash number
...
Use deterministic mangled names for exports
refactor assignDeterministicIds
rename __webpack_init__ function in wasm to ""
fix bug with incorrectly cached StaticExportsDependency
fix bug in hash logic of Module
2019-02-20 22:41:07 +01:00
Tobias Koppers
e2e0983f4c
remove splitChunks restriction for custom filenames on non-initial chunks
...
fix bug, which generated incorrect static url mapping for get chunk filename runtime module
optimize generated code for chunk filename (shorter)
2019-02-19 11:16:53 +01:00
Tobias Koppers
180f912493
Merge tag 'v4.29.2' into next
...
4.29.2
2019-02-06 15:37:11 +01:00
Tobias Koppers
b25ff237bb
Prettify source code
2019-02-05 10:08:45 +01:00
Tobias Koppers
b6ad10b2c1
bugfixes and HarmonyExportImportedSpecifier optimization
2019-02-01 11:45:24 +01:00
Tobias Koppers
6fc0b96c9c
add MangleExportsPlugin and options
2019-01-31 11:41:30 +01:00
Tobias Koppers
739fef4fda
move usedExports into ExportsInfo
2019-01-28 08:38:37 +01:00
Tobias Koppers
923e16dd5a
remove module argument from getDependencyReference
2019-01-28 08:38:35 +01:00
Tobias Koppers
42007e882a
fixes #8666
2019-01-22 09:13:21 +01:00
Tobias Koppers
d40f7b2642
cache contextify and pass associatedObjectForCache to all calls
2019-01-19 12:40:00 +01:00
Tobias Koppers
ef9e25d8ea
report dependencies from resolver to the compilation
...
refactor NormalModuleFactory
2019-01-08 15:14:25 +01:00
Tobias Koppers
a414c616cd
used and provided exports are part of module attributes
2018-12-31 12:29:02 +01:00
Tobias Koppers
4eecad3a83
remove unnecessary copy of modules
2018-12-31 12:28:59 +01:00
Florent Cailhol
a42922f663
Move provided exports to the module graph
2018-12-31 12:28:51 +01:00
Florent Cailhol
b916ff1491
Improve SplitChunksPlugin typings
2018-12-12 10:49:16 +01:00
Florent Cailhol
2a10b12e09
Add maxAsyncSize and maxInitialSize options
2018-12-11 20:47:50 +01:00
Florent Cailhol
5f26040786
Add types to SplitChunksPlugin
2018-12-10 22:09:27 +01:00
Tobias Koppers
5563ee9e58
use makePathsRelative instead of contextify
...
unify contextify and makePathsRelative
separate NormalModuleFactory ignored, ContextModule and ConcatenatedModule identifier with "|"
2018-12-07 18:12:04 +01:00
Tobias Koppers
350817ea4f
make identifier of ConcatenatedModule context-independent
2018-12-07 15:36:49 +01:00
Tobias Koppers
fe80339d71
use - instead of ~ as default for better compat
...
fix automaticNameDelimiter in splitChunks
fix test cases
2018-12-07 14:46:49 +01:00
Tobias Koppers
8281667668
improve ids for Long Term Caching
...
add deterministic chunk ids and make it default
StatsTestCases no longer need to explicitly use natural ids as the defaults are deterministic now too
add concept of id name hints for chunks
add `idHint` option to splitChunks to provide a hint
deduplicated code from different id plugins to IdHelpers
improve behavior of named ids in case of conflicts
remove `name: true` and `automaticNamePrefix` from splitChunks it's not as good as expected
improve named chunk ids to show root modules
2018-12-07 12:26:35 +01:00
Tobias Koppers
387803bf3d
re-add accidentally removed type
2018-12-05 20:23:47 +01:00
Tobias Koppers
30a68b20c7
support different size types in SplitChunksPlugin
2018-12-05 20:23:40 +01:00
Tobias Koppers
cc34ea42b0
add type argument to Module.size
...
add getSize to Generator
2018-12-05 20:18:59 +01:00
Tobias Koppers
0cd0291011
Merge tag 'v4.27.1' into next
...
4.27.1
2018-12-05 20:17:58 +01:00
Tobias Koppers
b56727ec83
enforce should not prevent using `minChunks` etc. on cacheGroup
...
Partial revert "enforce doesn't affect minSize for maxSize"
2018-12-05 19:38:10 +01:00
Tobias Koppers
0ff1a4f8f8
Merge tag 'v4.27.0' into next
...
4.27.0
2018-12-04 11:02:26 +01:00
Tobias Koppers
3b46b48fa7
enforce doesn't affect minSize for maxSize
...
enforce now works as documented
emit warning for minSize > maxSize configuration
performance improvements
bugfix when multiple cacheGroups have the same name
fixes #8407
2018-12-03 11:57:33 +01:00
Tobias Koppers
7c37a6a972
handle runtime requirements
2018-11-29 16:07:17 +01:00
Tobias Koppers
c1e89c0543
Runtime requirement support in NormalModule, Generators and DependencyTemplate
2018-11-29 16:06:12 +01:00
Tobias Koppers
0232674f9c
Initial runtime module work
2018-11-29 16:03:32 +01:00