0
0
mirror of https://github.com/nodejs/node.git synced 2024-12-01 16:10:02 +01:00
nodejs/lib
Brian White ae18bbef48
lib: improve module loading performance
This commit improves module loading performance by at least ~25-35%
in the module-loader benchmarks.

Some optimization strategies include:
* Try-finally/try-catch isolation
* Replacing regular expressions with manual parsing
* Avoiding unnecessary string and array creation
* Avoiding constant recompilation of anonymous functions and
function definitions within functions

PR-URL: https://github.com/nodejs/node/pull/5172
Reviewed-By: James M Snell <jasnell@gmail.com>
2016-04-14 14:58:46 -04:00
..
internal lib: improve module loading performance 2016-04-14 14:58:46 -04:00
_debug_agent.js lib: refactor code with startsWith/endsWith 2016-03-23 15:58:52 +02:00
_debugger.js debugger: run last command on presssing enter 2016-04-14 10:53:07 -07:00
_http_agent.js https: fix ssl socket leak when keepalive is used 2016-03-17 14:32:49 +02:00
_http_client.js http: Corrects IPv6 address in Host header 2016-04-01 08:57:16 -07:00
_http_common.js http: speed up checkIsHttpToken 2016-03-27 13:58:26 -07:00
_http_incoming.js http: remove old, confusing comment 2016-02-15 07:52:21 -08:00
_http_outgoing.js buffer: add .from(), .alloc() and .allocUnsafe() 2016-03-16 08:34:02 -07:00
_http_server.js http,util: fix typos in comments 2016-02-17 08:43:40 -08:00
_linklist.js
_stream_duplex.js
_stream_passthrough.js
_stream_readable.js stream: Fix readableState.awaitDrain mechanism 2016-04-11 22:50:45 -07:00
_stream_transform.js stream: prevent object map change in TransformState 2016-02-02 13:05:04 -06:00
_stream_wrap.js
_stream_writable.js streams: support unlimited synchronous cork/uncork cycles 2016-04-14 08:30:32 +02:00
_tls_common.js tls: scope loop vars with let 2016-01-26 20:53:05 +01:00
_tls_legacy.js crypto: fail early when loading crypto without openssl 2016-03-23 10:34:40 -07:00
_tls_wrap.js crypto: improve error messages 2016-03-26 23:46:32 +05:30
.eslintrc tools: add buffer-constructor eslint rule 2016-03-18 17:05:18 -07:00
assert.js assert: Check typed array view type in deepEqual 2016-03-31 21:48:02 +03:00
buffer.js buffer: add Buffer.prototype.compare by offset 2016-04-08 20:16:46 -07:00
child_process.js buffer: add .from(), .alloc() and .allocUnsafe() 2016-03-16 08:34:02 -07:00
cluster.js lib: refactor code with startsWith/endsWith 2016-03-23 15:58:52 +02:00
console.js console: check that stderr is writable 2016-03-15 19:10:55 -07:00
constants.js
crypto.js crypto: fail early when loading crypto without openssl 2016-03-23 10:34:40 -07:00
dgram.js dgram: pass null as error on successful send() 2016-03-28 09:47:13 -04:00
dns.js dns: Use object without protoype for map 2016-03-22 11:13:03 -07:00
domain.js lib: reduce usage of self = this 2016-03-21 15:48:51 -07:00
events.js process: add 'warning' event and process.emitWarning() 2016-03-24 13:19:11 -07:00
fs.js lib: improve module loading performance 2016-04-14 14:58:46 -04:00
http.js
https.js crypto: fail early when loading crypto without openssl 2016-03-23 10:34:40 -07:00
module.js lib: improve module loading performance 2016-04-14 14:58:46 -04:00
net.js net: remove implicit setting of DNS hints 2016-04-05 10:36:37 -04:00
os.js os: add userInfo() method 2016-04-12 17:21:29 -04:00
path.js path: fix win32.isAbsolute() inconsistency 2016-04-04 14:45:22 -07:00
process.js
punycode.js
querystring.js querystring: using toString for objects on querystring.escape 2016-04-11 22:37:37 -07:00
readline.js lib: refactor code with startsWith/endsWith 2016-03-23 15:58:52 +02:00
repl.js debugger: run last command on presssing enter 2016-04-14 10:53:07 -07:00
stream.js
string_decoder.js buffer: add .from(), .alloc() and .allocUnsafe() 2016-03-16 08:34:02 -07:00
sys.js
timers.js timers: fixing API refs to use safe internal refs 2016-03-28 16:18:14 -07:00
tls.js crypto: fail early when loading crypto without openssl 2016-03-23 10:34:40 -07:00
tty.js Revert "tty: don't read from console stream upon creation" 2016-03-29 10:21:46 -05:00
url.js url: group slashed protocols by protocol name 2016-02-29 20:26:59 -06:00
util.js util: improve format() performance further 2016-03-04 17:27:21 -06:00
v8.js
vm.js
zlib.js zlib: do not emit event on *Sync() methods 2016-03-19 13:38:26 -07:00