Commit Graph

338 Commits

Author SHA1 Message Date
Tobias Koppers 991b360c90 fix useless-escape linting issues 2017-07-24 11:54:06 +02:00
Tobias Koppers 05b913a92c cleanup messages and added more info 2017-07-24 10:29:08 +02:00
Tobias Koppers 2949c598d5 refactor for more readablity 2017-07-24 10:04:55 +02:00
Tobias Koppers a167a7ecf5 allow to use default export of root module in concatenated module in inner modules
better error messages when parsing fails

fixes #5314
#5304
2017-07-21 23:32:47 +02:00
Tobias Koppers 2b0943f618 Merge pull request #5312 from webpack/performance/aggressive-splitting
performance improvements and comments
2017-07-18 15:11:24 +02:00
Tobias Koppers 6fc72dc4cc Merge pull request #5309 from probablyup/optimizations
refactor: reduce array allocations, remove some excess iterations
2017-07-18 14:25:12 +02:00
Tobias Koppers 64c1e8a23a performance improvements and comments 2017-07-18 14:24:42 +02:00
Tobias Koppers f6a0d51e6b Merge branch 'master' into use-set-in-chunks 2017-07-18 09:32:53 +02:00
asolove 3f1b7e624c Store relative path cache on compilation to avoid leaking memory. 2017-07-17 23:06:59 -06:00
Evan Scott 529b0ffe94 refactor: use array.find vs array.filter()[0] 2017-07-17 22:19:35 -04:00
Tobias Koppers c1a02446ac store hash in depndencyTemplates Map instead of comparing identify
This restores original performance on incremental builds

fixes #5289
fixes #5277
2017-07-14 13:03:30 +02:00
Tobias Koppers 6842d50cf9 Call imports with the correct context.
Parse arguments of an import call.
Support strictThisContextOnImports in ConcatenatedModules

fixes #5246
fixes #5135
fixes #5111
2017-07-11 19:08:23 +02:00
Tobias Koppers 4e90f43596 add hash method to concatenated module
fixes #5184
2017-07-07 11:48:52 +02:00
Tobias Koppers a6e4cddb79 Merge pull request #5137 from mzgoddard/concatenated-file-dependencies
Include module file and context dependencies in ConcatenatedModule
2017-07-01 14:51:07 +02:00
Johannes Ewald 15ccfb68ef
Improve ModuleConcatenation bailout messages 2017-06-28 15:20:06 +02:00
Tim Sebastian 66f0f6436a refactor commonsschunk plugin to handle set instead of array 2017-06-24 11:39:46 +10:00
Michael "Z" Goddard 9ea40f0eea
Include module file and context dependencies in ConcatenatedModule
As ModuleConcatenationPlugin removes the concatenated modules from a
compilation, the file and context dependencies of those modules needs
to be stored in the ConcatenatedModule for webpack to be able to watch
those paths.
2017-06-22 10:43:28 -04:00
jeonghwan Lee ab9e938367 Preserve assets from concatenated module 2017-06-22 12:32:59 +09:00
Tobias Koppers 2d82b00767 Merge pull request #5113 from webpack/feature/better-error-message
better error message for missing internal names
2017-06-21 23:23:25 +02:00
Tobias Koppers 25a904bf88 Merge pull request #5083 from timse/sortable-set
Sortable set
2017-06-21 22:50:47 +02:00
Tim Sebastian 8f3d65aa5d fix linting/formatting issues 2017-06-21 08:12:22 +10:00
Tim Sebastian f7ffed8f3e allow to set chunks and use it in ConcatenatedModule 2017-06-21 08:12:22 +10:00
Tobias Koppers 245dcc3047 better error message for missing internal names 2017-06-20 16:13:32 +02:00
Tobias Koppers 9feda63d13 Merge pull request #5028 from webpack/feature/externalize_uglify_plugin
feat(uglify): move uglify to external plugin from webpack-contrib
2017-06-19 17:04:27 +02:00
Tim Sebastian fc20348f97 unite iteration through modules into one loop 2017-06-18 22:46:06 +10:00
Tim Sebastian 083843e0ad remove code that pushes arrays of dependencies into dependencies
the actua dep population is done in lines 155-159
2017-06-18 22:45:08 +10:00
Tim Sebastian bd8c6cf158 make sure ConcatenatedModules also uses SortedSet
fix tests that was falsy - per default chunks are flagged as sorted in module
however this only holds true as they are initialized empty. Concatenated module however
has initial modules and therefore is not guaranteed to be ordered, the flags should therfor be false.
Using SortedSet fixes this as a sideeffect
2017-06-18 14:34:32 +10:00
Tobias Koppers 28f826a4e7 consistent order 2017-06-14 23:20:40 +02:00
Tobias Koppers 5d4ba56c5f Allow scope hoisting to process modules in multiple chunks 2017-06-14 22:46:26 +02:00
Tobias Koppers ec966354ca rename shorthand properties correctly
fixes #5027
2017-06-13 13:38:12 +02:00
Tobias Koppers 443b62ffa7 add special case for async without name 2017-06-09 16:04:52 +02:00
Sean Larkin dc315e5f6d feat(uglify): move uglify to external plugin from webpack-contrib 2017-06-07 12:35:50 -05:00
Tobias Koppers 8c7808991c fix lint error 2017-06-07 13:14:13 +02:00
Tobias Koppers 9060137035 generate nicer names 2017-06-07 12:57:15 +02:00
Tobias Koppers 9b58b7a705 generate correct namespace objects
fixes #5020
2017-06-07 12:56:53 +02:00
Tobias Koppers 1c538f9d84 fixes #5000 2017-06-06 11:18:34 +02:00
Tobias Koppers 4372819de1 libIdent should be rootModule 2017-06-05 14:01:19 +02:00
Tobias Koppers 9cd0cacd14 Merge branch 'master' into next 2017-06-03 16:36:38 +02:00
Tobias Koppers 72e94e32a4 Merge pull request #4965 from ymichael/duplicate-blocks
CommonsChunkPlugin can cause duplicate chunk blocks
2017-06-03 09:53:30 +02:00
Tobias Koppers 302289ce24 Merge branch 'master' into next 2017-06-02 16:28:22 +02:00
Tobias Koppers d3a0fc980e Merge pull request #4984 from webpack/bugfix/splitting-compilation
followup from #4968
2017-06-02 12:03:06 +02:00
Tobias Koppers 90159b0d37 Merge pull request #4982 from webpack/perf/optimize
optimize optimization plugins
2017-06-02 11:54:13 +02:00
Tobias Koppers 3caf4675a0 Upstream changes from https://github.com/jantimon/html-webpack-plugin/pull/670#issuecomment-301484908 2017-06-02 11:09:17 +02:00
Tobias Koppers 890a507b08 optimize OccurenceOrderPlugin 2017-06-02 01:24:55 +02:00
Alex Hughes cbc706ba98 Upstream changes from https://github.com/jantimon/html-webpack-plugin/pull/670#issuecomment-301484908 2017-06-01 16:38:27 +02:00
Tobias Koppers b08762b729 optimize optimization plugins 2017-06-01 16:35:07 +02:00
Tobias Koppers cc8e729ff4 detect conflicts with other variables
fixes #4967
2017-05-31 16:46:25 +02:00
Michael Yong 7834e6cd57 CommonsChunkPlugin: Don't allow blocks to contain duplicate chunks
- Add configCase to repro failure
2017-05-30 21:11:42 -07:00
Tobias Koppers 6a0e587768 spacing 2017-05-28 23:51:23 +02:00
Tobias Koppers 44bf6c245f update graph correctly 2017-05-28 17:18:41 +02:00
Tobias Koppers d8539561fd add optimization bailout info
track optimization bailout in concat plugin
2017-05-28 15:25:07 +02:00
Tobias Koppers b4d25208f4 filter modules from modules array 2017-05-24 11:22:42 +02:00
Tobias Koppers 1c3bef901c merge PR #4884 again
by @filipesilva
2017-05-22 20:04:23 +02:00
Tobias Koppers 5d9eef85c7 improvements from review 2017-05-21 09:15:43 +02:00
Tobias Koppers 4a25a17bb6 improvements from review 2017-05-21 09:15:42 +02:00
Tobias Koppers c41ab084f6 fix export mangling in concatenated modules 2017-05-21 09:15:42 +02:00
Tobias Koppers 9b2a9fa786 Scope Hoisting 2017-05-21 09:15:41 +02:00
Tobias Koppers 2bd2d2844c improve a few issues
from review by @Kovensky
2017-05-20 14:54:42 +02:00
Tobias Koppers 8d3efe7d63 Merge branch 'next' into perf/modules-set 2017-05-16 14:37:03 +02:00
Tobias Koppers e1bac32c19 Use a Set to store modules in a chunk 2017-05-16 11:50:50 +02:00
Tobias Koppers b45588bc11 CommonsChunkPlugin in async mode doesn't select initial chunks
fixes #4795
2017-05-04 10:50:46 +02:00
Tobias Koppers 616777b520 fix spacing issue 2017-04-21 18:47:59 +02:00
Tobias Koppers 7ca1297e11 Use a Set in RemoveParentModulesPlugin for performance 2017-04-18 23:28:16 +02:00
Tobias Koppers e8bc9c2b3b use a Set for Module.chunks 2017-04-18 23:27:25 +02:00
Tim Sebastian ed51e2ff2c unify makeRelative method used in aggresivesplittingplugin and recordsidsplugin 2017-04-05 23:38:15 +10:00
Tobias Koppers e7c13d75e4 Merge pull request #4553 from timse/named-chunks-plugin
Named chunks plugin
2017-04-04 09:45:08 +02:00
Tim Sebastian 46f174b756 reuse logic as used in 2.2.1 to check what chunks should get their runtime extracted 2017-04-02 12:14:59 +10:00
Tim Sebastian 9f05520686 check splitData for null and undefined 2017-03-26 20:30:52 +11:00
Tim Sebastian b8e1981e09 allow chunk.id to be a number - or rather a non-null-something 2017-03-26 20:30:52 +11:00
Tobias Koppers 915c150f3a fix bug in MinChunkSizePlugin
fix #4532
2017-03-22 12:09:22 +01:00
Tim Sebastian d7ae9adfb2 do not incorporate chunks without modules 2017-03-18 12:20:08 +11:00
Stephen Hurwitz 87702a29ad Updates UglifyJs to 2.8.x to accept additional compress options
Bumps the minimum version of UglifyJs and substitutes `.compress()` for
`.transform()` as recommended. In addition to a new test covering
`compress` options this commit also contains updates to make existing
tests pass with the update.
2017-03-04 18:31:39 -08:00
Tim Sebastian ff814e91b5 add comments to FlagIncludedChunksPlugin 2017-02-23 23:39:19 +11:00
Tim Sebastian 39575663b7 move chunk parents check up 2017-02-23 23:31:05 +11:00
Tim Sebastian 8d193c7097 improve wording in DedupePlugin error 2017-02-23 23:28:05 +11:00
Tim Sebastian 28b4972d53 replace `chunk.hasRuntime` with `chunk.parents.length === 0`
see https://github.com/webpack/webpack/pull/4310\#discussion_r102400692
2017-02-22 21:38:45 +11:00
Tim Sebastian 59ea80ff9a remove `chunk.isInitial` constraint before moving blocks 2017-02-22 21:35:50 +11:00
Tim Sebastian e1ea0a717c implement review feedback 2017-02-22 21:32:31 +11:00
Tim Sebastian 018ca1ad2c improve comments 2017-02-22 00:13:21 +11:00
Tim Sebastian 61ce0f79c1 apply review feedback 2017-02-22 00:13:21 +11:00
Tim Sebastian cc1636f141 make variable and method names clearer 2017-02-22 00:13:20 +11:00
Tim Sebastian efa8b52293 use children option instead of `selectedChunks === false` 2017-02-22 00:13:20 +11:00
Tim Sebastian 5838f56d0f correct comment 2017-02-21 23:47:55 +11:00
Tim Sebastian ec736bfe21 move actual apply method to the top, to easier find where things happen 2017-02-21 23:47:55 +11:00
Tim Sebastian c97b3de912 add better validation for options, rename async to prevent future clash with reserved words 2017-02-21 23:47:54 +11:00
Tim Sebastian 10cea76e1e fix wrong assignment of filenameTemplate in constructor 2017-02-21 23:47:54 +11:00
Tim Sebastian 9a7a6b93bd add comments and clean up a bit 2017-02-21 23:47:54 +11:00
Tim Sebastian bcc10e8aa6 extract the last step of reconnecting the chunks to own methods 2017-02-21 23:47:54 +11:00
Tim Sebastian 9f18ea9b15 split up and extract default linking between modules and chunks 2017-02-21 23:46:51 +11:00
Tim Sebastian 24b8aebb74 extract reallyUsedModules creation to own simplified methods 2017-02-21 23:46:51 +11:00
Tim Sebastian 15be539d24 fix up method call 2017-02-21 23:46:51 +11:00
Tim Sebastian 24ecaf56be cleanup unused variables 2017-02-21 23:46:50 +11:00
Tim Sebastian 3dc08aec2a extract creation of async chunk 2017-02-21 23:46:50 +11:00
Tim Sebastian 063c54f546 extract creation of usedChunks 2017-02-21 23:46:50 +11:00
Tim Sebastian d53c882929 extract and simplify definition of the common chunk 2017-02-21 23:46:50 +11:00
Tim Sebastian e9ac46dc26 normalize options for commons chunk plugin 2017-02-21 23:46:50 +11:00
Tim Sebastian 952f04d90f node v4 fails to reassignes const in for-of loops properly 2017-02-19 13:18:01 +11:00
Tobias Koppers d0f1f6e770 Merge pull request #4134 from SebastianS90/uglifyjs-extract-comments
UglifyJsPlugin: extract comments to separate file
2017-02-15 15:07:54 +01:00
Simon Sperling c1346f5aa2 fix spelling error in MinChunkSizePlugin 2017-02-13 16:30:27 +01:00
Sebastian Schweizer d2461dab06 improve code (review) 2017-02-10 23:16:20 +01:00