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
Tobias Koppers
91bfd4559a
move pathinfo comment into Template helper function
...
change toIdentifier to generate less underscores
2017-08-08 09:42:43 +02:00
Tobias Koppers
0b8023a106
fixes #5096
2017-08-08 08:15:18 +02:00
Tobias Koppers
7619c43d26
generate more pretty names for nested concatenation
2017-08-07 21:21:53 +02:00
Tobias Koppers
6607cfa4bd
remove ordering in ModuleConcatenationPlugin
2017-08-07 20:33:47 +02:00
Tobias Koppers
9f5bffaa61
beautify
2017-08-07 16:15:49 +02:00
Tobias Koppers
334c1c49aa
remove unused variable
2017-08-07 16:05:17 +02:00
Tobias Koppers
8835751cb3
fix conflict handling
...
remove unused code
2017-08-07 15:43:17 +02:00
Tobias Koppers
b77a52b43a
add reserved words to avoid syntax errors
2017-08-07 14:47:45 +02:00
Tobias Koppers
16a5831620
use old new Buffer api for node 4
2017-08-07 14:39:07 +02:00
Tobias Koppers
2be9c526e4
better names, added export comment
2017-08-07 14:38:54 +02:00
Tobias Koppers
a553c3d15d
tests and fixes
2017-08-07 14:12:31 +02:00
Tobias Koppers
795f6fcbba
fix remaining issues and edge cases
2017-08-07 13:56:50 +02:00
Tobias Koppers
abff6b7805
use all imports in a concatenated module
2017-08-07 13:19:24 +02:00
Tobias Koppers
ec3aa7be5d
Fix import order
2017-08-07 11:53:07 +02:00
Tobias Koppers
907cd16595
fix a bug that prevented the automatic chunk selection to select initial chunks
...
fixes #5145
fixes #5386
fixes #5285
fixes #5109
2017-07-27 14:32:35 +02:00
Tobias Koppers
32264b8187
Merge branch 'master' into feature/improve-module-concat-bailout-messages
2017-07-25 13:50:53 +02:00
Tobias Koppers
35c8097b6a
Make sure it's a real module when choosing for ModuleConcatenation
...
fixes #5095
2017-07-25 12:53:54 +02:00
Tobias Koppers
42af3d28df
Merge pull request #5347 from webpack/cleanup/aggressive-splitting
...
aggressive-merging-plugin: refactor for more readability
2017-07-24 12:56:36 +02:00
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
Sebastian Schweizer
71933e979e
UglifyJsPlugin: extract comments to separate file
...
License comments use up a lot of space, especially when using many small
libraries with large license blocks. With this addition, you can extract
all license comments to a separate file and remove them from the bundle
files. A small banner points to the file containing all license
information such that the user can find it if needed.
We add a new option extractComments to the UglifyJsPlugin.
It can be omitted, then the behavior does not change, or it can be:
- true: All comments that normally would be preserved by the comments
option will be moved to a separate file. If the original file is
named foo.js, then the comments will be stored to foo.js.LICENSE
- regular expression (given as RegExp or string) or a function
(astNode, comment) -> boolean: All comments that match the given
expression (resp. are evaluated to true by the function) will be
extracted to the separate file. The comments option specifies
whether the comment will be preserved, i.e. it is possible to
preserve some comments (e.g. annotations) while extracting others or
even preserving comments that have been extracted.
- an object consisting of the following keys, all optional:
- condition: regular expression or function (see previous point)
- file: The file where the extracted comments will be stored. Can be
either a string (filename) or function (string) -> string which
will be given the original filename. Default is to append the
suffix .LICENSE to the original filename.
- banner: The banner text that points to the extracted file and will
be added on top of the original file. will be added to the
original file. Can be false (no banner), a string, or a function
(string) -> string that will be called with the filename where
extracted comments have been stored. Will be wrapped into comment.
Default: /*! For license information please see foo.js.LICENSE */
2017-02-10 11:59:56 +01:00
Tobias Koppers
be4f27c51d
Merge pull request #4200 from timse/allow-to-supress-uglifyjs-warnings
...
Allow to supress uglifyjs warnings
2017-02-09 14:08:01 +01:00
Tobias Koppers
93ac8e9c36
Merge pull request #4205 from timse/use-let-const-as-blockscoped-variables
...
Use let const as blockscoped variables
2017-02-08 09:44:03 +01:00
Simon Legner
ea4be07d45
Link documentation to webpack.js.org
...
Replaces webpack.github.io links with links to the new documentation.
2017-02-07 10:07:01 +01:00
CUNTIE
3fc1f42b53
fix AggressiveSplittingPlugin logical bug
2017-02-07 09:24:36 +08:00
Tim Sebastian
5321ae6902
fixup AggressiveSplittingPlugin
2017-02-05 13:10:08 +11:00
Tim Sebastian
8e7022b443
refactor MinChunkSizePlugin to be more functional
2017-02-05 12:20:23 +11:00
Tim Sebastian
bd386ecf06
remove leftover console.log in ChunkModuleIdRangePlugin
2017-02-05 12:20:23 +11:00
Tim Sebastian
1d78f990a6
use const where applicable in UglifyJsPlugin
2017-02-05 12:20:22 +11:00
Tim Sebastian
92364dc0f7
avoid reassigning stream with different value in UglifyJsPlugin
2017-02-05 12:20:22 +11:00
Tim Sebastian
104398f87a
avoid reassigning files with different value in UglifyJsPlugin
2017-02-05 12:20:21 +11:00
Tim Sebastian
1028043e38
make LimitChunkCountPlugin more functional avoid too much reassigning
...
add some doco for better understanding of what is happening
2017-02-05 12:20:21 +11:00
Tim Sebastian
0a0b72776d
use const where applicable in EnsureChunkConditionsPlugin
2017-02-05 10:40:10 +11:00
Tim Sebastian
68ab778373
use const where applicable in ChunkModuleIdRangePlugin
2017-02-05 10:38:56 +11:00
Tim Sebastian
e42b603c46
make use of block scoped nature of let and const in AggressiveSplittingPlugin
2017-02-05 10:37:36 +11:00
Tim Sebastian
7968caa6b1
use const where applicable in AggressiveMergingPlugin
2017-02-05 10:33:54 +11:00
Tim Sebastian
e107cc598a
allow to filter uglify warnings by adding option "warningsFilter"
...
only works if "sourceMap" setting is true
2017-02-05 01:37:10 +11:00
Tobias Koppers
089356faa3
fixes a bug in OccurrenceOrderPlugin
2017-01-30 22:49:53 +01:00
Tobias Koppers
b07dc3da27
Merge pull request #3745 from shubheksha/refactor-CommonsChunkPlugin
...
refactor(ES6): upgrade commonsChunkPlugin to ES6
2017-01-26 15:57:32 +01:00
Tobias Koppers
d7384e2f6a
removed unnecessary context argument
2017-01-25 23:11:07 +01:00
Tom910
665fbd0ca8
Fix todo comments
2017-01-25 22:47:11 +03:00
Tom910
74efa93d5f
More refactoring Compilation.js and RemoveParentModulesPlugin.js
2017-01-25 22:39:24 +03:00
Tom910
588976d5e9
Deleting cache length size to loop
2017-01-24 22:39:38 +03:00
Shubheksha Jalan
8d315b1630
cleaned up some functions
2017-01-24 16:39:46 +05:30
Shubheksha Jalan
4b06eb94e9
fix merge commits
2017-01-24 16:17:12 +05:30
Tom910
eb87ae931d
Refactoring and optimize RemoveParentModulesPlugin.js
2017-01-23 21:52:47 +03:00
Tobias Koppers
8e69a80847
code linting
2017-01-11 12:29:01 +01:00
Shubheksha Jalan
bc6a6ad324
cleaned up a few functions
2017-01-10 17:18:36 +05:30
Shubheksha Jalan
15d6a5e7ea
formatted the template string to remove extra whitespace and line breaks
2017-01-10 17:18:36 +05:30
Shubheksha Jalan
1f6431e4df
refactor(ES6): changed lengthy error message string to template literal
2017-01-10 17:18:36 +05:30
Shubheksha Jalan
29bf3e72f3
refactor(ES6): upgrade CommonsChunkPlugin to ES6
2017-01-10 17:18:36 +05:30
Shubheksha Jalan
9215b6affd
refactor(ES6): upgrade CommonsChunkPlugin to ES6
2017-01-10 17:18:36 +05:30
Shubheksha Jalan
126eb9158a
refactor(ES6): upgrade OccurrenceOrderPlugin to ES6 ( #3756 )
2017-01-05 11:47:05 -06:00
Shubheksha Jalan
a133c90b91
refactor(ES6) upgrade RemoveEmptyChunksPlugin to ES6 ( #3765 )
...
* refactor(ES6): upgrade RemoveEmptyChunksPlugin to ES6
2017-01-05 10:48:16 -06:00
Shubheksha Jalan
70bf6c2817
refactor(ES6): upgrade MinChunkSizePlugin to ES6 ( #3757 )
...
* refactor(ES6): upgrade MergeDuplicateChunksPlugin to ES6
2017-01-04 23:42:36 -06:00
Shubheksha Jalan
4149f10764
refactor(ES6): upgraded LimitChunkCountPlugin to ES6 ( #3754 )
2017-01-04 22:17:12 -06:00
Shubheksha Jalan
80e177a2a5
refactor(ES6): upgraded FlagIncludedChunksPlugin to ES6 ( #3752 )
2017-01-04 16:23:48 -06:00
Shubheksha Jalan
4699cccdae
refactor(ES6): upgrade EnsureChunkConditionsPlugin to ES6 ( #3751 )
2017-01-04 16:21:38 -06:00
Shubheksha Jalan
771c6b2877
refactor(ES6): upgrade DedupePlugin to ES6 ( #3749 )
2017-01-04 15:18:39 -06:00
Shubheksha Jalan
d1361ae078
refactor(ES6): upgrade AggressiveMergingPlugin to ES6 ( #3732 )
...
* refactor(ES6): upgrade AggressiveMergingPlugin to ES6
2017-01-04 15:18:16 -06:00
Shubheksha Jalan
7dae8fbc00
refactor(ES6): upgrade AggressiveSplittingPlugin to ES6 ( #3743 )
...
* refactor(ES6): upgrade AggressiveSplittingPlugin to ES6
* refactor(ES6): remove this hack and fix this value in arrow function
2017-01-04 13:15:54 -06:00
Shubheksha Jalan
61251de9c0
refactor(ES6): upgrade RemoveParentModulesPlugin to ES6 ( #3731 )
2017-01-04 12:44:01 -06:00
Shubheksha Jalan
d7b97e86a1
refactor(ES6): upgrade ChunkModuleIdRangePlugin to ES6 ( #3727 )
2017-01-04 09:13:05 -06:00
Adam Markon
879adef6c7
refactor UglifyJSPlugin to ES6 class ( #3717 )
2017-01-03 23:53:37 -06:00
Sean Larkin
aa8d01bf8d
refactor(eslint): Added no-unsed-vars, env specific .eslintrc's for buildin & hot ( #3636 )
...
* refactor(eslint): Added no-unsed-vars, env specific .eslintrc's for buildin & hot
* This change allows for buildin to now be part of the lint test by addition of an extra .eslintrc file which extends existing but sets es6 to false
* Turned on no-unused-vars for eslint, and then removed all warnings from turning that feature on
* Was getting notified of errors in "quote" property in eslintrc, so changed to correct value from error to 2.
* beautify
* swap invalid eslint config val
2016-12-30 09:43:49 -06:00
James Hartig
0676304822
Pass mangle options to ast.figure_out_scope in uglify
2016-12-16 16:19:06 -05:00
Tobias Koppers
c87d3ec523
Merge pull request #3428 from webpack/feature/performance
...
performance improvements
2016-12-14 21:18:44 +01:00
Tobias Koppers
f4ab7fc7e2
more performance improvements
2016-12-14 16:22:54 +01:00
Tobias Koppers
da29d21ae4
performance improvements
...
breaking change: Module has now a "unbuild" method that must work correctly
2016-12-14 16:22:16 +01:00
Tobias Koppers
d0beb306ee
check chunk condition before moving into commons chunk
2016-12-14 13:59:47 +01:00
inuscript
4bf2ba46af
revert this.async (avoid may breaking change)
2016-12-07 09:43:17 +09:00
inuscript
d03203d260
change async variable name
2016-12-07 08:54:10 +09:00
inuscript
dcff8c833f
Fill available params on Deprecation notice
2016-12-06 19:55:48 +09:00
Tobias Koppers
91cbb4c288
removed DedupePlugin
...
it's no longer needed for npm3
and causes many issues
2016-11-15 09:25:58 +01:00
Tushar Sonawane
34c02a9c15
fix 'no-loop-func' warnings
2016-10-29 18:53:54 +05:30
Tobias Koppers
f9b81a7509
make sure module moving don't hang in circular chunk dependencies
...
fixes #2990
2016-09-18 10:30:05 +02:00
Tobias Koppers
a0a920d83f
added experimental plugin to set custom module ids
2016-09-16 01:18:21 +02:00
Duncan Beevers
e7a06a79e2
Log original and mapped filename+line+column on uglify error
2016-08-03 21:35:57 -05: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
cf00a1a22d
rewrite cases where js beautify and eslint disagree on formatting
2016-06-20 21:46:27 +02:00
Simen Bekkhus
b1bdd6989f
Use eslint's indent rule
2016-06-20 08:21:00 +02:00
Tobias Koppers
7fdfdbd43b
correct linting
2016-06-16 01:05:17 +02:00
Tobias Koppers
ffd2d37efd
changed defaults for uglifyjsplugin, no source mapping, no warnings
2016-05-29 12:17:59 +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
795092fcea
fixed small mistake in array check
2016-04-11 00:38:18 +02:00
Tobias Koppers
996b6c80ae
cache parent checks, check faster array for contain
2016-04-10 23:55:37 +02:00
Tobias Koppers
7a15344eb1
reverted new algorithm for removing modules from parent chunks
2016-04-10 23:38:41 +02:00
Max Kostow
6cbd6997d3
skip commonModules if minChunks===Infinity
2016-04-06 13:51:21 -04:00
Tobias Koppers
2d7a7adade
use index instead of debugId
...
fixed chunk propagation
2016-02-24 23:57:42 +01:00
Tobias Koppers
a867825774
new algorithm for removing modules from parent chunks
...
#1905
2016-02-24 23:23:34 +01:00
Tobias Koppers
b93aacbecf
DedupePlugin cannot be cached
2016-02-09 22:34:10 +01:00
Tobias Koppers
c501b5d5af
fixed #2011
2016-02-08 09:54:13 +01:00
hh9527
1021faf13c
Fix #1983 : Object properties can be mangle now.
...
Use the following config:
```js
{
plugins: [
new webpack.optimize.UglifyJsPlugin({
mangle: {
props: {
regex: /_$/
},
},
}),
]
}
```
2016-02-08 09:52:10 +01:00
Ian Ker-Seymer
d0c6e98dee
Use better error message for when given multiple args for CommonChunksPlugin
2016-01-21 23:01:00 -05:00
Kenny Tran
eebc5ceaf6
Fix no-redeclare in code
2016-01-18 18:57:42 -08:00
Tobias Koppers
ded70aef28
moves stuff from webpack-core to webpack-sources
2015-12-29 17:44:55 +01:00
Tobias Koppers
e5c11c721e
Merge branch 'webpack-1'
...
Conflicts:
lib/optimize/CommonsChunkPlugin.js
package.json
2015-11-20 21:35:37 +01:00
Tobias Koppers
181da3c004
fixed another bug with the CommonsChunkPlugin
...
when using multiple commons chunks
other optimization plugins doesn't optimize perfectly
2015-11-20 21:29:32 +01:00
Tobias Koppers
556872b38f
fixed bug in CommonsChunkPlugin
...
when passing passing mixed existing and not existing names
2015-11-20 20:24:06 +01:00
Tobias Koppers
67656b90e2
split uglify-js from loader minimize, better shortcut defaults
2015-11-16 23:11:15 +01:00
Tobias Koppers
5879483eb1
fixed formating
2015-10-31 15:31:10 +01:00
Tobias Koppers
0f0ede8a2c
removed deprecated parameters for plugins
2015-10-28 23:26:52 +01:00
Tobias Koppers
9dffb44c93
Merge branch 'master' into webpack-2
2015-10-28 22:33:11 +01:00
Sanghvi
6c3cd7750c
Fix indentation in uglifyjs change
2015-10-12 18:34:13 -07:00
Sanghvi
d1600176bd
Reset uglify's base54 counters for each file
2015-10-12 16:47:49 -07:00
Tobias Koppers
7934faa181
Merge branch 'master' into webpack-2
...
Conflicts:
.travis.yml
bin/config-optimist.js
package.json
test/TestCases.test.js
2015-08-09 13:32:19 +02:00
Tobias Koppers
6782a1e2bb
Merge pull request #1270 from bhamodi/master
...
Use secure links.
2015-08-08 13:00:43 +02:00
Tobias Koppers
44f919ecc7
Merge branch 'master' into webpack-2
...
Conflicts:
test/statsCases/chunks/expected.txtT
2015-08-08 09:40:35 +02:00
Alberto Leal
4024689e63
Stronger check and override of comments in UglifyJsPlugin options
...
Fixes https://github.com/webpack/webpack/issues/324
2015-07-26 21:26:27 -04:00
Baraa Hamodi
3bcf17dca0
Use secure links.
2015-07-20 15:29:53 -07: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
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
Avi Haiat
daff7440a6
feat(app): Fix some obvious lint errors and warnings
2015-07-08 15:52:41 +03:00
Tobias Koppers
8cfeb51c30
refactoring and bug fixes
2015-07-07 00:11:13 +02:00
Tobias Koppers
cf30eeeb0f
Merge branch 'master' into webpack-2
...
Conflicts:
lib/ChunkTemplate.js
lib/Compilation.js
lib/HotModuleReplacement.runtime.js
test/TestCases.test.js
test/statsCases/chunks/expected.txt
test/statsCases/simple-more-info/expected.txt
test/statsCases/simple/expected.txt
2015-07-01 00:44:17 +02:00
Tobias Koppers
a04ffb9283
added (experimental) NamedModulesPlugin
2015-06-27 22:47:51 +02:00