Commit Graph
14077 Commits
Author SHA1 Message Date
Ben Noordhuis da12b10005 test: work around debugger not killing inferior
On UNIX platforms, the debugger doesn't reliably kill the inferior when
killed by a signal.  Work around that by spawning the debugger in its
own process group and killing the process group instead of just the
debugger process.

This is a hack to get the continuous integration back to green, it
doesn't address the underlying issue, which is that the debugger
shouldn't leave stray processes behind.

Fixes: https://github.com/nodejs/node/issues/7034
PR-URL: https://github.com/nodejs/node/pull/7037
Refs: https://github.com/nodejs/node/pull/3470
Reviewed-By: Colin Ihrig <cjihrig@gmail.com>
2016-05-28 19:07:41 +02:00
Kat Marchán bd8b1ddb20 deps: upgrade npm to 3.9.3
Contains the following npm releases:
- v3.9.0: https://github.com/npm/npm/releases/tag/v3.9.0
- v3.9.1: https://github.com/npm/npm/releases/tag/v3.9.1
- v3.9.2: https://github.com/npm/npm/releases/tag/v3.9.2
- v3.9.3: https://github.com/npm/npm/releases/tag/v3.9.3

PR-URL: https://github.com/nodejs/node/pull/7030
Reviewed-By: Jeremiah Senkpiel <fishrock123@rocketmail.com>
2016-05-28 10:42:48 -04:00
Anna Henningsen 16f98e589c doc: add added: information for vm
Ref: https://github.com/nodejs/node/issues/6578
PR-URL: https://github.com/nodejs/node/pull/7011
Reviewed-By: Ben Noordhuis <info@bnoordhuis.nl>
Reviewed-By: James M Snell <jasnell@gmail.com>
Reviewed-By: Julian Duque <julianduquej@gmail.com>
2016-05-28 16:12:50 +02:00
Adrian Estrada 51b8a79bd4 doc: add added: information for console
Information extracted from git history.

Ref: https://github.com/nodejs/node/issues/6578
PR-URL: https://github.com/nodejs/node/pull/6995
Reviewed-By: Anna Henningsen <anna@addaleax.net>
Reviewed-By: James M Snell <jasnell@gmail.com>
Reviewed-By: Julian Duque <julianduquej@gmail.com>
2016-05-28 16:06:05 +02:00
Ingvar Stepanyan 4a56e89d20 buffer: fix dataview-set benchmark
Improves numbers up to 4x by avoiding repetitive dynamic method lookup.

PR-URL: https://github.com/nodejs/node/pull/6922
Reviewed-By: Anna Henningsen <anna@addaleax.net>
Reviewed-By: Trevor Norris <trev.norris@gmail.com>
Reviewed-By: James M Snell <jasnell@gmail.com>
Reviewed-By: Brian White <mscdex@mscdex.net>
2016-05-28 06:30:38 +02:00
Ehsan Akhgari de5020292e build: re-add --ninja option to configure
Ninja is a build backend supported by gyp which is much faster than
Make and is able to parallelize builds across all of the available
cores very well. On my machine, this reduces the average build time
from 5:14 minutes to 4:33 minutes.

Refs: https://github.com/nodejs/node/pull/467
Refs: de224d6e6c
PR-URL: https://github.com/nodejs/node/pull/6780
Reviewed-By: Jeremiah Senkpiel <fishrock123@rocketmail.com>
2016-05-27 18:13:41 -04:00
Michael Dawson 8af25a39d3 doc: add info on what's used for fswatch on AIX
Info is provided on for the other OS's. Add similar
level of info for AIX.

PR-URL: https://github.com/nodejs/node/pull/6837
Reviewed-By: Colin Ihrig <cjihrig@gmail.com>
Reviewed-By: James M Snell <jasnell@gmail.com>
Reviewed-By: Santiago Gimeno <santiago.gimeno@gmail.com>
2016-05-27 16:44:32 -04:00
Santiago Gimeno 0c29436250 cluster: reset handle index on close
It allows reopening a server after it has been closed.

Fixes: https://github.com/nodejs/node/issues/6693
PR-URL: https://github.com/nodejs/node/pull/6981
Reviewed-By: Ben Noordhuis <info@bnoordhuis.nl>
Reviewed-By: Colin Ihrig <cjihrig@gmail.com>
Reviewed-By: Ron Korving <ron@ronkorving.nl>
Reviewed-By: James M Snell <jasnell@gmail.com>
2016-05-27 18:43:09 +02:00
doug.wade e916218ba5 doc: update process.hrtime docs to include optional parameter
Adds more explicit documentation for the single optional parameter
to process.hrtime to the process docs.

PR-URL: https://github.com/nodejs/node/pull/6585
Reviewed-By: James M Snell <jasnell@gmail.com>
Reviewed-By: Robert Jefe Lindstaedt <robert.lindstaedt@gmail.com>
Reviewed-By: Сковорода Никита Андреевич <chalkerx@gmail.com>
Reviewed-By: Trevor Norris <trev.norris@gmail.com>
2016-05-27 09:28:48 -07:00
Rich Trott 6306b10c48 doc: improve server.listen() documentation prose
PR-URL: https://github.com/nodejs/node/pull/7000
Reviewed-By: Colin Ihrig <cjihrig@gmail.com>
Reviewed-By: Yuval Brik <yuval@brik.org.il>
Reviewed-By: James M Snell <jasnell@gmail.com>
Reviewed-By: Santiago Gimeno <santiago.gimeno@gmail.com>
2016-05-27 09:00:58 -07:00
Rich Trott 2783978847 doc: improve server.address() doc text
PR-URL: https://github.com/nodejs/node/pull/7001
Reviewed-By: Colin Ihrig <cjihrig@gmail.com>
Reviewed-By: James M Snell <jasnell@gmail.com>
Reviewed-By: Santiago Gimeno <santiago.gimeno@gmail.com>
2016-05-27 08:59:01 -07:00
Bryan Hughes d5339b352c doc: clarified use of sexual language in the CoC
Clarifies the code of conduct by adding some wording discouraging the
use of sexualized language.

This PR was prompted by some moderation discussion, and we realized
that there was some ambiguity around this topic in the current CoC

PR-URL: https://github.com/nodejs/node/pull/6973
Reviewed-By: James M Snell <jasnell@gmail.com>
Reviewed-By: Myles Borins <myles.borins@gmail.com>
Reviewed-By: Anna Henningsen <anna@addaleax.net>
Reviewed-By: Stephen Belanger <admin@stephenbelanger.com>
Reviewed-By: Michael Dawson <michael_dawson@ca.ibm.com>
2016-05-27 08:56:28 -07:00
James M Snell 5d2c0ac9f2 doc: general improvements to tty.md
PR-URL: https://github.com/nodejs/node/pull/6931
Reviewed-By: Benjamin Gruenbaum <benjamingr@gmail.com>
Reviewed-By: Jeremiah Senkpiel <fishrock123@rocketmail.com>
2016-05-27 08:51:34 -07:00
cjihrig a9492f503f test: verify cluster worker exit
test-cluster-disconnect-handles already includes logic that
tries to cleanup any child processes when the test fails. This
commit adds additional checks to verify that the child exited
normally, and fails the test if that is not the case.

Refs: https://github.com/nodejs/node/issues/6988
PR-URL: https://github.com/nodejs/node/pull/6993
Reviewed-By: Ben Noordhuis <info@bnoordhuis.nl>
Reviewed-By: James M Snell <jasnell@gmail.com>
Reviewed-By: Rich Trott <rtrott@gmail.com>
Reviewed-By: Santiago Gimeno <santiago.gimeno@gmail.com>
2016-05-27 09:14:43 -04:00
Alexis Campailla 6e2ae8aeee test,win: skip addons/load-long-path on WOW64
This test fails on WOW64 because of a bug in the OS, and there is
no acceptable workaround.

Ref: https://github.com/nodejs/node/issues/3667

PR-URL: https://github.com/nodejs/node/pull/6675
Reviewed-By: bnoordhuis - Ben Noordhuis <info@bnoordhuis.nl>
Reviewed-By: cjihrig - Colin Ihrig <cjihrig@gmail.com>
2016-05-27 12:05:49 +02:00
Rich Trott 90675818ee doc: add added: data for cli.md
PR-URL: https://github.com/nodejs/node/pull/6960
Refs: https://github.com/nodejs/node/issues/6578
Reviewed-By: Jeremiah Senkpiel <fishrock123@rocketmail.com>
Reviewed-By: James M Snell <jasnell@gmail.com>
Reviewed-By: Myles Borins <myles.borins@gmail.com>
2016-05-26 21:02:54 -07:00
Anna Henningsen 27d2267066 doc: add added: information for child_process
Ref: https://github.com/nodejs/node/issues/6578
PR-URL: https://github.com/nodejs/node/pull/6927
Reviewed-By: James M Snell <jasnell@gmail.com>
Reviewed-By: Ben Noordhuis <info@bnoordhuis.nl>
2016-05-27 04:29:31 +02:00
James M Snell dbdea02a99 doc: general improvements to url.md copy
General cleanup and restructuring of the doc. Added
additional detail to how URLs are serialized.

PR-URL: https://github.com/nodejs/node/pull/6904
Reviewed-By: Robert Jefe Lindstaedt <robert.lindstaedt@gmail.com>
Reviewed-By: Anna Henningsen <anna@addaleax.net>
Reviewed-By: Sakthipriyan Vairamani <thechargingvolcano@gmail.com>
Reviewed-By: Benjamin Gruenbaum <benjamingr@gmail.com>
Reviewed-By: Brian White <mscdex@mscdex.net>
2016-05-26 18:09:18 -07:00
Yazhong Liu 841c7025a9 doc: add yorkie to collaborators
PR-URL: https://github.com/nodejs/node/pull/7004
Reviewed-By: Anna Henningsen <anna@addaleax.net>
Reviewed-By: Rich Trott <rtrott@gmail.com>
2016-05-27 04:14:37 +08:00
James M Snell 1b6a468c72 doc: general improvements to tls.md copy
Restructuring and clarifications to the tls.md copy
to improve readability and flow.

PR-URL: https://github.com/nodejs/node/pull/6933
Reviewed-By: Fedor Indutny <fedor.indutny@gmail.com>
Reviewed-By: Ben Noordhuis <info@bnoordhuis.nl>
Reviewed-By: Shigeki Ohtsu <ohtsu@iij.ad.jp>
2016-05-26 08:12:33 -07:00
Matteo Collina c14e98b476 dgram: copy the list in send
This commit fix a possible crash situation in dgram send().
A crash is possible if an array is passed, and then altered after the
send call, as the call to libuv is wrapped in process.nextTick().
It also avoid sending an empty array to libuv by allocating an empty
buffer. It also does some cleanup inside send() to increase readability.

It removes test flakyness by use common.mustCall and
common.platformTimeout. Fixes situations were some events were not
asserted to be emitted.

Fixes: https://github.com/nodejs/node/issues/6616
PR-URL: https://github.com/nodejs/node/pull/6804
Reviewed-By: James M Snell <jasnell@gmail.com>
Reviewed-By: Ben Noordhuis <info@bnoordhuis.nl>
2016-05-26 11:28:45 +02:00
Michaël Zasso f9ea52e5eb test: add regression test for Proxy as vm context
A Proxy context should not hide built-in global objects.
Ref: https://github.com/nodejs/node/issues/6158

PR-URL: https://github.com/nodejs/node/pull/6967
Reviewed-By: Sakthipriyan Vairamani <thechargingvolcano@gmail.com>
Reviewed-By: Colin Ihrig <cjihrig@gmail.com>
Reviewed-By: James M Snell <jasnell@gmail.com>
Reviewed-By: Anna Henningsen <anna@addaleax.net>
2016-05-26 09:48:23 +02:00
Anna Henningsen 048b3de22d doc: fix broken references
Fix minor broken references in crypto.md, net.md and domains.md
(which uses `EventEmitter` as a type, of which the anchor in
`events.md` has changed).

PR-URL: https://github.com/nodejs/node/pull/6941
Reviewed-By: James M Snell <jasnell@gmail.com>
Reviewed-By: Roman Reiss <me@silverwind.io>
2016-05-26 00:52:36 +02:00
Anna Henningsen b5f76dbd3e doc: fix broken references in changelogs
Some references to a few versions were broken, likely in part
due to the transition to a split changelog format.

PR-URL: https://github.com/nodejs/node/pull/6942
Reviewed-By: Myles Borins <myles.borins@gmail.com>
Reviewed-By: James M Snell <jasnell@gmail.com>
Reviewed-By: Roman Reiss <me@silverwind.io>
2016-05-26 00:51:38 +02:00
Anna Henningsen b140bad391 tools: make sure doctool anchors respect includes
Previously, output files which were created using includes (notably,
the single-page all.html) had basically broken internal links all
over the place because references like `errors.html#errors_class_error`
are being used, yet `id` attributes were generated that looked like
`all_class_error`.

This PR adds generation of comments from the include preprocessor
that indicate from which file the current markdown bits come and
lets the HTML output generation take advantage of that so that more
appropriate `id` attributes can be generated.

PR-URL: https://github.com/nodejs/node/pull/6943
Reviewed-By: Robert Jefe Lindstaedt <robert.lindstaedt@gmail.com>
Reviewed-By: Daniel Wang <wangyang0123@gmail.com>
2016-05-26 00:49:34 +02:00
Ben Noordhuis 18fb4f9a91 debugger: propagate --debug-port= to debuggee
Before this commit `node --debug-port=1234 debug t.js` ignored the
--debug-port= argument, binding to the default port 5858 instead,
making it impossible to debug more than one process on the same
machine that way.

This commit also reduces the number of places where the default port
is hard-coded by one.

Fixes: https://github.com/nodejs/node/issues/3345
PR-URL: https://github.com/nodejs/node/pull/3470
Reviewed-By: Colin Ihrig <cjihrig@gmail.com>
Reviewed-By: Fedor Indutny <fedor.indutny@gmail.com>
Reviewed-By: James M Snell <jasnell@gmail.com>
2016-05-25 23:38:10 +02:00
Jesse McCarthy c1ffb9ff9b tools: restore change of signatures to opts hashes
These signatures were originally converted to opts hashes in #3888. That
change was misinterpreted as the intrinsic cause of a test failure and
reverted in #6680.

PR-URL: https://github.com/nodejs/node/pull/6690
Reviewed-By: Anna Henningsen <anna@addaleax.net>
Reviewed-By: Robert Jefe Lindstaedt <robert.lindstaedt@gmail.com>
2016-05-25 22:44:57 +02:00
Fedor Indutny 9cac8c894e tls: catch certCbDone exceptions
Catch and emit `certCbDone` exceptions instead of throwing them as
`uncaughtException` and crashing the whole process.

Fix: https://github.com/nodejs/node/issues/6822
PR-URL: https://github.com/nodejs/node/pull/6887
Reviewed-By: Ben Noordhuis <info@bnoordhuis.nl>
2016-05-25 16:07:30 -04:00
Rich Trott c9a5990a76 child_process: measure buffer length in bytes
This change fixes a known issue where `maxBuffer` limits by characters
rather than bytes. Benchmark added to confirm no performance regression
occurs with this change.

PR-URL: https://github.com/nodejs/node/pull/6764
Fixes: https://github.com/nodejs/node/issues/1901
Reviewed-By: Brian White <mscdex@mscdex.net>
2016-05-25 10:57:59 -07:00
cjihrig 33c7b45378 cluster: guard against undefined message handlers
cluster's internal message handling includes a cache of callback
functions. Once the message for that callback is received, it is
removed from the cache. If, for any reason, the same message ID
is processed twice, the callback will be missing from the cache
and cluster will try to call undefined as a function. This commit
guards against this scenario.

Refs: https://github.com/nodejs/node/issues/6561
PR-URL: https://github.com/nodejs/node/pull/6902
Reviewed-By: Ben Noordhuis <info@bnoordhuis.nl>
Reviewed-By: Santiago Gimeno <santiago.gimeno@gmail.com>
2016-05-25 11:58:02 -04:00
James M Snell 9140b97848 doc: general improvements to string_decoder.md copy
PR-URL: https://github.com/nodejs/node/pull/6940
Reviewed-By: Anna Henningsen <anna@addaleax.net>
Reviewed-By: Brian White <mscdex@mscdex.net>
2016-05-25 08:53:34 -07:00
Michaël Zasso 4453c0c250 deps: upgrade to V8 5.0.71.52
Pick up the latest set of patch level updates from the V8 5.0 branch.
https://github.com/v8/v8/compare/5.0.71.47...5.0.71.52

Fixes: https://github.com/nodejs/node/issues/6158
PR-URL: https://github.com/nodejs/node/pull/6928
Reviewed-By: Ali Ijaz Sheikh <ofrobots@google.com>
Reviewed-By: Ben Noordhuis <info@bnoordhuis.nl>
2016-05-25 10:29:25 +02:00
Ben Noordhuis eff96d32dc src: add include guards to internal headers
For consistency with the newly added src/base64.h header, check that
NODE_WANT_INTERNALS is defined and set in internal headers.

PR-URL: https://github.com/nodejs/node/pull/6948
Refs: https://github.com/nodejs/node/pull/6910
Reviewed-By: Fedor Indutny <fedor.indutny@gmail.com>
Reviewed-By: James M Snell <jasnell@gmail.com>
Reviewed-By: Trevor Norris <trev.norris@gmail.com>
2016-05-25 09:54:24 +02:00
Daniel Wang 54785f59e1 doc: add firedfox to collaborators
PR-URL: https://github.com/nodejs/node/pull/6961
Reviewed-By: Rich Trott <rtrott@gmail.com>
2016-05-25 13:10:14 +08:00
Bradley Meck 636935acc7 doc: add bmeck to collaborators
PR-URL: https://github.com/nodejs/node/pull/6962
Reviewed-By: Rich Trott <rtrott@gmail.com>
2016-05-25 00:05:44 -05:00
Rod Machen ed11ac6080 doc: remove "\" within backticks
Ref: https://github.com/nodejs/node/issues/6911
Ref: https://github.com/nodejs/node/pull/5075

PR-URL: https://github.com/nodejs/node/pull/6952
Reviewed-By: Robert Jefe Lindstaedt <robert.lindstaedt@gmail.com>
2016-05-24 23:55:28 +02:00
Rich Trott ff00a48169 test: improve debug-break-on-uncaught reliability
Running the test through CI reveals unreliability due to a race
condition. These changes mitigate the race condition, but do not
eliminate it.

PR-URL: https://github.com/nodejs/node/pull/6793
Reviewed-By: James M Snell <jasnell@gmail.com>
Reviewed-By: Ben Noordhuis <info@bnoordhuis.nl>
Reviewed-By: Claudio Rodriguez <cjrodr@yahoo.com>
2016-05-24 13:45:09 -07:00
Trevor Norris c0e6c668e6 src: no abort from getter if object isn't wrapped
v8::Object::GetAlignedPointerFromInternalField() returns a random value
if Wrap() hasn't been run on the object handle. Causing v8 to abort if
certain getters are accessed. It's possible to access these getters and
functions during class construction through the AsyncWrap init()
callback, and also possible in a subset of those scenarios while running
the persistent handle visitor.

Mitigate this issue by manually setting the internal aligned pointer
field to nullptr in the BaseObject constructor and add necessary logic
to return appropriate values when nullptr is encountered.

PR-URL: https://github.com/nodejs/node/pull/6184
Reviewed-By: Ben Noordhuis <info@bnoordhuis.nl>
Reviewed-By: Anna Henningsen <anna@addaleax.net>
2016-05-24 14:40:22 -06:00
Trevor Norris 13e5d4f320 stream_base: always use Base template class
First cast the pointer to the child Base class before casting to the
parent class to make sure it returns the correct pointer.

PR-URL: https://github.com/nodejs/node/pull/6184
Reviewed-By: Ben Noordhuis <info@bnoordhuis.nl>
Reviewed-By: Anna Henningsen <anna@addaleax.net>
2016-05-24 14:39:30 -06:00
Trevor Norris 43b5215083 tls_wrap: do not abort on new TLSWrap()
Though the TLSWrap constructor is only called via TLSWrap::Wrap() (i.e.
tls_wrap.wrap()) internally, it is still exposed to JS. Don't allow the
application to abort by inspecting the instance before it has been
wrap'd by another handle.

PR-URL: https://github.com/nodejs/node/pull/6184
Reviewed-By: Ben Noordhuis <info@bnoordhuis.nl>
Reviewed-By: Anna Henningsen <anna@addaleax.net>
2016-05-24 14:39:04 -06:00
Trevor Norris 9dd5b93c42 src: always clear wrap before persistent Reset()
In case the handle is stored and accessed after the associated C++ class
was destructed, set the internal pointer to nullptr so any
getters/setters can return accordingly without aborting the application.

PR-URL: https://github.com/nodejs/node/pull/6184
Reviewed-By: Ben Noordhuis <info@bnoordhuis.nl>
Reviewed-By: Anna Henningsen <anna@addaleax.net>
2016-05-24 14:38:34 -06:00
Trevor Norris ddc19be6de src: inherit first from AsyncWrap
To make sure casting a class of multiple inheritance from a void* to
AsyncWrap succeeds make AsyncWrap the first inherited class.

PR-URL: https://github.com/nodejs/node/pull/6184
Reviewed-By: Ben Noordhuis <info@bnoordhuis.nl>
Reviewed-By: Anna Henningsen <anna@addaleax.net>
2016-05-24 14:36:47 -06:00
Myles Borins e03c32696e 2016-05-24, Version 4.4.5 'Argon' (LTS)
Notable changes:

* **buffer**:
  * Buffer no longer errors if you call lastIndexOf with a search term
    longer than the buffer (Anna Henningsen)
    https://github.com/nodejs/node/pull/6511

* contextify:
  * Context objects are now properly garbage collected, this solves a
    problem some individuals were experiencing with extreme memory
    growth (Ali Ijaz Sheikh)
    https://github.com/nodejs/node/pull/6871

* deps:
  * update npm to 2.15.5 (Rebecca Turner)
    https://github.com/nodejs/node/pull/6663

* http:
  * Invalid status codes can no longer be sent. Limited to 3 digit
    numbers between 100 - 999 (Brian White)
    https://github.com/nodejs/node/pull/6291
2016-05-24 11:53:27 -07:00
cjihrig 62b544290a process: remove deprecated process.EventEmitter
process.EventEmitter was deprecated for v6. This commit removes
it for v7.

Refs: https://github.com/nodejs/node/pull/5049
PR-URL: https://github.com/nodejs/node/pull/6862
Reviewed-By: Ben Noordhuis <info@bnoordhuis.nl>
Reviewed-By: Anna Henningsen <anna@addaleax.net>
Reviewed-By: James M Snell <jasnell@gmail.com>
2016-05-24 12:45:30 -04:00
Santiago Gimeno f0a07d956e test: test cluster worker disconnection on error
This test checks that ownerless cluster worker handles are closed
correctly on disconnection.

Fixes: https://github.com/nodejs/node/issues/6561
PR-URL: https://github.com/nodejs/node/pull/6909
Reviewed-By: Ben Noordhuis <info@bnoordhuis.nl>
Reviewed-By: James M Snell <jasnell@gmail.com>
Reviewed-By: Colin Ihrig <cjihrig@gmail.com>
2016-05-24 12:20:57 -04:00
cjihrig aadfe6c249 cluster: close ownerless handles on disconnect()
When a worker is disconnecting, it shuts down all of the handles
it is waiting on. It is possible that a handle does not have an
owner, which causes a crash. This commit closes such handles
without accessing the missing owner.

Fixes: https://github.com/nodejs/node/issues/6561
PR-URL: https://github.com/nodejs/node/pull/6909
Reviewed-By: Ben Noordhuis <info@bnoordhuis.nl>
Reviewed-By: James M Snell <jasnell@gmail.com>
Reviewed-By: Santiago Gimeno <santiago.gimeno@gmail.com>
2016-05-24 12:20:57 -04:00
Santiago Gimeno dd21bd9f01 test: verify IPC messages are emitted on next tick
The test in this commit runs correctly if IPC messages are
properly consumed and emitted. Otherwise, the test times out.

Fixes: https://github.com/nodejs/node/issues/6561
PR-URL: https://github.com/nodejs/node/pull/6909
Reviewed-By: Ben Noordhuis <info@bnoordhuis.nl>
Reviewed-By: James M Snell <jasnell@gmail.com>
Reviewed-By: Colin Ihrig <cjihrig@gmail.com>
2016-05-24 12:20:57 -04:00
cjihrig d59917b2a3 child_process: emit IPC messages on next tick
Currently, if an IPC event handler throws an error, it can
cause the message to not be consumed, leading to messages piling
up. This commit causes IPC events to be emitted on the next tick,
allowing the channel's processing logic to move forward as
normal.

Fixes: https://github.com/nodejs/node/issues/6561
PR-URL: https://github.com/nodejs/node/pull/6909
Reviewed-By: Ben Noordhuis <info@bnoordhuis.nl>
Reviewed-By: James M Snell <jasnell@gmail.com>
Reviewed-By: Santiago Gimeno <santiago.gimeno@gmail.com>
2016-05-24 12:20:57 -04:00
Anna Henningsen dab09877b0 module: don't cache uninitialized builtins
Don't cache the exported values of fully uninitialized builtins.
This works by adding an additional `loading` flag that is only
active during initial loading of an internal module and checking
that either the module is fully loaded or is in that state before
using its cached value.

This has the effect that builtins modules which could not be loaded
(e.g. because compilation failed due to missing stack space) can be
loaded at a later point.

Fixes: https://github.com/nodejs/node/issues/6899
PR-URL: https://github.com/nodejs/node/pull/6907
Reviewed-By: Ben Noordhuis <info@bnoordhuis.nl>
2016-05-24 17:03:22 +02:00
Anna Henningsen 4bd410bbbe vm: don't abort process when stack space runs out
Make less assumptions about what objects will be available when
vm context creation or error message printing fail because V8
runs out of JS stack space.

Ref: https://github.com/nodejs/node/issues/6899
PR-URL: https://github.com/nodejs/node/pull/6907
Reviewed-By: Ben Noordhuis <info@bnoordhuis.nl>
2016-05-24 17:03:02 +02:00