Commit Graph

33 Commits

Author SHA1 Message Date
Tobias Koppers 5238159d21 run prettier on existing code 2018-02-25 02:00:20 +01:00
Florent Cailhol 9669c9e013 Use Parser#hooks instead of Tapable#plugin 2017-12-21 09:08:10 +01:00
Florent Cailhol 7dd41b55c6 Replace deprecated Tapable#apply by Plugin#apply 2017-12-20 11:53:56 +01:00
Florent Cailhol c8e60b4322 Update Parser helpers to be compatible with hooks 2017-12-15 17:08:49 +01:00
Florent Cailhol 08ddad2e10 Replace NormalModuleFactory#plugin() calls 2017-12-14 14:42:49 +01:00
Florent Cailhol 36c690d37f Use tapable instead of 'plugin' 2017-12-08 14:23:31 +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 d9e01d4a5f use more efficient data structures
Parser.definitions and Parser.renames are using Maps now
2017-08-11 12:23:58 +02:00
Tobias Koppers b95af19651 emit correct code for typeof require.resolve(Weak) and require
fixes #5198
2017-07-07 10:26:58 +02:00
Tobias Koppers 27cc834a49 evaluate some identifiers to truthy values
fixes #4596
2017-06-02 13:24:47 +02:00
Tim Sebastian 952f04d90f node v4 fails to reassignes const in for-of loops properly 2017-02-19 13:18:01 +11:00
Shubheksha Jalan 1caeb72b4d refactor(ES6): upgrade CommonJsPlugin to ES6 2017-01-27 21:52:46 +05:30
Tim Sebastian 5240430321 apply split methods to their usages 2017-01-21 13:51:35 +11:00
Tim Sebastian 58e7a2f30b add simple returnTrue helper, less function definitions 2017-01-21 13:51:35 +11:00
Tim Sebastian b0665075da do not implicitly stringify values for `toConstantDependency`
changes usages of toConstantDependency so far
2017-01-21 13:44:10 +11:00
Tobias Koppers a7a41848c7 remove error for CommonJs/AMD in ESM
there are too many weird modules

detect harmony modules before parsing
exports is now undefined in ESM
module.exports is now read-only in ESM and returns undefined
define is now undefined in ESM
#3917
2017-01-15 01:44:26 +01:00
timse 86c00207bd Extract to parser helpers (#3843)
* rename ModuleParserHelpers to ParserHelpers

- rename module and file from ModuleParserHelpers to ParserHelpers
- change imports and usages
- rename addParsedVariable to addParsedVariableToModule to add module context again

* introduce setTypeof helper to ParserHelpers

* switch setTypeof in amdplugin - use ParsersHelpers instead

* switch setTypeof in CommonJsPlugin - use ParsersHelpers instead

* switch setTypeof in SystemPlugin - use ParsersHelpers instead

* add ParserHelpers.expressionIsUnsupported method

* use ParserHelpers.expressionIsUnsupported in SystemPlugin and NodeStuffPlugin

* refactor setTypeOf to more atomic helper methods

- reduces sideeffects as parser is called outside of helper
- allows better reuse

* use ParserHelper on more pieces in CommonJsPlugin making BasicEvaluatedExpression obsolete

* switch new BasicEvaluatedExpression().setString(<somestring>).setRange(expr.range) in dependencies to ParserHelpers

* switch other new BasicEvaluatedExpression().setString(<somestring>).setRange(expr.range) to ParserHelpers

* rename wrongly named function - name anonymous functions
2017-01-08 12:11:26 -06:00
Tobias Koppers ec262a4007 refactoring: moved parser instancation into NormalModuleFactory
breaking change: compiler.parser must no longer be used. Use this instead:

``` js
compiler.plugin("compilation", function(compilation, params) {
  params.normalModuleFactory.plugin("parser", function(parser, parserOptions) {
    parser.plugin(/* ... */);
  });
});
```

required for #2978
2016-09-15 00:22:10 +02:00
Tobias Koppers ce642eced6 reverted module.e to module.exports
because it causes issues with modules that define
exports on the module object
2016-04-21 23:50:40 +02:00
Tobias Koppers 902220a0ea smaller bundles by using module.e instead of module.exports
same for module.loaded and module.id
2016-02-13 13:11:34 +01:00
Avi Haiat daff7440a6 feat(app): Fix some obvious lint errors and warnings 2015-07-08 15:52:41 +03:00
Tobias Koppers cebd3b9722 added linting 2015-04-23 23:55:50 +02:00
Tobias Koppers 8131061c8e added weak dependencies, require.resolveWeak
#526
2014-10-13 16:10:19 +02:00
Tobias Koppers ca46619b5f renaming is off by default and only enabled for defined expressions
fixes #336
2014-07-02 21:34:29 +02:00
Tobias Koppers 61f1c4d37d allow to configure default RegExps for automatically created contexts
allow to configure when an automatically created context is critical
better warning message in critical dependencies warning

fixes #196
fixes #198
2014-03-11 16:08:22 +01:00
Tobias Koppers a1dfd78d76 assign to require define require in current scope 2014-03-03 15:14:54 +01:00
Tobias Koppers 0fea43b4cb rename generated require to __webpack_require__
fixes #141
fixes RubenVerborgh/N3.js#18
2014-03-03 14:56:17 +01:00
Tobias Koppers 945d0c686f started renaming support
this currently only works for free vars that are really available.
2014-01-31 10:57:28 +01:00
Tobias Koppers f67fd530eb started local modules #153
bug fixes
2014-01-23 18:35:56 +01:00
Tobias Koppers 063a5ff993 little fix 2013-10-14 13:59:52 +02:00
Tobias Koppers f3213f2d00 create context for more stuff 2013-02-20 20:40:40 +01:00
Tobias Koppers 34424b36af fixed some stuff 2013-02-08 00:18:47 +01:00
Tobias Koppers ee01837d66 Refactored everything for 0.9 2013-01-30 18:49:25 +01:00