Tobias Koppers
5161d96650
fix bug when comparing name lengths
2018-01-21 11:10:51 +01:00
Tobias Koppers
fabd1abb41
improvements from review by @ooflorent
2018-01-20 11:28:45 +01:00
Tobias Koppers
18ae73dad4
Refactor chunk graph
...
Chunks are now always in ChunkGroups
ChunkGroups have parents and children, Chunks no longer have this
AsyncDependenciesBlocks point to a ChunkGroup instead of a list of chunks
Entrypoint is now a ChunkGroup (extends from it)
move stuff graph modification methods into GraphHelpers
Change chunk id recording to source-based
Chunks have parents, siblings and children in Stats
rename AutomaticCommonsChunksPlugin to SplitChunksPlugin
add request property to origin (ChunkGroup)
remove moveToParent from AggressiveMergingPlugin
fix issues with AggressiveSplittingPlugin
remove CommonsChunkPlugin
add optimization.runtimeChunk (RuntimeChunkPlugin)
fix a filename bug for initial chunks
remove extract-text-webpack-plugin from test suite
add DebugHash to help debugging hash issues
fix issues with entry modules in different chunk as runtime
redo optimization.splitChunks options
Compilation.entrypoints is now a Map
Compilation.chunkGroups has been added
remove some unittests
update examples
update tests with CommonsChunkPlugin
2018-01-19 19:21:30 +01:00
Tobias Koppers
7112943ca4
Merge pull request #6298 from EugeneHlushko/refactor/indexof-to-includes
...
Refactor/indexof to includes
2018-01-11 22:45:02 +01:00
EugeneHlushko
2aab060f26
Refactor: indexOf >< checks to includes
2018-01-11 18:58:39 +02:00
Tobias Koppers
c71dabcc0c
allow to set runtime chunk in Entrypoint
...
split keeps runtime chunk in entrypoint
default runtime chunk back to first chunk to keep CCP working
2018-01-10 18:58:28 +01:00
Tobias Koppers
b34663cb2d
add more config options
...
fix bugs
2018-01-10 18:58:27 +01:00
Tobias Koppers
08cd2f0ffe
introduce ChunkGroup for AND in parents
2018-01-10 17:12:03 +01:00
Tobias Koppers
ca1c91c576
Merge branch 'master' into next
...
# Conflicts:
# lib/Chunk.js
# lib/MainTemplate.js
# test/statsCases/commons-chunk-min-size-0/expected.txt
# test/statsCases/commons-plugin-issue-4980/expected.txt
# test/statsCases/named-chunks-plugin/expected.txt
2018-01-04 21:47:33 +01:00
nename0
d1e0bec48e
Fix: the require-ensure only includes non-initial chunks
2018-01-04 19:25:03 +01:00
Jeonghwan Lee
6dd4de57dc
Fix Chunk.prototype.entrypoints setter
2017-12-15 11:26:38 +09:00
Tobias Koppers
beccf941a9
convert algorithm to iterative, use less memory
2017-12-01 11:26:53 +01:00
Tobias Koppers
8363773f3f
only emit wasm runtime code for bundles containing wasm
2017-11-21 12:57:40 +01:00
Tobias Koppers
65e855c636
fix deprecations
2017-11-11 11:27:02 +01:00
Tobias Koppers
41a1d602e1
added WebAssembly Proof of Concept
2017-11-10 09:17:11 +01:00
Tobias Koppers
860da9baaa
Merge branch 'next' into refactor/sets
2017-11-08 21:28:51 +01:00
Tobias Koppers
f7c2f8e470
Update code style to arrow functions
2017-11-08 11:56:01 +01:00
Tobias Koppers
447d85ad79
Merge branch 'next' into refactor/sets
...
# Conflicts:
# lib/ContextModule.js
# lib/NormalModule.js
# lib/optimize/ConcatenatedModule.js
2017-11-08 06:01:24 +01:00
Tobias Koppers
51c572c4f5
refactor more properties to Sets
2017-11-07 09:17:12 +01:00
Tobias Koppers
52bacce0d7
Merge branch 'next' into refactor/cleanup-stuff
2017-11-07 09:15:15 +01:00
Tobias Koppers
0339d4da49
Refactor weird things
...
* Declare used properties in constructor
* Module.(re)building moved into Compilation._(re)buildingModules (Map)
* Make NormalModule.error private
* Move Module.cacheable logic into needRebuild
* More stable implemention of rebuildModule
* addModuleChain waits for Module building finished before returning
* Set built and cacheable flags correctly in Modules
* More portableId into WeakMap
* Add ModuleReason for entrypoints
* cacheable can be true/false/null in Stats
* added Stats module issuerPath
* fixes profile in stats output
2017-11-06 13:16:09 +01:00
Tobias Koppers
1b28c93eaf
renamed methods
2017-11-06 12:15:23 +01:00
Tobias Koppers
bbb66fcca0
bugfix
2017-11-06 11:26:16 +01:00
Tobias Koppers
801138a3b3
allow caching in sortable set and use it
2017-11-03 10:17:08 +01:00
Tobias Koppers
814c894168
Merge branch 'master' into next
...
# Conflicts:
# lib/optimize/CommonsChunkPlugin.js
# test/statsCases/limit-chunk-count-plugin/expected.txt
# test/statsCases/named-chunks-plugin-async/expected.txt
# test/statsCases/optimize-chunks/expected.txt
2017-10-16 10:47:17 +02:00
Tobias Koppers
45756a2291
set chunk reasons symmetrical
2017-10-13 10:44:08 +02:00
Tobias Koppers
07992cf588
fix sorting issue
2017-09-22 17:23:49 +02:00
Tobias Koppers
b316bee0a6
Use SortableSets for Chunk.parents/blocks
2017-09-22 16:38:47 +02:00
Tobias Koppers
53711d5a76
make deprecations more yelling
2017-09-22 14:13:09 +02:00
Tobias Koppers
6bd937d768
make things consitent
2017-09-22 14:07:28 +02:00
Tobias Koppers
6c1831ca21
Merge branch 'next' into use-set-in-chunks
2017-09-22 13:49:03 +02:00
Tobias Koppers
7387c50c3a
change jsonp function to jsonp array push
2017-09-14 08:49:14 +02:00
Tobias Koppers
f6a0d51e6b
Merge branch 'master' into use-set-in-chunks
2017-07-18 09:32:53 +02:00
Steven Hargrove
5f08aa44bd
removed default params for node 4
2017-07-06 16:40:58 -04:00
Steven Hargrove
cadf9f715f
added sortModules method to Chunk class
2017-07-06 16:08:58 -04:00
Tim Sebastian
4c18dbf0d6
make chunk._chunks a sortable set
2017-06-24 11:40:24 +10:00
Tim Sebastian
7e0a6ca287
fix contrains checks, might get obsolete in the future
2017-06-24 11:39:46 +10:00
Tim Sebastian
53f70c7aeb
deprecate chunk.chunks
2017-06-24 11:38:00 +10:00
Tim Sebastian
81e5b7ce4f
refactor usage of this.chunk inside Chunk to use Set API
2017-06-24 11:38:00 +10:00
Tim Sebastian
cedce8d0f5
make this.chunks in Chunk private and turn it into a Set
2017-06-24 11:37:20 +10:00
Tim Sebastian
1a16a3e181
make sort function private
2017-06-19 22:13:44 +10:00
Tim Sebastian
747efcadf9
use SortableSet in chunks
...
use SortableSet to keep "_modules" sorted
2017-06-18 13:57:11 +10:00
Tobias Koppers
b08762b729
optimize optimization plugins
2017-06-01 16:35:07 +02:00
Tobias Koppers
2bd2d2844c
improve a few issues
...
from review by @Kovensky
2017-05-20 14:54:42 +02:00
Tobias Koppers
e1bac32c19
Use a Set to store modules in a chunk
2017-05-16 11:50:50 +02:00
Ali BARIN
a941499889
Update variable declarations according to ES6
2017-03-02 15:09:09 +01:00
Tim Sebastian
f4d8c5f20f
fix inner loop of "remove" method
...
as it is not guaranteed that the the chunk has parents the loop may not be run
this could lead to stale "this" still being a parent of one of its childs.
therefore we have to loop the chunks again.
2017-02-14 21:16:10 +11:00
Tim Sebastian
4438ac9880
remove "removeAndDo" and make usage inline and explicit
2017-02-14 21:16:10 +11:00
Tim Sebastian
9e60f2c302
fixup integratedSize to reflect original functionality
2017-02-14 21:16:10 +11:00
Tim Sebastian
7305593987
rename other to otherChunk
2017-02-14 21:16:10 +11:00
Tim Sebastian
f062f49a70
make clearer what "parents" are
2017-02-14 21:16:10 +11:00
Tim Sebastian
3b4eb0f832
more readable variables
2017-02-14 21:16:09 +11:00
Tim Sebastian
63f0930161
simplify size calculation
...
add "moduleSize" calculator, add multiply and overhead helper
2017-02-14 21:16:09 +11:00
Tim Sebastian
aaee63a500
make variables more readable
2017-02-14 21:16:09 +11:00
Tim Sebastian
dd5eb39dd3
remove unnecessary passing of "this" argument - done via arrow functions
2017-02-14 21:16:09 +11:00
Tim Sebastian
2f58138516
remove unnecessary iteration if b.chunks is not set
2017-02-14 21:16:09 +11:00
Tim Sebastian
9f27e92d42
use replaceChunk and replaceParent in "integrate" method
2017-02-14 21:16:09 +11:00
Tim Sebastian
848b5aeb92
add two helper methods `replaceChunk` and `replaceParent`
...
they take an old item and a new item, remove the old item and add the new one
2017-02-14 21:16:09 +11:00
Tim Sebastian
5fa6caafd6
use method "moveModule" instead of duplicating it when integrating chunk
2017-02-14 21:16:09 +11:00
Tim Sebastian
fc36ac366d
use easier readable variable name in moveModule
2017-02-14 21:16:08 +11:00
Tim Sebastian
779c753baf
transfer add logic for module, block, parent, chunk to prototype
...
bringing the "adder" logic to the prototype might be slighly better performance wise
reuse of logic for add module and block, though they now have one superfluous check (should be negligable though)
2017-02-14 21:16:08 +11:00
Tim Sebastian
071b504a84
merge iteration of parent and sub chunks
...
merge and document iteration over parent and subchunks in remove method
this will slightly increase performance for removing chunks as it only
iterates once over all chunks and parents'
2017-02-14 21:16:08 +11:00
Tim Sebastian
f7e9d5805f
use easier to read variable names
2017-02-14 21:16:08 +11:00
Tim Sebastian
14894f065f
not needed as arrow functions keep "this"
2017-02-14 21:16:08 +11:00
Tim Sebastian
e0da9a8c44
the point of the arrow function is to not need a context passed in
2017-02-14 21:16:08 +11:00
Tim Sebastian
4ea380ff68
no need to add removeAndDo to the context
...
no one else is using it on chunks and `_` indicates its private anyways
2017-02-14 21:16:08 +11:00
Tobias Koppers
8e69a80847
code linting
2017-01-11 12:29:01 +01:00
Will Mendes
a1ffb615ab
refactor(Chunk): upgrade to ES6 ( #3694 )
...
* refactor(Chunk): upgrade to ES6
* test(Chunk): adding unit test for Chunk class
2017-01-04 10:17:49 -06:00
Tobias Koppers
f4ab7fc7e2
more performance improvements
2016-12-14 16:22:54 +01:00
Tobias Koppers
1296c689ac
bug fix for agressive merging
2016-09-07 12:37:47 +02:00
Tobias Koppers
1675a5a5ca
new way to handle new ids, reuse old ids
...
adjusted HMR to handle id reusing
2016-07-18 00:41:26 +02:00
Tobias Koppers
79eb404257
fixes webpack/extract-text-webpack-plugin#82
...
fixes webpack/extract-text-webpack-plugin#115
fixes webpack/extract-text-webpack-plugin#170
2016-07-15 21:59:24 +02:00
Tobias Koppers
2f618e733a
refactoring and aggressive-splitting plugin
2016-07-13 11:03:14 +02:00
Tobias Koppers
1b459d91f5
move externals into chunk with entry
...
fixes #2314
maybe fixes #2066
fixes #2375
fixes #1673
2016-05-05 10:13:50 +02:00
Tobias Koppers
996b6c80ae
cache parent checks, check faster array for contain
2016-04-10 23:55:37 +02:00
Tobias Koppers
5bbfbae551
Merge branch 'master' into webpack-2
...
Conflicts:
package.json
test/statsCases/chunks/expected.txt
2015-07-25 13:49:14 +02:00
Tobias Koppers
ea7fd67ec1
fixed #1239
2015-07-22 22:34:25 +02:00
Tobias Koppers
431a4c791c
Merge branch 'master' into webpack-2
...
Conflicts:
hot/dev-server.js
hot/only-dev-server.js
hot/poll.js
hot/signal.js
lib/ChunkTemplate.js
lib/HotModuleReplacement.runtime.js
lib/HotModuleReplacementPlugin.js
lib/JsonpMainTemplatePlugin.js
lib/MainTemplate.js
lib/NormalModule.js
lib/Parser.js
lib/RecordIdsPlugin.js
lib/WebpackOptionsApply.js
lib/dependencies/RequireEnsureDependency.js
lib/node/OldNodeWatchFileSystem.js
lib/optimize/OccurrenceOrderPlugin.js
package.json
2015-07-17 09:30:37 +02:00
Tobias Koppers
5cd6e7d0b3
fixed a few linting issues
2015-07-16 00:39:56 +02:00
Tobias Koppers
f7d799adb4
rebeautify without spacing after keyword
2015-07-16 00:19:23 +02:00
Avi Haiat
0a340f2b1a
feat(app): Beautify all lib files
2015-07-13 01:20:09 +03:00
Tobias Koppers
8cfeb51c30
refactoring and bug fixes
2015-07-07 00:11:13 +02:00
Kenny Tran
7e0a98bb29
Refactor size method for Chunks
2015-05-31 20:02:07 -07:00
Kenny Tran
9352bb8806
Fix typo in Chunk.js
2015-05-20 14:57:10 -07:00
Tobias Koppers
cebd3b9722
added linting
2015-04-23 23:55:50 +02:00
Tobias Koppers
18fe8e7b66
always create files array on Chunk
2015-01-30 00:44:58 +01:00
Tobias Koppers
544c368ea1
added support for an async commons chunk, tests and examples
2015-01-11 23:15:11 +01:00
Tobias Koppers
de1ea9d15e
allow multiple chunks for a dependency block #640
2015-01-01 21:58:27 +01:00
Tobias Koppers
e12bc992af
include [chunkhash] tests again
...
added support for [chunkhash] with target node
2014-11-02 12:48:15 +01:00
Tobias Koppers
dd232012ca
Merge pull request #427 from diurnalist/feature/templated-path-plugin-sq
...
Add TemplatedPathPlugin to generically handle asset paths w/ template vars
2014-09-11 19:09:17 +02:00
Jason Anderson
f371945a29
Add TemplatedPathPlugin
2014-09-11 15:31:08 +02:00
Tobias Koppers
e0f975eb9e
fixes webpack/extract-text-webpack-plugin#14
2014-09-07 22:54:38 +02:00
Tobias Koppers
d80cdcefac
Code Quality
2014-06-24 18:53:32 +02:00
Tobias Koppers
80f3c48d99
better code style
2014-06-03 21:03:21 +02:00
Tobias Koppers
d3a9712193
bug fixing
2014-02-03 18:12:19 +01:00
Tobias Koppers
89fb178917
add origin for used named chunks
2014-01-24 13:32:58 +01:00
Tobias Koppers
30f954067c
track chunk origin
2014-01-23 15:31:40 +01:00
Tobias Koppers
1fa9169cf2
use initial flag for initial loaded chunks
2013-12-03 23:11:14 +01:00
Tobias Koppers
153be562db
keep commons chunk in mind when optimizing
2013-12-03 11:28:00 +01:00
Tobias Koppers
a84a0433c9
better optimizing
2013-06-17 18:55:11 +02:00
Tobias Koppers
5cdb8cbf81
cache chunks, cache assets
2013-05-08 13:28:54 +02:00
Tobias Koppers
cdbc509bb4
fixed chunk parent bug
2013-02-19 11:11:54 +01:00
Tobias Koppers
ee01837d66
Refactored everything for 0.9
2013-01-30 18:49:25 +01:00