Commit Graph

956 Commits

Author SHA1 Message Date
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
Tobias Koppers d5479d8fa7 move reserved names to top of module 2018-11-29 16:01:37 +01:00
Tobias Koppers fa87116ea1 Merge tag 'v4.26.1' into next
4.26.1
2018-11-29 14:51:27 +01:00
Tobias Koppers fd2133bc5b handle case when minSize > maxSize
fixes #8407
2018-11-23 09:01:53 +01:00
Tobias Koppers dda3c03b8d Refactor getInitFragments to a property in templateContext and apply method
Having only a single method in DependencyTemplate makes it easier to override
2018-11-16 16:40:03 +01:00
Florent Cailhol 8a10ea3c92 Type 'apply' method of plugins 2018-11-12 14:26:31 +01:00
Tobias Koppers eb28697419 move magic property names on __webpack_require__ into RuntimeGlobals file 2018-11-05 15:28:34 +01:00
Tobias Koppers 1c44f95b8c fix bug where module is referenced which is not in the graph 2018-10-24 15:45:10 +02:00
Tobias Koppers 0ae4a58918 make AggressiveSplittingPlugin stable 2018-10-23 11:32:41 +02:00
Tobias Koppers 60b06472f5 make LimitChunkCountPlugin stable
fix integrating non-runtime with runtime chunk
move entry modules when integrating two chunks
2018-10-23 11:32:36 +02:00
Tobias Koppers c04747f17d make LimitChunkCountPlugin stable 2018-10-19 12:57:27 +02:00
Tobias Koppers 7340fbb547 refactor Cache
add a new hookable Cache class
removed CachePlugin
add MemoryCachePlugin
refactor timestamps
create FileSystemInfo class
2018-09-27 13:20:19 +02:00
Tobias Koppers 4f1905aa5a Merge tag 'v4.20.2' into next
4.20.2
2018-09-25 23:13:58 +02:00
Tobias Koppers aab3afbef8 fixes #8085 2018-09-25 21:52:03 +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 1f6b92de3e use declarations from schemas in plugins 2018-09-21 11:04:28 +02:00
Tobias Koppers 5b4cbb5ee0 add queues to Compilation
remove Semaphore and use AsyncQueue instead
deprecate Module.needRebuild, add Module.needBuild
remove Module.unbuild
add Module.invalidateBuild
2018-09-12 13:17:03 +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 b4860ccebb refactor chunk id plugins 2018-09-05 14:28:52 +02:00
Tobias Koppers 4d7b5b3b5e Refactor module id plugins to be independent 2018-09-03 20:45:44 +02:00
Tobias Koppers bd18e019d4 Clone module attributes instead of moving them 2018-09-03 20:12:55 +02:00
Tobias Koppers 888ad3d684 insert concatenated module at correct position
fixes bug where ids are incorrectly assigned
2018-09-03 20:12:55 +02:00
Tobias Koppers 8c8719bd4a
Merge pull request #7954 from webpack/feature/split-chunk-type
add moduleType option to cacheGroup to select by module type
2018-09-03 19:13:26 +02:00
Tobias Koppers 41e59235df emit error when splitChunks.name points to existing chunk name 2018-09-03 10:37:43 +02:00
Tobias Koppers b87e93221b add type option to cacheGroup to select by module type 2018-09-03 10:36:24 +02:00
Tobias Koppers 604460da52 move iterable compare code to comparators 2018-08-28 15:10:30 +02:00
Tobias Koppers bad9d8a271 move Module.id into ChunkGraph
remove disconnect and unseal from Module
2018-08-28 15:08:52 +02:00
Tobias Koppers 02b15a1b46 pass chunkGraph to updateHash instead of moduleGraph
pass chunkGraph to compareModulesById instead of moduleGraph
pass chunkGraph to methods of RuntimeTemplate
use comparators from module at some places
2018-08-28 12:06:53 +02:00
Tobias Koppers 239ce7fcd9 Use ChunkGraph instead of Compilation in updateHash 2018-08-24 12:02:42 +02:00
Tobias Koppers eb63cf80d6 move built flag into Compilation 2018-08-22 15:33:16 +02:00
Tobias Koppers 26022c86a0 move Module.depth into ModuleGraph
nested modules no longer have depth and stay unsorted in stats
2018-08-22 12:45:11 +02:00
Tobias Koppers a92c23ef76 fixes #7930 2018-08-22 11:11:37 +02:00
Tobias Koppers 5a78e96dc9 add backward-compat layer for ModuleGraph and ChunkGraph 2018-08-21 16:17:02 +02:00
Tobias Koppers 42167db4af move Module.index and index2 into ModuleGraph 2018-08-21 16:16:51 +02:00
Tobias Koppers 4dfe88edb0 add moduleGraph argument to comparators 2018-08-21 11:08:07 +02:00
Tobias Koppers 0f1f69a9d6 hide id overriding in HarmonyImportSpecifierDependency 2018-08-21 11:06:59 +02:00
Tobias Koppers 3bb5263bfd move methods from Module into ModuleGraph 2018-08-21 11:04:40 +02:00
Tobias Koppers c21d59f783 Merge tag 'v4.17.0' into next
4.17.0
2018-08-21 11:02:16 +02:00
Tobias Koppers ed9691585e
Merge pull request #7907 from Connormiha/simplify-context-replacmnet-plugin
Get rid of typeof for checking undefined
2018-08-21 10:21:29 +02:00
Mihail Bodrov 1f954b4f12 Get rid typeof undef in all lib 2018-08-21 03:26:50 +03:00
Tobias Koppers 9315ce29aa fix exporting globals in scope-hoisted modules
fixes #7905
2018-08-20 10:54:05 +02:00
Florent Cailhol 7b02084bc5 Replace Basic and Advanced optimzation hooks by stages 2018-08-16 14:10:51 +02:00
Tobias Koppers 6d5310fbd6 allow multiple entryModules per chunk
allow to specify ChunkGroup to depend on
move entry modules into ChunkGraph
2018-08-15 11:51:16 +02:00
Tobias Koppers 3cf01999b5 add ChunkGraph
move chunk modules and module chunks into the ChunkGraph
remove outdated unit tests
2018-08-14 15:32:13 +02:00
Tobias Koppers 1345ab252d fixes #7887 2018-08-14 11:25:59 +02:00
Tobias Koppers f72d36b9cb add support for generics to tooling 2018-08-14 11:20:20 +02:00
Tobias Koppers 34427c1845 migrate to init fragments in ConcatenatedModule 2018-08-09 15:45:45 +02:00
Tobias Koppers 3347700225 improve optimization bailout message usefulness 2018-08-09 15:45:30 +02:00
Tobias Koppers 3618cc1b3c remove originModule from Dependencies and add parent module to ModuleGraph 2018-08-07 14:20:53 +02:00
Tobias Koppers d6cf42e4c2 merge used with usedExports
usedExports = false now means module is not used
2018-08-06 21:05:11 +02:00
Tobias Koppers c4e0a9f72e Move Module.used and Module.usedExports into ModuleGraph 2018-08-06 21:04:01 +02:00
Tobias Koppers 97cc9d7140 Move optimizationBailout into ModuleGraph meta information 2018-08-06 10:42:41 +02:00
Tobias Koppers 3ef5475183 filter connections while replacing module 2018-08-02 17:54:44 +02:00
Tobias Koppers 381e2db200 replace Module.reasons and Dependency.module with ModuleGraph 2018-08-02 17:54:44 +02:00
Tobias Koppers 11e127d162 pass moduleGraph along with multiple methods 2018-08-02 17:54:42 +02:00
Tobias Koppers ec1329a7d4 make libIdent required
add types
2018-08-02 16:29:20 +02:00
Tobias Koppers 78f01763a2 add getNumberofIdOccurrences to Dependency as override-able method 2018-08-02 16:07:29 +02:00
Tobias Koppers f89b599197 add types to Stats
move recorded property into a WeakMap
remove non-existing property
2018-08-02 16:07:29 +02:00
Tobias Koppers 831e71c797 make argument of DependencyTemplate an object 2018-08-02 16:07:29 +02:00
Tobias Koppers 4ce109f8c1 change arguments of Generator.generate and Module.source into a object to be easier extensible
add JavascriptModulesPlugin.getHooks().shouldRender to decide if a module should be rendered
2018-08-02 16:07:29 +02:00
Tobias Koppers f68c1f7ab6 add additional arguments to updateHash 2018-08-02 16:04:10 +02:00
Tobias Koppers d6f8e49c3a refactor getInitFraments to take TemplateContext
add a hack to include the current module as property in source
later we will refactor DependencyTemplate.apply to take a TemplateContext too
2018-07-30 23:07:50 +02:00
Tobias Koppers c5c4f6bdd3 remove DependencyTemplate.getInitFragments.source 2018-07-30 22:42:01 +02:00
Florent Cailhol 71016b1433 Remove DependencyBlockVariable 2018-07-30 22:38:13 +02:00
Florent Cailhol 6ea5a4ad22 Add types 2018-07-30 22:37:10 +02:00
Florent Cailhol 55b73a54af Return null when no InitFragment is required 2018-07-30 22:36:23 +02:00
Florent Cailhol 9b7d9eb96f Fix review comments 2018-07-30 22:36:06 +02:00
Florent Cailhol dcebd57aa4 Replace harmonyInit calls by InitFragments 2018-07-30 22:34:18 +02:00
Tobias Koppers cf5f1d723c format existing code 2018-07-30 21:29:21 +02:00
Florent Cailhol 29c99b1787 Convert GraphHelpers 2018-07-26 22:43:20 +02:00
Tobias Koppers 2fa351a178 make ExportMode.module a callback function
fix comment
2018-07-26 15:53:11 +02:00
Florent Cailhol 60ef6a6a30 Make DependencyReference dynamic 2018-07-26 15:31:04 +02:00
Tobias Koppers 025d3d0836 remove unused code 2018-07-25 13:17:44 +02:00
Tobias Koppers ea96c6bc93 type templates in ConcatenatedModule 2018-07-25 13:16:08 +02:00
Tobias Koppers bc10939096 add types for Module and subclasses
better way to handle "optional" methods
2018-07-25 12:12:17 +02:00
Tobias Koppers 7036ec488b remove the need to rewrite chunk in reasons 2018-07-23 12:20:47 +02:00
Tobias Koppers 66d3f319a6 Merge tag 'v4.16.2' into next
4.16.2
2018-07-23 12:19:16 +02:00
Tobias Koppers 8614c75f11 run inherit types tool on existing code 2018-07-21 13:50:18 +02:00
Tobias Koppers 5e72a6505a remove deprecated optimization options
and update test cases
2018-07-16 10:32:02 +02:00
Tobias Koppers 86ff1a4642 Merge tag 'v4.16.1' into next
4.16.1
2018-07-16 10:30:31 +02:00
Tobias Koppers b0518552e5
Merge pull request #7707 from webpack/remove/deprecated
remove deprecated stuff
2018-07-13 21:36:19 +02:00
Tobias Koppers a672e8f2f9 remove deprecated extracted hooks 2018-07-13 17:30:26 +02:00
Tobias Koppers 753dcce188 fix order of occurrence order plugin
remove enforced additional occurrence order plugin from test cases
make test cases more independent of module/chunk order/ids
2018-07-13 16:15:01 +02:00
Tobias Koppers e0abce0dd8 make DependencyTemplates a new class 2018-07-11 13:11:08 +02:00
Tobias Koppers 1d87734832 remove backward-compat wrapper from splitChunks.cacheGroups argument 2018-07-11 13:08:33 +02:00
Tobias Koppers 2b14ddc984 Merge tag 'v4.16.0' into next
4.16.0
2018-07-11 11:13:47 +02:00
Tobias Koppers 3366421f17
Merge pull request #7663 from webpack/feature/automatic-name-prefix
automaticNamePrefix and name merging bugfix
2018-07-10 20:45:52 +02:00
Tobias Koppers 9362a65287 copy chunk reason to maxSize parts 2018-07-10 10:28:06 +02:00
Tobias Koppers 9f0056b10d
Merge pull request #7686 from webpack/feature/module-chunk-ids-option
add new options moduleIds and chunkIds
2018-07-10 10:19:03 +02:00
ferhat elmas 271b77d45f all: typo fixes 2018-07-09 22:54:35 +02:00
Tobias Koppers 3fc4eb752f add new options moduleIds and chunkIds
deprecate namedModules, hashedModuleIds, namedChunks
add a lot of TODOs for webpack 5
split OccurenceOrderPlugin into separate plugins for modules and chunks
add NaturalChunkOrderPlugin and enable it in development
2018-07-09 15:06:19 +02:00
Tobias Koppers 6623a2e292 Merge tag 'v4.15.1' into next
4.15.1
2018-07-06 09:33:43 +02:00
Tobias Koppers 7fc88cd55f
Merge pull request #7662 from webpack/bugfix/undefined-in-max-size
fixes usage of automaticNameDelimiter in cache groups
2018-07-05 14:42:19 +02:00
Tobias Koppers 9344801fb7 fix wrong priority handling when merging multiple cache groups by name 2018-07-05 14:39:07 +02:00
Tobias Koppers 14968acc00 add automaticNamePrefix option
allow automaticNameDelimiter on cacheGroup level
2018-07-05 14:13:13 +02:00
Tobias Koppers 8e8f1856e9 fixes usage of automaticNameDelimiter in cache groups 2018-07-05 13:19:55 +02:00
Tobias Koppers 64b22c4806 make the cache a WeakMap to not leak memory
fixes #6929
2018-07-05 12:50:51 +02:00
Tobias Koppers 0a06f19fd8 Merge tag 'v4.15.0' into next
4.15.0
2018-07-04 22:19:50 +02:00
Tobias Koppers bd2e3448ec Merge tag 'v4.14.0' into next
4.14.0
2018-07-04 22:10:53 +02:00
Tobias Koppers 994675c4fe Merge tag 'v4.12.2' into next
4.12.2
2018-07-04 21:55:42 +02:00
Tobias Koppers fb2c24bf76 add `splitChunks.maxSize` option
add `splitChunks.fallbackCacheGroup`
add `splitChunks.hidePathInfo`
move `contextify` into utils
add some types
2018-07-04 10:45:02 +02:00
Florent Cailhol d33f49d96f Rename Parser into JavascriptParser 2018-07-03 14:08:43 +02:00
Tobias Koppers 2aac83bd95 rename optimization.splitChunks.cacheGroups.vendors -> defaultVendors
add automaticNamePrefix option
allow automaticNameDelimiter on cacheGroup level
2018-07-02 10:15:13 +02:00
Tobias Koppers 949df5bb5a update webpack-sources types and remove second argument 2018-06-29 19:12:33 +02:00
Tobias Koppers 6e68f96d16
Merge branch 'master' into feature/type-compiler-compilation-save 2018-06-29 19:02:35 +02:00
Tobias Koppers d0c89618f3
Merge branch 'master' into feature/type-compiler-compilation-save 2018-06-27 14:58:10 +02:00
Tobias Koppers 7beac3c645
Merge branch 'master' into feature/hook-into-get-reference 2018-06-27 14:34:28 +02:00
Tobias Koppers ab7ecb30ee fixes #7499 2018-06-26 15:27:44 +02:00
Tobias Koppers 41343d1763 add TODO comments 2018-06-25 16:18:21 +02:00
Tobias Koppers be896f2b34 fix bug 2018-06-23 15:30:04 +02:00
Tobias Koppers 3502287bbb emit correct code for reexport unused exports 2018-06-23 15:13:17 +02:00
Tobias Koppers 50fe2e79ee add Compilation.getDependencyReference and hooks to override it
expose DependencyReference class
2018-06-23 15:13:14 +02:00
Tobias Koppers e1f0a66fd9 add note about webpack 5 refactoring 2018-06-23 14:47:09 +02:00
Sean Larkin c3ebef7f25
Merge branch 'master' into feature/type-compiler-compilation-save 2018-06-21 11:07:33 +03:00
Tobias Koppers 6f90257b5b
Merge pull request #7507 from webpack/feature/dependency-order
add order to dependency reference
2018-06-20 12:17:26 +02:00
Tobias Koppers 58ac64023c
Merge pull request #7558 from webpack/bugfix/split-chunks-reuse
fixes #7499
2018-06-20 10:39:39 +02:00
Tobias Koppers 3f6450410a improve error message for circular reexports
fixes #7547
2018-06-19 23:19:28 +02:00
Tobias Koppers 994613bc20 fixes #7499 2018-06-19 20:47:48 +02:00
Tobias Koppers dabbfa7c4e remove unneeded array 2018-06-08 13:21:18 +02:00
Tobias Koppers b4699c0657 add order for DependencyReference
and add types for touched code
2018-06-08 13:20:57 +02:00
Sean Larkin 1bae93852a
Merge branch 'master' into feature/type-compiler-compilation-save 2018-05-30 19:35:36 -07:00
Tobias Koppers 271fb7b543 more performant changing of reasons 2018-05-30 20:04:37 +02:00
Tobias Koppers 6390240e05 rewrite module reference correctly after replacing ConcatenatedModule
fixes #7443
2018-05-30 09:51:11 +02:00
Florent Cailhol 2a9452e51b Add brackets for multiline if/for statements 2018-05-29 15:45:44 +02:00
Tobias Koppers c01cb97609 Merge commit 'ba703401d580ad623af17fe96ed98b4d801e0313'
# Conflicts:
#	test/__snapshots__/StatsTestCases.test.js.snap
2018-05-29 15:37:58 +02:00
Tobias Koppers 351c9936e6 fixup reasons when redirecting dependencies for side-effects
show reason explanation in stats

fixes #7428
2018-05-29 14:12:31 +02:00
Tobias Koppers 770847171d Merge branch 'master' into bugfix/namespace-object
# Conflicts:
#	lib/RuntimeTemplate.js
2018-05-28 22:42:21 +02:00
Tobias Koppers ae8d6741d7 fix bug with incorrectly emitted modules 2018-05-27 21:53:22 +02:00
Tobias Koppers 115a72ce50 SideEffectsPlugin don't modify cache entries
fixes #7400
2018-05-27 21:53:21 +02:00
Tobias Koppers 374376d6dc fixes #7382 2018-05-24 15:37:52 +02:00
Sean Larkin 74ba87f593
Merge branch 'master' into feature/type-compiler-compilation-save 2018-05-18 21:58:50 -07:00
Tobias Koppers 75db965170 update combination when split fails because of max requests
fixes #7323
2018-05-17 17:44:38 +02:00
Sean Larkin 761d73b4e7 chore(types): add Compiler and Compilation type support 2018-05-15 15:04:38 +02:00
Mihail Bodrov 8d1d569541 Fix remove empty 2018-05-13 02:04:06 +03:00
Mihail Bodrov 9a1eca5e20 Optimize RemoveEmptyChunksPlugin 2018-05-13 01:15:39 +03:00
Tobias Koppers d4a04b8934 Merge branch 'master' into bugfix/namespace-object
# Conflicts:
#	test/__snapshots__/StatsTestCases.test.js.snap
2018-05-09 10:27:23 +02:00
Tobias Koppers 09eb3c9de7 fix bug where splitChunks doesn't work 2018-05-07 12:39:03 +02:00
Tobias Koppers a926a19715 create better namespace objects
avoid using Object.assign (fixes #7162)
2018-05-03 12:55:00 +02:00
Tobias Koppers 05275e6e8e improve SplitChunksPlugin performance
avoid looping
better complexity for finding possible combinations
avoid creating a chunks array
caching
2018-05-01 10:54:00 +02:00
Tobias Koppers 4dabf3075f improve FlagIncludedChunksPlugin performance
using bitmasks and clever bitwise and/or for a fast "maybe contains" check
2018-05-01 10:41:27 +02:00
Tobias Koppers 4daaf6cd33 improve RemoveParentModulesPlugin performance 2018-05-01 10:41:26 +02:00
Tobias Koppers 7b81a06b83
Merge pull request #7147 from kpdecker/concat-cache
Invalidate concatenated module on dep change
2018-04-30 17:40:09 +02:00
Tobias Koppers 81c6041a89
Merge pull request #7102 from alejandroMA/bugfix/runtime-chunk-integration
fix bug where sometimes the runtime would not be present on output
2018-04-30 13:52:50 +02:00
Kevin Decker bd7652823c Invalidate concatenated module on dep change
When the moduleSet for a given concatenated module changed, the source for the embedded modules would not necessarily, which lead to caching mismatch between the source and the modulesWithInfo structure.

Fixes #6168
2018-04-28 15:32:28 -05:00
Tobias Koppers d91caea860 Pretty files for updated prettier version 2018-04-26 20:14:45 +02:00
Alejandro Madariaga Angeles 22b44463ac change Chunk.isRuntimeOnly to Chunk.preventIntegration 2018-04-25 12:45:53 -05:00
Alejandro Madariaga Angeles 3b6d7d873e fix bug where sometimes the runtime would not be present on output 2018-04-23 17:30:14 -05:00
Mohsen Azimi d677bdd0e9 pretty 2018-04-12 11:42:38 +02:00
Mohsen Azimi 6a9ee8fd4e more comment types and one actual code change 2018-04-12 11:42:37 +02:00
Florent Cailhol 36d576cc28 Update ChunkModuleIdRangePlugin to webpack 4 API 2018-04-12 10:08:25 +02:00
Florent Cailhol b8b95cfebc Use compilation instead of this 2018-04-12 09:47:54 +02:00
Tobias Koppers 2fa104f73a avoid walking scopes multiple times for performance reasons 2018-04-03 22:21:04 +02:00
Tobias Koppers 8d8da4cdff Merge branch 'master' into bump_prettier 2018-03-29 11:48:02 +02:00
Tobias Koppers 0f70fcb99f
Merge pull request #6791 from storybooks/spilt-chunks-selector
Support selector function as optimization.splitChunks.chunks option
2018-03-29 11:40:07 +02:00
Mohsen Azimi 77afc92c5f
Remove extra argument sent to HarmonyExportExpressionDependencyConcatenatedTemplate 2018-03-28 22:06:44 -07:00
Florent Cailhol f1092ad516 Update prettier toolchain 2018-03-26 16:56:10 +02:00
Florent Cailhol 3983803d30 Destructure 'require' to improve readability 2018-03-22 12:05:58 +01:00
Hypnosphi 1e2d8ec295 Handle `typeof option === "function"` case 2018-03-20 22:57:02 +03:00
Hypnosphi 3f8a94f1a1 Extract normalizeChunksFilter helper 2018-03-20 15:18:09 +03:00
Hypnosphi f804ff06be Support selector function as optimization.splitChunks.chunks option 2018-03-18 16:51:06 +03:00
Manuel Bauer 771bf859a6 Added chunkFilenameDelimiter option for SplitChunksPlugin: Fixed test issue 2018-03-12 10:32:46 +01:00
Manuel Bauer bda8d52810 Added chunkFilenameDelimiter option for SplitChunksPlugin: Applied requested changes 2018-03-12 10:07:31 +01:00
Manuel Bauer 085d2885e4 Added chunkFilenameDelimiter option for SplitChunksPlugin: Added tests and fixed code style 2018-03-09 14:27:19 +01:00
Manuel Bauer b803c649ee Added chunkFilenameDelimiter option for SplitChunksPlugin: Fixed parameter 2018-03-09 10:28:21 +01:00
Manuel Bauer 36db321e9c Added chunkFilenameDelimiter option for SplitChunksPlugin 2018-03-09 10:12:23 +01:00
Tobias Koppers 4d68350128 fix bug where modules are put into the wrong chunk
fixes #6696
2018-03-07 15:39:43 +01:00
Tobias Koppers 800e7f967b fix #6688 2018-03-06 15:03:33 +01:00
Tobias Koppers 00f70fc65c
Merge pull request #6645 from zacanger/fix/6644
Fix #6644
2018-03-03 18:00:15 +01:00
Tobias Koppers 01c18cc301
Merge pull request #6651 from webpack/feature/split-chunks-filename
allow to configure filename for splitted chunks
2018-03-03 17:58:05 +01:00
Tobias Koppers ecb65aa75a allow to configure filename for splitted chunks
#6598
2018-03-02 10:14:25 +01:00
zacanger 3a41ca4ee2
Fix #6644 2018-03-01 18:25:44 -07:00
Brent Wilton 39095efc34 add todo for ModuleConcatenationPlugin for loop bugfix 2018-03-02 14:08:26 +13:00
Brent Wilton 9f37b499bf improve performance of ModuleConcatenationPlugin for loop 2018-02-28 11:46:12 +13:00
Tobias Koppers 6a5d081f29
Merge pull request #6591 from jsoref/spelling
Spelling
2018-02-27 12:50:34 +01:00
Tobias Koppers e7aba18ed5 fix incorrect optimization bailout messages
fixes #6570
2018-02-26 20:22:58 +01:00
Josh Soref bf7c5af2e9 spelling: fullfil 2018-02-26 02:30:14 +00:00
Josh Soref 676e74660a spelling: chosen 2018-02-26 02:26:06 +00:00
Tobias Koppers f32bd41c52 fix linting 2018-02-25 02:15:37 +01:00
Tobias Koppers 5238159d21 run prettier on existing code 2018-02-25 02:00:20 +01:00
Tobias Koppers 15ab027a42
Merge pull request #6536 from jevan0307/sideEffects-selectors
Add support for more complex sideEffects selectors
2018-02-24 12:17:50 +01:00
Florent Cailhol 40ee8c76d2 Use MD4 for hashing 2018-02-22 11:27:11 +01:00
Jevan Chan c334d0875b replace minimatch with micromatch 2018-02-21 00:36:14 +08:00
Jevan Chan b620a58b40 replace glob-regex with minimatch 2018-02-19 22:50:05 +08:00
Jevan Chan 11c9e736ef Merge branch 'sideEffects-values' of https://github.com/reergymerej/webpack into sideEffects-selectors 2018-02-19 21:39:45 +08:00
Tobias Koppers 244d27a42d improve way of getting combinations of chunks
we no longer require a complexity limit -> maxComplexity removed
2018-02-17 10:16:32 +01:00
Tobias Koppers 1e73752fb2 improve chunk splitting
by also trying to select combinations of module chunks
(limited by complexity)
fix size ordering (was reversed)
add chunk cound ordering
2018-02-17 07:01:00 +01:00
Tobias Koppers edd8daf1d7 Merge branch 'master' into next
# Conflicts:
#	lib/optimize/ConcatenatedModule.js
#	package.json
#	yarn.lock
2018-02-09 17:04:33 +01:00
Tobias Koppers 313944891d
Merge pull request #6432 from webpack/bugfix/split-chunks-duplicate
fixes #6413
2018-02-06 09:14:12 +01:00
Tobias Koppers b50a5b61c4
Merge pull request #6384 from benthemonkey/next
Add "single" option to RuntimeChunkPlugin
2018-02-05 17:35:55 +01:00
Tobias Koppers 4dd521f498 fixes #6413 2018-02-05 17:14:31 +01:00
Tobias Koppers b3f3100259
Merge pull request #6429 from webpack/fix-6426/ENAMETOOLONG
Truncate generated chunk name if too long
2018-02-05 09:16:19 +01:00
Florent Cailhol 6ebdc6b309 Truncate generated chunk name if too long
Fixes #6426
2018-02-02 09:55:52 +01:00
Tobias Koppers 9fde04d299 handle single option in options defaulter
change runtime chunk naming schema
2018-02-01 17:53:15 +01:00
Florent Cailhol 63b4523a15 Pass 'context' as constructor argument 2018-01-30 21:40:44 +01:00
Olivier Combe 2aebfbe48c fix(ConcatenatedModule): don't throw on arrays with empty values
Fixes #6407
Fixes #5415
Ref https://github.com/angular/angular/issues/21809
2018-01-29 15:52:01 +01:00
Ben Rothman c26c872bb2 add "single" option to RuntimeChunkPlugin 2018-01-26 22:03:56 -06:00
Tobias Koppers 72f904a34b run splitChunks and runtimeChunk only on main compiliation 2018-01-24 12:00:50 +01:00
Tobias Koppers 7a1b357aad
Merge branch 'next' into for_of_loops 2018-01-24 09:01:31 +01:00
Florent Cailhol d4811b0d37 Use for-of loops instead of forEach 2018-01-23 22:53:18 +01:00
Florent Cailhol 77bb4c0055 Deprecate forEach* and map* methods 2018-01-23 22:19:59 +01:00
Florent Cailhol 7f303e5260 Use Buffer.from instead of new Buffer 2018-01-22 17:23:34 +01:00
Tobias Koppers ea609374f7 split Chunk.isInitial into isOnlyInitial and canBeInitial
remove includeInitial argument of getChunk(Module)Maps
2018-01-22 12:52:28 +01:00
Florent Cailhol 86e6edf1ab Refactor how source type is handled by the parser 2018-01-22 09:30:43 +01:00
Tobias Koppers b28435eb32 make default cache group explicit
add priority
using cacheGroups doesn't override default cache groups
2018-01-20 13:13:10 +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
Jeremy Greer 2ef4b0101e Add support for sideEffects glob(s)
In addition to Booleans, the `sideEffects` value in a package can
identify child modules with side effects by a glob or Array of globs.
2018-01-18 13:29:22 -06:00
Tobias Koppers 114abeeb4d fix merge issue 2018-01-18 11:31:38 +01:00
Tobias Koppers af90de826c
Merge pull request #6236 from ooflorent/use_map_set
Replace dictionaries by Map or Set
2018-01-18 09:24:36 +01:00
Tobias Koppers 6437964207
Merge pull request #6291 from Iwouldliketobeapig/next
feat: CommonsChunkPlugin indexOf -> includes
2018-01-12 10:57:42 +01:00
dutao 9cbe4f19c5 fix: lint miss ; 2018-01-12 09:07:22 +08: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 7baf6aff08
Merge pull request #6281 from webpack/feature/auto-ccp
Add AutomaticCommonsChunksPlugin and config options and defaults
2018-01-11 11:15:26 +01:00
dutao 58cacb25a0 feat: indexOf -> includes 2018-01-11 17:25:00 +08:00
Tobias Koppers d60a9f5288
Merge pull request #6287 from ooflorent/remove_dedupeplugin
Remove deprecated DedupePlugin
2018-01-10 23:59:50 +01:00
Tobias Koppers acdabb1427 linting, comment and minor improvements 2018-01-10 19:22:25 +01:00
Tobias Koppers 85acfeb1c2 allow to use new options minSize, maxRequests 2018-01-10 18:58:27 +01:00
Tobias Koppers 4b81320695 allow limit requests and chunk size
with defaults
2018-01-10 18:58:27 +01:00
Tobias Koppers b34663cb2d add more config options
fix bugs
2018-01-10 18:58:27 +01:00
Tobias Koppers 417044f065 add AutomaticCommonsChunksPlugin
enable it by default for async chunks
add options for initial chunks
2018-01-10 18:58:26 +01:00
Tobias Koppers 08cd2f0ffe introduce ChunkGroup for AND in parents 2018-01-10 17:12:03 +01:00
Florent Cailhol 67f31aeebc Remove deprecated DedupePlugin 2018-01-09 17:09:18 +01:00
Tobias Koppers 2cbd4685d3
Merge pull request #6250 from webpack/bugfix/json-concat
fix a bug with json modules in concatenated modules
2018-01-06 10:37:30 +01:00
Florent Cailhol 1590751da2 Replace dictionaries by Map or Set 2018-01-06 09:45:57 +01:00
Florent Cailhol 9f13bfec6c Optimize chunk traversal in RemoveParentModulesPlugin 2018-01-05 22:49:55 +01:00
Tobias Koppers 87fdb61c0a better names for interop properties 2018-01-05 22:35:54 +01:00
Tobias Koppers bde926605c fix a bug with json modules in concatenated modules 2018-01-05 22:27:42 +01:00
Florent Cailhol 9f9e730ff3 Use for-of loops instead of forEachModule 2018-01-04 23:15:32 +01:00
Tobias Koppers 53a1d6c7b5 replace harmonyModule flag with exportsType 3-state
exportsType falsy: It's non-harmony module
exportsType "namespace": It's a harmony module, the exports is the namespace object
exportsType "default": It's a harmony module, the exports is the default exports, named exports are properties of the default export
2017-12-22 19:42:41 +01:00
Tobias Koppers 2aac6badd5 move generated runtime code to RuntimeTemplate 2017-12-22 19:41:28 +01:00
Florent Cailhol 9669c9e013 Use Parser#hooks instead of Tapable#plugin 2017-12-21 09:08:10 +01:00
Tobias Koppers 2a1546d355 fix reversed order in OccurenceOrderPlugin
try to keep original order
fallback order by name if index order fails
2017-12-20 20:35:16 +01:00
Tobias Koppers ba00d7495a fix unnecessary module concatenation
allow to display nested modules in stats
2017-12-20 20:35:16 +01:00
Florent Cailhol 31e0c406b7 Bail out concatenation if module uses module.id or module.loaded 2017-12-19 10:08:43 +01:00
Tobias Koppers 27d60f7dd6
Merge pull request #6126 from ooflorent/remove_plugin_calls
Remove more plugin calls
2017-12-15 13:42:38 +01:00
Florent Cailhol 08ddad2e10 Replace NormalModuleFactory#plugin() calls 2017-12-14 14:42:49 +01:00
Florent Cailhol f737b26260 Remove some plugin calls 2017-12-14 14:42:49 +01:00
Tobias Koppers 5cbd6b20dd allow to set sideEffects from rules 2017-12-14 13:08:57 +01:00
Tobias Koppers c64fd70ec4
Merge pull request #6123 from webpack/feature/minimize-production
Switch on minimizing in production mode by default
2017-12-14 01:01:24 +01:00
Tobias Koppers 2148f556a4 Enable minimizing in production mode 2017-12-14 00:06:56 +01:00
Tobias Koppers cc63d51f6a shorter code in concatenated module 2017-12-13 11:17:39 +01:00
Tobias Koppers c68f224272 move providedExports into buildMeta 2017-12-12 17:01:03 +01:00
Tobias Koppers ffb977fed4 refactor meta -> buildMeta, add factoryMeta
add compat layer to Module.meta
2017-12-12 16:57:50 +01:00
Tobias Koppers 758a388f69 pass runtimeTemplate to DependencyTemplate
move outputOptions and requestShortener into runtimeTemplate
2017-12-11 17:59:32 +01:00
Florent Cailhol 36c690d37f Use tapable instead of 'plugin' 2017-12-08 14:23:31 +01:00
Tobias Koppers dae9de6595 Merge branch 'next' into feature/validate-plugin-options
# Conflicts:
#	lib/SourceMapDevToolPlugin.js
#	lib/optimize/AggressiveSplittingPlugin.js
#	yarn.lock
2017-11-28 09:59:59 +01:00
Tobias Koppers aa212a61d0 Merge branch 'master' into next
# Conflicts:
#	lib/optimize/ConcatenatedModule.js
2017-11-24 22:07:20 +01:00
Tobias Koppers 3e58966e3d
Merge pull request #6016 from webpack/performance/improvements
Performance improvements
2017-11-24 21:28:28 +01:00
Tobias Koppers f1efe03b62
Merge pull request #6014 from webpack/performance/merge-duplicate-chunks
use a faster merge duplicate chunks algorithm
2017-11-24 21:28:03 +01:00
Tobias Koppers 5db5512849 faster RemoveParentModule algorithm 2017-11-24 18:14:37 +01:00
Tobias Koppers 46ae001d41 use a faster merge duplicate chunks algorithm 2017-11-24 18:10:48 +01:00
Tobias Koppers c772e51f2d
Merge branch 'next' into eslint-scope 2017-11-24 07:58:23 +01:00
Tobias Koppers 9c25669e47
Merge pull request #6012 from webpack/feature/mjs-import-non-esm
process imports from mjs to non-esm correctly
2017-11-24 07:36:28 +01:00
wtgtybhertgeghgtwtg fe46ac1356 Switch from `escope` to `eslint-scope`. 2017-11-23 16:47:01 -07:00
Joe Lencioni 37d70bd0c6 Avoid calling hash.update multiple times in ConcatenatedModules
@sokra did some profiling and it seems that calling crypto.update
multiple times is slower than calling it once with a large string.

> As explanation I would guess update calls into node.js C++ + OpenSSL
> while concatenating strings is very optimized in JIT.

To take better advantage of this information, I have rewritten this
performance-sensitive code to build up a concatenated string and then
hash it at the end.

Since we are thinking about performance here, I opted for a regular for
loop instead of using the forEach iterator. I also did some basic
benchmarking of string concatenation strategies and discovered that
separating out the addition of the extra space into its own
concatenation line instead of tacking it on to the end of a single
concatenation might just barely have the edge in terms of performance. I
think it is also very readable this way, so it seems like a good
tradeoff to make: a little lost conciseness for speed.
2017-11-23 08:31:16 -08:00
Joe Lencioni 8fdf411b84 Simplify identifier creation in ConcatenatedModules
This was implemented in #5997 to fix some memory issues, but I think we
can make this a little more efficient. By using a single forEach instead
of a map, filter, and join, we avoid unnecessary array creations and
iterations.
2017-11-23 07:47:18 -08:00
Tobias Koppers 21cdc84b71 process imports from mjs to non-esm correctly
give nice error messages when importing non-esm the wrong way
It also disallows using namespace object from non-esm modules

fixes #5686
2017-11-23 14:10:52 +01:00
Tobias Koppers a0ef93f939 aggregate all crypto hash usages into util/createHash
try to avoid calling hash.update with short strings
2017-11-23 11:09:17 +01:00
Tobias Koppers f55547ca6a Merge branch 'master' into next
# Conflicts:
#	lib/Compiler.js
2017-11-23 09:14:58 +01:00
Filipe Silva aef6f19a60 Use shorter identifier for ConcatenatedModules
See https://github.com/webpack/webpack/issues/5992#issuecomment-346384896 for rationale.

Fixes #5992
2017-11-22 16:33:36 +00:00
Tobias Koppers 485c1673b0 fix typo: explaination -> explanation 2017-11-21 18:52:35 +01:00
Tobias Koppers 95407047c4 fix DllPlugin flagging 2017-11-21 13:09:32 +01:00
Tobias Koppers 5d78ba9c90 fix incorrect behavior of CommonsChunkPlugin 2017-11-21 12:56:33 +01:00
Tobias Koppers 2ff9b53754 Use StackedSetMap for better performance 2017-11-19 00:50:10 +01:00
Sergey Petushkov cdd593b847 Rename schemas; Make imports less verbose 2017-11-12 09:48:08 +01:00
Sergey Petushkov d73ad04c72 Add spaces to plugin names 2017-11-12 09:48:08 +01:00
Sergey Petushkov 1065a6e46c Refactor plugins to use schema-utils; Remove unused 2017-11-12 09:48:08 +01:00
Sergey Petushkov 744dbe9b95 Add validations to plugins 2017-11-12 09:48:08 +01:00
Tobias Koppers 00f2b5ede7 advanced module type refactoring
added json type
.mjs default to javascript/esm type
adjusted parser plugins to react on module type
2017-11-11 19:27:19 +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 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 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 4960c5ba4e cleanup CommonsChunkPlugins changes 2017-10-13 10:36:08 +02:00
Tobias Koppers 1bc572a385 rename side-effects to sideEffects 2017-10-12 17:32:41 +02:00
Tobias Koppers 4c2f9e724b Merge branch 'master' into next
# Conflicts:
#	lib/dependencies/HarmonyExportImportedSpecifierDependency.js
2017-10-12 11:28:25 +02:00
Tobias Koppers 5abd69680d Merge branch 'master' into next
# Conflicts:
#	lib/Compilation.js
#	test/statsCases/optimize-chunks/expected.txt
2017-10-11 19:26:00 +02:00
Tobias Koppers 1381f6745b fix crashes when imported module fails compiling 2017-10-11 17:22:11 +02:00
Tobias Koppers 03b0ff2c9c Merge branch 'master' into next 2017-10-11 12:42:31 +02:00
Tobias Koppers d9accb450c Merge pull request #5764 from ljcrapo/commons-chunk-deep-children
Added deepChildren support from ArcEglos' pull request
2017-10-11 12:34:40 +02:00
Tobias Koppers 5a814c09d3 Merge branch 'master' into next
# Conflicts:
#	lib/FunctionModuleTemplatePlugin.js
#	lib/dependencies/HarmonyExportDependencyParserPlugin.js
#	lib/dependencies/HarmonyExportImportedSpecifierDependency.js
#	lib/dependencies/HarmonyModulesHelpers.js
#	lib/optimize/ConcatenatedModule.js
#	test/HarmonyModulesHelpers.test.js
2017-10-09 21:13:18 +02:00
Landon Crapo 87bff6cd98 fixed common-chunk-grandchildren example
* using set instead of array
 * example of async use case
2017-10-09 10:29:38 -06:00
Tobias Koppers 9357ae0254 Refactor precendence rules for harmony exports for better performance
fixes #5763
2017-10-09 15:28:59 +02:00
Landon Crapo 4f9fc01be4 Added deepChildren support from ArcEglos' pull request and fixed failing tests 2017-10-05 15:31:29 -06:00
Tobias Koppers f39e19a2e3 Merge pull request #5066 from webpack/deprecation/webpack-3
remove deprecated stuff
2017-09-22 19:47:23 +02:00
Tobias Koppers b316bee0a6 Use SortableSets for Chunk.parents/blocks 2017-09-22 16:38:47 +02:00
Tobias Koppers 57e4a2d825 fix typo 2017-09-22 16:11:03 +02:00
Tobias Koppers 845c5f5031 Use Set for commonModules. Use getModules instead of modules 2017-09-22 15:44:16 +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 8f58eeeb81 Merge branch 'next' into feature/pure-module
# Conflicts:
#	test/statsCases/commons-plugin-issue-4980/expected.txt
#	test/statsCases/scope-hoisting-multi/expected.txt
#	test/statsCases/tree-shaking/expected.txt
2017-09-15 11:15:45 +02:00
Tobias Koppers 2d84450fba Merge pull request #3333 from webpack/feature/jsonp-to-push
change jsonp function to jsonp array push
2017-09-15 09:47:53 +02:00
Tobias Koppers c383d5ea7f rename `pure-module` to `side-effects` 2017-09-14 15:12:36 +02:00
Tobias Koppers 7ceac63f07 add support for pure modules 2017-09-14 09:44:42 +02:00
Tobias Koppers 5c489b6c5d Refactor harmony modules
separate side effects from specifier
fixes TDZ for export let/const
bigger bundles are caused by correct export const/let behavior

BREAKING CHANGE: Internal have changed. Plugins could rely on them.
2017-09-14 09:44:32 +02:00
Tobias Koppers 90dc6394de Merge branch 'next' into use-set-in-chunks 2017-09-14 09:25:45 +02:00
Tobias Koppers 7387c50c3a change jsonp function to jsonp array push 2017-09-14 08:49:14 +02:00
Tobias Koppers f83c913e53 Merge branch 'master' into refactor/cleanups 2017-09-06 09:39:28 +02:00
Tobias Koppers af470a504e handle inner non-harmony dependencies correctly in ConcatenatedModule
add async as keyword

fixes #5604
fixes #5615
2017-09-04 14:09:55 +02:00
Tobias Koppers 6bdd9dca87 Merge pull request #5535 from webpack/bugfix/incremental-concat-compat
set compatiblity flag correctly even after incremental build
2017-08-16 15:21:04 +02:00
Tobias Koppers c5deb595c5 set compatiblity flag correctly even after incremental build
fixes #5510
2017-08-16 14:59:09 +02:00
Tobias Koppers 99c2706ed3 Ensure that graph structure stay consistent
fixes #5527
2017-08-16 14:05:06 +02:00
Tobias Koppers 0ea37a5485 Disallow Scope Hoisting when using HMR
fixes #5504
2017-08-12 11:00:55 +02:00
Tobias Koppers e5f4eb147a Merge branch 'master' into refactor/cleanups 2017-08-12 10:03:51 +02:00
kisenka 3d272aceea fix: restore `modules` property of ConcatenatedModule (fixes #5477) 2017-08-12 01:01:50 +03:00
kisenka 7a36951aa8 Merge branch 'master' of https://github.com/webpack/webpack into concatenated-module-in-3.5-compat 2017-08-12 00:58:43 +03:00
Tobias Koppers 0e73a2458a also generate a new identifier for interop name
fixes #5481
2017-08-10 12:14:31 +02:00
kisenka 438fd14ae5 fix: restore backwards compatibility of ConcatenatedModule (fixes #5477) 2017-08-10 00:23:40 +03:00
Tobias Koppers bc67522c74 fixes stack overflow with circular dependencies
fixes #5462
2017-08-09 10:31:01 +02:00
Tobias Koppers b05b49b0f0 fix invalid generated code with scope hoisting and non-number ids 2017-08-08 13:09:47 +02:00