Commit Graph

200 Commits

Author SHA1 Message Date
Orlando Wenzinger 5e1cedf93b replace let with const for variables with no reassignment 2017-05-06 22:16:50 +02:00
Orlando Wenzinger 6d75f833c7 ES6 refactor of NodeSourcePlugin 2017-05-06 20:41:26 +02:00
Tobias Koppers 263c5c9f40 close watchers correctly when closing watching 2017-03-15 15:50:05 +01:00
Tobias Koppers f84412cfb2 allow watcher to detect removals
fixes #4162
maybe fixes #4079
maybe fixes #1533
2017-03-15 15:50:05 +01:00
Tim Sebastian d056ba7d40 extract `buildExpression` to ParserHelpers.addParsedVariableToModule
rewrite affected modules
2017-02-25 00:26:07 +11:00
Will Mendes ee81ebf73c refactor(NodeOutputFileSystem): upgrade to ES6 2017-01-27 10:04:02 +11:00
Tobias Koppers 0f4d927803 rewrite to arrow functions 2017-01-25 23:39:32 +01:00
Will Mendes d9daaea001 refactor(NodeWatchFileSystem): upgrade to ES6 2017-01-24 23:21:42 +11:00
Will Mendes ff8bf5709b refactor(NodeTargetPlugin): upgrade to ES6 2017-01-11 23:09:19 +11: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
Shubheksha Jalan 5aa522d5be refactor(ES6): upgrade NodeHotUpdateChunkTemplatePlugin to ES6 (#3795) 2017-01-07 22:07:59 -06:00
Oleg Pimenov 6b2c35c533 refactor(plugins): upgrade to ES6 NodeChunkTemplatePlugin & NodeTemplatePlugin (#3792) 2017-01-07 10:06:08 -06:00
Shubheksha Jalan efc576c8b7 refactor(ES6): upgrade NodeEnvironmentPlugin to ES6 (#3796) 2017-01-05 23:02:52 -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
Kees Kluskens 644e3a009b Upgrade eslint (#3626)
* Upgrade eslint

* Pin down eslint version

* Temporary fix for difference between js-beautify and eslint

js-beautify suddenly requires a space between `while` here,
but everywhere else we use it without space.

* Remove redundant rules (present in eslint:recommended)

* Add rules comparable to js-beautify rules to eslint

* Add some forgotten files

* Ugh, fix some differences between eslint and js-beautify the nuclear way

* Add back variables
2016-12-29 10:10:41 -06:00
Joe Bateson a8bb6cdb1c refactor(es6): Replace object-assign polyfill with native method (#3608) 2016-12-28 13:07:28 -06:00
Tobias Koppers f4ab7fc7e2 more performance improvements 2016-12-14 16:22:54 +01:00
Tobias Koppers 8da6f6c81a don't shim shims and update node-libs 2016-11-23 11:31:24 +01:00
Alan Zhang 2e62b1207d Prefix path with ./ 2016-11-12 22:19:57 +08:00
Alan Zhang d4b73ec846 Apply change to Buffer, setImmediate, clearImmediate too. 2016-11-12 01:58:50 +08:00
Alan Zhang f9502b6612 Replace '\' with '/' to make windows generate same path string as other platforms. 2016-11-12 01:42:00 +08:00
Alan Zhang 4d1d18575b Change absolute path returned by getPathToModule() to relative path to fix issue #2215 2016-11-11 03:56:13 +08:00
Markus Kramer 9c5c6df64f replaced calls to Object.assign with objectAssign to support node 0.12.x (#3080) 2016-09-30 09:24:05 -05:00
Tobias Koppers 78a2f699e2 beautify 2016-09-15 00:50:07 +02: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 afd11259b2 stricter linting and bug fixes 2016-09-15 00:22:10 +02:00
Tobias Koppers 1675a5a5ca new way to handle new ids, reuse old ids
adjusted HMR to handle id reusing
2016-07-18 00:41:26 +02:00
Tobias Koppers f5a5edd78d run purge before stats for cache #2003 2016-05-06 22:47:02 +02:00
Tobias Koppers 2ff9a247e2 better global support, even in strict mode 2016-05-06 11:36:36 +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
Tobias Koppers c838656e7f moved defaults for options.output into central place 2016-01-06 23:02:25 +01:00
Tobias Koppers 461c49ab66 updated partly to new enhanced-resolve API 2016-01-02 00:21:54 +01:00
Tobias Koppers ded70aef28 moves stuff from webpack-core to webpack-sources 2015-12-29 17:44:55 +01:00
Tobias Koppers b296e5a08c use options object for NodeTemplatePlugin 2015-11-20 08:38:15 +01:00
Tobias Koppers 7887d614b0 fixed test and comment 2015-07-25 15:37:48 +02: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 2245c4acca Promise based chunk loading API
don't flag entry module with `0` id anymore
use extra argument in chunk instead
this allows to require entry points
2015-06-13 11:45:28 +02:00
Tobias Koppers ff7848369a Merge branch 'master' into webpack-2
Conflicts:
	bin/webpack.js
	package.json
2015-05-10 20:41:04 +02:00
Tobias Koppers 18f3595cde allow to pass watch options
deprecate old API
2015-05-10 13:50:15 +02:00
Tobias Koppers 6c1eb49539 separated runtime code from compiler code
for better coverage data
2015-04-28 23:38:41 +02:00
Tobias Koppers f4b9d5f57a Merge branch 'master' into webpack-2
Conflicts:
	lib/Compilation.js
	lib/Compiler.js
	lib/DefinePlugin.js
	lib/HotModuleReplacementPlugin.js
	lib/Parser.js
	lib/node/NodeSourcePlugin.js
	lib/node/OldNodeWatchFileSystem.js
	package.json
2015-04-27 20:22:13 +02:00
Tobias Koppers cebd3b9722 added linting 2015-04-23 23:55:50 +02:00
Tobias Koppers a2af69056a Remove old stuff 2015-03-05 21:48:16 +01:00
Tobias Koppers d2b1bca5d9 Remove compatibly mode for node.Buffer
#729
2015-03-05 21:46:54 +01:00
Tobias Koppers 5ca01e92f4 test case for resolving node buildin libs
webpack/webpack#747
2015-02-04 23:22:28 +01:00
Tobias Koppers 7da31b2990 change `node.Buffer` in a way that is backward-compatible
#709
2015-01-21 20:25:25 +01:00
Tobias Koppers a979874cd0 updated deps, minor changes 2015-01-17 23:43:25 +01:00
Tobias Koppers adfcfce15f watching of missing files, fixed #668
store missing files from errors for missingDependencies
make the new watching plugins default
added OldWatchingPlugin
2015-01-17 21:55:44 +01:00
Johannes Ewald 5a2f35e51a Add setImmediate and clearImmediate as global function
clearImmediate has no own option as it is directly connected with setImmediate
2015-01-06 18:20:45 +01:00
Johannes Ewald 562fe2d507 Change case of option node.buffer to node.Buffer 2015-01-06 18:17:47 +01:00
Tobias Koppers d5dc904a15 fixed incomplete hash bug 2014-11-03 08:02:02 +01:00
Tobias Koppers e12bc992af include [chunkhash] tests again
added support for [chunkhash] with target node
2014-11-02 12:48:15 +01:00
Jason Anderson c84bd70b76 Fixes issue with hash length and loading external chunks
If the length option on a hash was being used for a file path template
(e.g. '[hash:8].js'), the file would be outputted with the correct name,
but the reference inside require.ensure would not work, because the length
truncation would operate on more than just the hash, and would truncate
some of the characters added to pad the hash value.

Fix is to implement the `hashWithLength` function where this is a problem.
This doesn't feel like a proper solution, as it adds some redundancies
in a few places, but it's only in the chunk loading blocks that this matters,
so it's small in scope.
2014-10-28 11:51:18 +01:00
Jason Anderson f371945a29 Add TemplatedPathPlugin 2014-09-11 15:31:08 +02:00
Tobias Koppers bf70c88399 throw on missing node.js module
fixes #411
2014-08-21 14:43:34 +02:00
Kurt Harriger bdae82a290 Replace ad-hoc identifier cleansing with helper function
Generalized identifier cleansing to replace invalid (and unicode)
characters with underscores to ensure a valid function name.

Applied function in other places functions were generated based on
libarary name.
2014-08-04 08:25:33 -06:00
Tobias Koppers 03c87c11a4 support [name] in chunkFilename
fixes #358
2014-07-17 01:52:41 +02:00
Tobias Koppers 572ebfcd51 use correct (relative) url to source map 2014-07-16 20:57:10 +02:00
Tobias Koppers d80cdcefac Code Quality 2014-06-24 18:53:32 +02:00
Tobias Koppers 5264f69ddf refactored HotChunkUpdateTemplate to plugin interface 2014-06-03 00:14:46 +02:00
Tobias Koppers a0394a061b refactored ChunkTemplate with plugin interface 2014-06-02 23:40:50 +02:00
Tobias Koppers 3247725ba3 refactored MainTemplate to plugin interface 2014-06-02 21:23:53 +02:00
Tobias Koppers bea08dc1a2 added node-webkit target (experimental)
added option to provide no target
added defaults for node-webkit
allow browsertests to run in node-webkit
2014-04-09 09:12:04 +02:00
Tobias Koppers 3364a26967 upgrade node browser replacements 2014-03-18 22:34:35 +01:00
Tobias Koppers 9a3e3443fa use externals plugin for node target 2014-03-05 19:56:53 +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 81203a3a1c added node.js HMR,
fixed #137: exports correct require properties on hotRequire too
added more test combinations
2013-12-17 00:56:43 +01:00
Tobias Koppers 9b4c5d5fc1 fixed onError 2013-12-16 00:54:56 +01:00
Tobias Koppers b0f5575c57 added async chunk loading for node.js build 2013-12-15 23:08:11 +01:00
Tobias Koppers 8851427ea2 use chunk ids in entry chunks too
this fixes a unnecessary download in mutli-entry compilations
2013-12-11 08:41:43 +01:00
Tobias Koppers e4bbcc53a5 wait at least to the next second #122 2013-11-26 16:19:06 +01:00
Tobias Koppers cff436e829 global should work in strict mode to #102 2013-10-01 10:17:04 +02:00
Tobias Koppers 7b3d01892f global is not this #102 2013-10-01 10:11:56 +02:00
Tobias Koppers c30f16f439 added experimental deduplication support #47 2013-06-12 16:16:06 +02:00
Tobias Koppers 3cb3cf7285 purge only changed files, longer caching 2013-05-13 14:25:37 +02:00
Tobias Koppers 0de7c73ad8 SourceMap support 2013-03-26 16:54:41 +01:00
Tobias Koppers f9ac3ed2a5 fixed last commit 2013-03-01 15:03:00 +01:00
Tobias Koppers 065a56f603 added Buffer 2013-03-01 14:59:38 +01:00
Tobias Koppers bd805ec293 fixed naming 2013-03-01 09:44:58 +01:00
Tobias Koppers c4140aac51 moved ConsolePlugin into NodeSourcePlugin 2013-02-26 13:31:05 +01:00
Tobias Koppers 273506ee34 fix for RegExp evalutating, change in node-libs-browser 2013-02-25 18:18:49 +01:00
Tobias Koppers c1592dfbbf Moved node libs for browser into separate package 2013-02-25 11:34:33 +01:00
Tobias Koppers 9fe83b3dc8 improved chunk loading
now a chunk is not loaded if all included modules are already loaded (by other chunks)
2013-02-24 02:05:55 +01:00
Tobias Koppers 9759650369 obsolete 2013-02-20 20:40:58 +01:00
Tobias Koppers b0a7d774a0 removed error handling, it's handled while compiling 2013-02-13 17:37:21 +01:00
Tobias Koppers 3dc62749a2 moved webworker template, added node.js template #57 2013-02-13 17:00:07 +01:00
Tobias Koppers 8821f7bbf8 fixes #64 2013-02-13 14:57:00 +01:00
Tobias Koppers 6d50b09009 add parameter only if in context to NodeSourceRealPathsPlugin #62 2013-02-11 08:48:22 +01:00
Tobias Koppers 35d15c7ff7 fixes #62 2013-02-11 08:42:45 +01:00
Tobias Koppers d5b50eb14d fixed the watching stuff :) 2013-02-11 00:17:29 +01:00
Tobias Koppers 27a80536b7 path fix 2013-02-05 08:44:37 +01:00
Tobias Koppers de2ab63a02 fixed #62, added NodeSourceRealPathsPlugin 2013-02-05 08:33:32 +01:00
Tobias Koppers 1ce5f465b5 refactored addParsedVariable into ModuleParserHelpers 2013-02-05 08:31:46 +01:00
Tobias Koppers fd7226ed50 fixes 2013-02-04 15:58:04 +01:00
Tobias Koppers e8f0e1d7cf fix watching 2013-02-01 08:03:38 +01:00
Tobias Koppers 961ad40966 file watching 2013-01-31 18:00:22 +01:00
Tobias Koppers ee01837d66 Refactored everything for 0.9 2013-01-30 18:49:25 +01:00