Commit Graph

542 Commits

Author SHA1 Message Date
Tobias Koppers 66d3f319a6 Merge tag 'v4.16.2' into next
4.16.2
2018-07-23 12:19:16 +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 569c415623
Merge branch 'master' into enable-noImplicitThis 2018-07-11 08:43:26 +02:00
ferhat elmas 271b77d45f all: typo fixes 2018-07-09 22:54:35 +02:00
Mohsen Azimi a0e1ad920e Enable noImplicitThis TypeScript compiler option 2018-07-05 08:07:46 +03:00
Tobias Koppers 0a06f19fd8 Merge tag 'v4.15.0' into next
4.15.0
2018-07-04 22:19:50 +02:00
Tobias Koppers f0ae54d478 Merge tag 'v4.13.0' into next
4.13.0
2018-07-04 22:08:31 +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
Sean Larkin 2d1cd74d37
Merge branch 'master' into feature/type-compiler-compilation-save 2018-06-29 11:53:40 -07:00
Tobias Koppers b06cca2371
Merge pull request #7626 from webpack/format/arrow-functions
arrow functions, remove or improve eslint-disable comments
2018-06-29 20:41:54 +02:00
Tobias Koppers d0c89618f3
Merge branch 'master' into feature/type-compiler-compilation-save 2018-06-27 14:58:10 +02:00
Tobias Koppers ad8f496745 arrow functions, remove or improve eslint-disable comments 2018-06-27 13:48:13 +02:00
Florent Cailhol 91663f19a2 Remove deprecated APIs 2018-06-27 10:08:12 +02:00
Tobias Koppers 0f587763e1 add per chunk index and index2
refactor index generation
2018-06-26 18:26:47 +02:00
Tobias Koppers ee5574dc16 allow iterable for SortableSet 2018-06-25 16:37:20 +02:00
Tobias Koppers 5b4547e0ac cleanup Hash types 2018-06-25 10:44:54 +02:00
Sean Larkin c3ebef7f25
Merge branch 'master' into feature/type-compiler-compilation-save 2018-06-21 11:07:33 +03:00
Tobias Koppers 7c5cab0b0f remove eslint disable comment 2018-06-20 12:12:35 +02:00
Mohsen Azimi 04d2af0825 Sean comments (even more code questions?) 2018-06-19 15:48:00 -07:00
Mohsen Azimi 5c43271397 remove all ts syntax 2018-06-19 15:35:58 -07:00
Mohsen Azimi 4859c926ad CR comments - remove TS syntax (one last type error) 2018-06-19 15:32:15 -07:00
Mohsen Azimi 1d39cce941 Type SortableSet 2018-06-06 08:11:30 -07:00
Sean Larkin 1bae93852a
Merge branch 'master' into feature/type-compiler-compilation-save 2018-05-30 19:35:36 -07:00
Florent Cailhol 2a9452e51b Add brackets for multiline if/for statements 2018-05-29 15:45:44 +02:00
Tobias Koppers 2f3e7d4bd7
Merge pull request #7331 from dev-drprasad/add-jsdoc-annotations-cached-merge
📝 Add JSDoc annotations for cached merge util function
2018-05-25 12:00:17 +02:00
Tobias Koppers 342c3c6fec Merge branch 'master' into feature/type-compiler-compilation-save
# Conflicts:
#	yarn.lock
2018-05-24 18:56:04 +02:00
Jonathan del Strother 6bf9479af2 Don't record absolute paths for regexps used in dynamic requires
This avoids records like:

"src/dependencies sync ../../../../^/.//.*$": "./src/dependencies sync recursive ^\\.\\/.*$"

with the number of "../"s varying according to the depth of the folder you're building from.

Fixes #7339
2018-05-21 09:49:35 +01:00
REDDY PRASAD 10c850de65 📝 Add annotations and description to cachedMerge util function 2018-05-19 23:12:56 +05:30
REDDY PRASAD 217a657b78 🚧 WIP 2018-05-17 23:23:28 +05:30
Tobias Koppers 3072378892 bugfixes and corrections 2018-05-15 15:04:40 +02:00
Sean Larkin 761d73b4e7 chore(types): add Compiler and Compilation type support 2018-05-15 15:04:38 +02:00
Tobias Koppers f2ad440de8 More strict linting of jsdocs
Use TODO over any when type is possible
2018-05-08 14:53:33 +02:00
Sean Larkin f1618aed04 chore(Chunk): add type annotations for Chunk 2018-05-03 16:17:58 -07:00
Tobias Koppers d5eeda7f80
Merge pull request #7133 from webpack/feature/type-set-helpers
chore(types): add type support for SetHelpers
2018-05-01 14:32:18 +02:00
Tobias Koppers 645f98ae2d improve SortableSet performance 2018-05-01 10:41:26 +02:00
Tobias Koppers 9c3c862142
remove `@description` 2018-04-30 09:18:49 +02:00
Sean Larkin 487d74d74d chore(types): add type support for SetHelpers 2018-04-26 21:30:00 -05:00
Tobias Koppers 0e73be3caf
Merge pull request #7051 from webpack/feature/type-utils-identifier
refactor(types): add type comments for util/identifier
2018-04-23 15:11:19 +02:00
Florent Cailhol 6b583e3751 Add Queue typing 2018-04-23 09:02:34 +02:00
Sean Larkin f7790f8382 update typedef to be more readable with @property 2018-04-20 15:37:42 -06:00
Sean Larkin 0dbbcdd82b refactor(types): add type comments for util/identifier 2018-04-14 14:31:11 -07:00
Sean Larkin 10282ea206
Merge pull request #6862 from mohsen1/ts
Add TypeScript type checking
2018-04-12 10:07:15 -07:00
Tobias Koppers 985e6fb001 fix race condition when using loadModule
change Semaphore to continue prefer acquire in the same tick

fixes #6836
fixes #6902
2018-04-12 15:54:35 +02:00
Mohsen Azimi 5b236e53da More type fixes (these changes should be merged as separate PRs 2018-04-12 11:42:39 +02:00
Mohsen Azimi 22679069f8 Fix lint issues 2018-04-12 11:42:38 +02:00
Mohsen Azimi d677bdd0e9 pretty 2018-04-12 11:42:38 +02:00
Mohsen Azimi 0ced385223 Comment fixes 2018-04-12 11:42:36 +02:00
Mohsen Azimi 09cdcb0661 More comment based type fixes 2018-04-12 11:42:36 +02:00
Florent Cailhol fac34248f4 Simplify cachedMerge 2018-04-10 22:12:30 +02:00
Tobias Koppers 5238159d21 run prettier on existing code 2018-02-25 02:00:20 +01: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 9c8098c635
Merge pull request #6370 from webpack/remove_v3_deprecated
Remove v3 deprecated APIs
2018-01-24 09:43:10 +01:00
Florent Cailhol 7b8fa112e0 Remove v3 deprecated APIs 2018-01-23 23:25:01 +01:00
Evan Scott 1f29fa9b51 perf: refactor various timestamp caches into ES6 Maps
This change satisfies https://github.com/webpack/webpack/issues/6234
which desires to change the timestamp caches from plain objects to
the ES6 Map type to avoid deopts, since v8 expects things to be
added to Maps but objects are only fast if properties aren't added
dynamically after initial assignment.
2018-01-23 02:30:22 -05:00
Tobias Koppers 0206949075 remove unused code 2018-01-21 11:12:36 +01:00
Tobias Koppers fabd1abb41 improvements from review by @ooflorent 2018-01-20 11:28:45 +01:00
Tobias Koppers 18ae73dad4 Refactor chunk graph
Chunks are now always in ChunkGroups
ChunkGroups have parents and children, Chunks no longer have this
AsyncDependenciesBlocks point to a ChunkGroup instead of a list of chunks
Entrypoint is now a ChunkGroup (extends from it)
move stuff graph modification methods into GraphHelpers
Change chunk id recording to source-based
Chunks have parents, siblings and children in Stats
rename AutomaticCommonsChunksPlugin to SplitChunksPlugin
add request property to origin (ChunkGroup)
remove moveToParent from AggressiveMergingPlugin
fix issues with AggressiveSplittingPlugin
remove CommonsChunkPlugin
add optimization.runtimeChunk (RuntimeChunkPlugin)
fix a filename bug for initial chunks
remove extract-text-webpack-plugin from test suite
add DebugHash to help debugging hash issues
fix issues with entry modules in different chunk as runtime
redo optimization.splitChunks options
Compilation.entrypoints is now a Map
Compilation.chunkGroups has been added
remove some unittests
update examples
update tests with CommonsChunkPlugin
2018-01-19 19:21:30 +01:00
Tobias Koppers 2126f085b1
Merge pull request #6286 from ooflorent/sortable_set_cache
Reduce SortableSet memory consumption
2018-01-12 10:57:10 +01:00
Florent Cailhol a4fec7932e Reduce SortableSet memory consumption 2018-01-11 16:01:24 +01:00
Tobias Koppers 0404564468 ensure that items are not enqueued twice
Use nice SetIterator trick
2018-01-11 13:37:29 +01:00
Tobias Koppers 84a3b2cd17
Merge pull request #6146 from EugeneHlushko/feature-xxhashjs
Feature: Non-crypto hashing algorithm and opt-in through config
2017-12-21 08:48:52 +01:00
EugeneHlushko 62395cf6dd Feature: Non-crypto hashing algorithm opt-in through config: make linters happy again 2017-12-20 14:30:36 +02:00
EugeneHlushko 26257bc0f5 Feature: Non-crypto hashing algorithm opt-in through config: use non-native hash example 2017-12-20 12:29:00 +02:00
Cody Ogden f5b57f4764 Extract TrackingSet class from the Parser.js module.
@TheLarkInn suggested this class be extracted from this file during the live stream tonight. A similar class was removed and placed in the  directory.
- Created
2017-12-20 01:37:49 -06:00
EugeneHlushko 307566a7a1 Feature: Add an option to provide output.hashFunction as a function 2017-12-19 19:53:08 +02:00
Tobias Koppers 0376a321de recycle nodes in Queue 2017-12-01 11:27:02 +01:00
Tobias Koppers 7e8936c64e make formatter happy 2017-11-23 11:47:22 +01:00
Tobias Koppers 6b40b1699e inline flush, reduce bulk size 2017-11-23 11:45:48 +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 4c4121b948 fix test and lint issues 2017-11-19 09:06:40 +01:00
Tobias Koppers 2ff9b53754 Use StackedSetMap for better performance 2017-11-19 00:50:10 +01:00
Tobias Koppers 5e39ec46ee Allow to override resolve configuration 2017-11-18 08:12:35 +01:00
Tobias Koppers 1b28c93eaf renamed methods 2017-11-06 12:15:23 +01:00
Tobias Koppers 801138a3b3 allow caching in sortable set and use it 2017-11-03 10:17:08 +01:00
Tobias Koppers 814c894168 Merge branch 'master' into next
# Conflicts:
#	lib/optimize/CommonsChunkPlugin.js
#	test/statsCases/limit-chunk-count-plugin/expected.txt
#	test/statsCases/named-chunks-plugin-async/expected.txt
#	test/statsCases/optimize-chunks/expected.txt
2017-10-16 10:47:17 +02:00
Tobias Koppers 11e28793fa improve performance by doing a breath-first traversal in the chunk graph
This is faster because shorter paths usually have less modules available.
This allows to reach minimal modules faster
2017-10-12 20:03:36 +02:00
Tobias Koppers 07992cf588 fix sorting issue 2017-09-22 17:23:49 +02:00
Tobias Koppers 6bd937d768 make things consitent 2017-09-22 14:07:28 +02:00
Tobias Koppers f53c0ceb84 Merge pull request #5322 from webpack/performance/parser
Parser performance improvements
2017-09-11 12:41:28 +02:00
Tobias Koppers 66385458a6 use marker objects to support any value in StackedSetMap 2017-08-11 16:38:17 +02:00
Tobias Koppers f9bf8a9085 Limit the number of parallel processed modules
fixes #3164
fixes #3166
2017-08-11 16:11:17 +02:00
Tobias Koppers 25805470c1 move StackedSetMap into separate file 2017-08-11 12:30:33 +02:00
Tobias Koppers 0a540b4147 added semis 2017-07-18 09:10:00 +02:00
Tobias Koppers c061c33e0f reduce number of calls to Map 2017-07-18 08:48:39 +02:00
asolove 648d78dab5 Fix lint failure. 2017-07-17 23:06:59 -06:00
asolove 3f1b7e624c Store relative path cache on compilation to avoid leaking memory. 2017-07-17 23:06:59 -06:00
asolove 164ce366c0 Cache module relative paths to speed up builds with lots of modules & chunks.
It seems like AggressiveSplittingPlugin generates relative paths for each (module,chunk) pair, so it was taking up a lot of time.
2017-07-17 23:06:59 -06:00
Tim Sebastian 5f16dd8554 clean up SortableSet
- remove unnecessary _isSorted flag
- remove clear-override as an empty set is "sorted"
- early return on empty sets
2017-06-21 08:12:22 +10:00
Tim Sebastian 7a99930d81 optimize sortableSet to prevent unnecessary sorting 2017-06-19 22:20:10 +10:00
Tim Sebastian 0eaa84748d add SortableSet as a new collection type 2017-06-18 10:41:58 +10:00
Tim Sebastian 2bff188fa3 make paths for records agnostic of OS 2017-04-07 23:37:42 +10:00
Tim Sebastian ed51e2ff2c unify makeRelative method used in aggresivesplittingplugin and recordsidsplugin 2017-04-05 23:38:15 +10:00