Commit Graph

126 Commits

Author SHA1 Message Date
Florent Cailhol 63b4523a15 Pass 'context' as constructor argument 2018-01-30 21:40:44 +01:00
Tobias Koppers 5c63d3cb43 move source generation into separate module
allow to pass a Generator to NormalModule
change NormalModule constructor to options object

🍆
2018-01-24 11:33:38 +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
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
Florent Cailhol 7f303e5260 Use Buffer.from instead of new Buffer 2018-01-22 17:23:34 +01:00
Florent Cailhol c0d1994196 Fix Resolver#resolve deprecated call 2017-12-31 18:14:23 +01:00
Tobias Koppers 91e6692362 extract exports from wasm module
mangle used exports
fix esm flag
2017-12-14 13:05:03 +01:00
Tobias Koppers e829a5ed71 Reset dependencies in unbuild
Elsewise they are cleared in disconnect and module removing doesn't work correctly
2017-12-12 17:01:14 +01:00
Tobias Koppers aae32c770b cache buildMeta 2017-12-12 16:58: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
Tobias Koppers 2acd0d410e make `Module.hash` official and use it for caching 2017-12-04 12:23:43 +01:00
Tobias Koppers 7787b4ad13 upgrade tapable for Compilation 2017-11-27 21:14:16 +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 5e39ec46ee Allow to override resolve configuration 2017-11-18 08:12:35 +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 88ecff4fb9
getHighestTimestamp is no longer used 2017-11-08 11:29:58 +01:00
Tobias Koppers 447d85ad79 Merge branch 'next' into refactor/sets
# Conflicts:
#	lib/ContextModule.js
#	lib/NormalModule.js
#	lib/optimize/ConcatenatedModule.js
2017-11-08 06:01:24 +01:00
Tobias Koppers 51c572c4f5 refactor more properties to Sets 2017-11-07 09:17:12 +01:00
Tobias Koppers 52bacce0d7 Merge branch 'next' into refactor/cleanup-stuff 2017-11-07 09:15:15 +01:00
Tobias Koppers e39e9c134c fix missing negation 2017-11-06 14:43:35 +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 9e42dd6c4a allow to pass AST directly to webpack 2017-11-03 11:12:45 +01:00
Tobias Koppers a4d63e4051 remove loader context options, add rootContext 2017-09-14 09:19:21 +02:00
Tobias Koppers d1bd5fa2db remove resolveSync 2017-09-14 08:59:09 +02:00
donocode 174fd4e21b Prevent NormalModule contextify from contextifying query parameters
When passing a path as part of a loader query string the contextify
function incorrectly modifies the query string paths, most notably
converting windows separators
2017-08-29 23:50:22 +02:00
Evan Scott a426f93353 refactor: remove some excess array iterators 2017-07-18 03:17:39 -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 7f8d5b2aa5 Merge branch 'master' into next 2017-06-05 11:07:44 +02:00
Suman 6c2f378fac Adding function support to noParse 2017-06-02 20:28:54 -04:00
Tobias Koppers 9b2a9fa786 Scope Hoisting 2017-05-21 09:15:41 +02:00
J Huang 6afc397b99 perf: use Date.now() instead of new Date().getTime()
new Date().getTime() is 2x slower than Date.now(), see https://jsperf.com/new-date-vs-date-now-vs-performance-now/6
2017-05-04 10:19:54 +08:00
Jarid Margolin 70e48d2c31 Create base WebpackError class with inspect method. 2017-04-03 10:42:53 -04:00
Sergey Melyukov 0cab30c950 added test for NormalModule.originalSource 2017-04-03 10:48:55 +03:00
Sergey Melyukov 9d8d32e1ed added originalSource method to NormalModule (closes #4526) 2017-04-03 10:33:11 +03:00
Tobias Koppers 751fd9bbc4 add stack to non-Error error emitted
add info about emitting an Error

#4518
2017-03-22 13:29:40 +01:00
Tim Sebastian db2626595c fix test and linting 2017-02-16 19:31:58 +11:00
Tim Sebastian c06b0665d2 apply review tasks 2017-02-16 08:01:09 +11:00
Tim Sebastian 3812c101b1 add tests for preventParsing and applyNoParseRule 2017-02-14 21:14:57 +11:00
Tim Sebastian eb2d6d6d5f add tests for NormalModule 2017-02-14 20:38:47 +11:00
Tim Sebastian c71840a6ad refactor part 2, add comments 2017-02-14 00:16:54 +11:00
Tim Sebastian fcac9a3fe4 refactor variable cleanup code generation, step one 2017-02-13 23:13:07 +11:00
Tim Sebastian 4d378f51bd untangle source method 2017-02-13 22:18:15 +11:00
Tim Sebastian a5d5b9ef55 simplify error handling and simplify markModuleAsErrored as its always called with an error 2017-02-13 21:38:55 +11:00
Tim Sebastian b9507cca99 apply review tasks 2017-02-13 00:08:41 +11:00
Tim Sebastian 80e7d4070f fix typo 2017-02-11 17:07:18 +11:00