Tobias Koppers
5c42b918b4
further optimizations
2021-02-23 12:03:26 +01:00
Tobias Koppers
916bf69cae
compute chunk roots correctly when using transitive connections
...
also use module.nameForCondition() to compute module ids
fixes https://github.com/webpack-contrib/mini-css-extract-plugin/issues/676
2021-01-11 18:14:24 +01: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
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
evilebottnawi
8c19efb7fd
chore(deps): update `schema-utils`
2020-10-05 21:58:54 +03: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
b9c50fdb09
fix jsdoc documentations
2020-04-28 19:42:58 +02:00
evilebottnawi
dafa4cd69a
chore: setup cspell
2020-03-12 19:51:26 +03:00
Tobias Koppers
131e4177ff
remove Array.prototype.reduce calls to simplify code
2020-01-18 19:56:19 +01:00
Tobias Koppers
efe0c2e610
avoid creating arrays in getConnections
2019-11-10 21:05:05 +01:00
Tobias Koppers
36bac0df8b
hoist compiler.root
2019-11-10 21:04:41 +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
07999faa68
return early in `avoidNumber` when string can't be a number
2019-10-28 14:10:58 +01:00
Tobias Koppers
65bdb43180
fix badly chosen max fill rate for deterministic
...
sort modules by identifier in output file, that's better for gzip
2019-10-16 16:38:04 +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
evilebottnawi
6a99b5316d
refactor: migrate on `schema-utils`
2019-08-07 18:10:40 +03:00
Tobias Koppers
1d72a05fed
Merge tag 'v4.36.0' into next
...
4.36.0
2019-07-17 16:02:33 +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
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
d40f7b2642
cache contextify and pass associatedObjectForCache to all calls
2019-01-19 12:40:00 +01:00
Mihail Bodrov
ca80248f9c
Minor optimization
2018-12-19 02:59:54 +03:00
Mihail Bodrov
1b3d0f6c27
Get rid of string
2018-12-19 02:59:53 +03:00
Mihail Bodrov
12dea1af24
Optimize getHashNumber
2018-12-19 02:59:53 +03: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
a83e0daca6
replace RequestShortener with contextify in id generation
2018-12-07 16:07:40 +01:00
Tobias Koppers
f60c8d8f0e
bugfixes and optimizations
...
optimize name map for name equals id
bugfixes in named ids assigning
assign name before automatic ids
2018-12-07 15:14:14 +01:00
Tobias Koppers
ca46218787
add defaults for deterministic id plugins
2018-12-07 14:47:25 +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
48a18948f2
revert id generation changes for runtime modules
...
They no longer have ids
2018-11-29 17:08:44 +01:00
Tobias Koppers
c1e89c0543
Runtime requirement support in NormalModule, Generators and DependencyTemplate
2018-11-29 16:06:12 +01:00
Florent Cailhol
8a10ea3c92
Type 'apply' method of plugins
2018-11-12 14:26:31 +01:00
Tobias Koppers
1e29c44df3
move natural chunk comparator to comparators
...
add name order to natural chunk order
2018-10-23 11:32:34 +02:00
Tobias Koppers
17044bf9c6
Merge tag 'v4.20.0' into next
...
4.20.0
2018-09-25 16:20:42 +02:00
Tobias Koppers
56c613a669
add moduleIds deterministic for simpler long term caching
2018-09-18 17:49:19 +02:00
Tobias Koppers
7a43a27eda
make Compilation.chunks a Set
2018-09-06 17:04:01 +02:00
Tobias Koppers
6ca7ae1c48
make Compilation.modules a Set
2018-09-06 17:03:24 +02:00
Tobias Koppers
149043a134
Make create chunk and module ids filename safe
2018-09-05 21:29:22 +02:00
Tobias Koppers
b4860ccebb
refactor chunk id plugins
2018-09-05 14:28:52 +02:00
Tobias Koppers
4a7a85ca84
rename index/index2 to pre/postOrderIndex
2018-09-04 09:27:25 +02:00
Tobias Koppers
24185b5ee2
filter modules before sorting for performance reasons
2018-09-04 08:52:22 +02:00
Tobias Koppers
4d7b5b3b5e
Refactor module id plugins to be independent
2018-09-03 20:45:44 +02:00