Timothy J Fontaine [Wed, 29 Jan 2014 01:16:28 +0000 (17:16 -0800)]
v8: Upgrade to 3.22.24.19
Fedor Indutny [Thu, 23 Jan 2014 09:35:18 +0000 (13:35 +0400)]
node: do not ever close stdio
Even if stdio streams are opened as file streams, we should not ever try
to close them. This could be accomplished by passing `autoClose: false`
in options on their creation.
Fedor Indutny [Tue, 28 Jan 2014 23:23:52 +0000 (03:23 +0400)]
deps: update http_parser to 2.2.1
Main changes:
* Fixed content-length and chunk-size overflow test
Thom Seddon [Tue, 28 Jan 2014 16:18:36 +0000 (16:18 +0000)]
lib: fix unnecessary coercion in lib/net.js
Original patch by @skypjack in #6627
Thom Seddon [Tue, 28 Jan 2014 15:33:48 +0000 (15:33 +0000)]
lib: Remove unused var+operations in util.inspect
This was originally introduced in
6034701 to prevent the closing
brace being pushed onto the next line if an object is longer than
the max width, however the functionality was removed in
d164989 but
the supplementary variables (and operations) were left behind
Timothy J Fontaine [Tue, 28 Jan 2014 22:11:32 +0000 (14:11 -0800)]
src: only define ssize_t on windows if undefined
This matches how libuv handles the definition of ssize_t, by
typedef'ing intptr_t to ssize_t.
However, in the future we will use portable types from stddef.h
Fedor Indutny [Tue, 28 Jan 2014 22:48:10 +0000 (02:48 +0400)]
stream_wrap: use `uv_try_write` where possible
Use `uv_try_write` for string and buffer writes, thus avoiding to do
allocations and copying in some of the cases.
Fedor Indutny [Thu, 23 Jan 2014 11:21:03 +0000 (15:21 +0400)]
node: explicitly include `sys/types.h` for size_t
fix #6724
Timothy J Fontaine [Tue, 28 Jan 2014 02:27:10 +0000 (18:27 -0800)]
test: use logical and not or in abort-fatal-error
Timothy J Fontaine [Tue, 28 Jan 2014 02:05:39 +0000 (18:05 -0800)]
test: make abort-fatal-error more robust
It's saner to check exit codes or signals to determine if the process
actually aborted. On OSX and Linux the exit code is 134, on SunOS it
propagates the SIGABRT signal
Timothy J Fontaine [Tue, 28 Jan 2014 01:39:45 +0000 (17:39 -0800)]
test: fix test-net-listen-fd0 for pipes
In the case of a pipe'd input, i.e. from the CI the fd will be a PIPE
and when listen() is called it will return ENOTSOCK instead of EINVAL.
Keith M Wesolowski [Tue, 17 Dec 2013 00:00:44 +0000 (00:00 +0000)]
node: register modules from DSO constructors
Built-in modules should be automatically registered, replacing the
static module list. Add-on modules should also be automatically
registered via DSO constructors. This improves flexibility in adding
built-in modules and is also a prerequisite to pure-C addon modules.
Jacob Hoffman-Andrews [Fri, 24 Jan 2014 01:28:08 +0000 (17:28 -0800)]
crypto: honor default ciphers in client mode
Right now no default ciphers are use in, e.g. https.get, meaning that
weak export ciphers like TLS_RSA_EXPORT_WITH_DES40_CBC_SHA are
accepted.
To reproduce:
node -e "require('https').get({hostname: 'www.howsmyssl.com', \
path: '/a/check'}, function(res) {res.on('data', \
function(d) {process.stdout.write(d)})})"
Alexis Campailla [Fri, 10 Jan 2014 13:27:48 +0000 (05:27 -0800)]
test: race condition in test-cluster-disconnect
The test was not waiting for all the worker-created sockets
to be listening before calling cluster.disconnect().
As a result, the channels with the workers could get closed
before all the socket handles had been passed to them, leading
to various errors.
Alexis Campailla [Sat, 28 Dec 2013 08:12:40 +0000 (15:12 +0700)]
node: fix argument parsing with -p arg
node -p would cause an access violation.
Fixes test\message\stdin_messages.js on Windows.
Timothy J Fontaine [Mon, 27 Jan 2014 19:02:59 +0000 (11:02 -0800)]
Merge remote-tracking branch 'upstream/v0.10'
Conflicts:
src/node_crypto.cc
test/simple/test-crypto.js
Jun Ma [Sat, 25 Jan 2014 17:50:17 +0000 (01:50 +0800)]
net: make Socket destroy() re-entrance safe
So that we are free to call socket.destroy() in error event handler.
fix #6769
Fedor Indutny [Mon, 27 Jan 2014 17:30:51 +0000 (21:30 +0400)]
deps: update uv to 0.11.18
Fedor Indutny [Sun, 26 Jan 2014 16:09:14 +0000 (20:09 +0400)]
crypto: throw on SignFinal failure
fix #6963
Fedor Indutny [Thu, 23 Jan 2014 12:03:32 +0000 (16:03 +0400)]
crypto: clear error in GetPeerCertificate
fix #6945
Fedor Indutny [Wed, 22 Jan 2014 21:15:04 +0000 (01:15 +0400)]
net: reset `endEmitted` on reconnect
fix #6908
Fedor Indutny [Thu, 23 Jan 2014 10:27:36 +0000 (14:27 +0400)]
deps: backport
b5135bbc from c-ares repo
Original commit message:
ares_parse_txt_reply: return a ares_txt_reply node for each sub-string
Previously, the function would wrongly return all substrings merged into
one.
fix #6931
Fedor Indutny [Thu, 23 Jan 2014 11:35:50 +0000 (15:35 +0400)]
doc: readline document TTY utils
fix #6933
Fedor Indutny [Fri, 24 Jan 2014 12:25:11 +0000 (16:25 +0400)]
http: do not emit EOF non-readable socket
Socket may become not `readable`, but http should not rely on this
property and should not think that it means that no data will ever
arrive from it. In fact, it may arrive in a next tick and, since
`this.push(null)` was already called, it will result in a error like
this:
Error: stream.push() after EOF
at readableAddChunk (_stream_readable.js:143:15)
at IncomingMessage.Readable.push (_stream_readable.js:123:10)
at HTTPParser.parserOnBody (_http_common.js:132:22)
at Socket.socketOnData (_http_client.js:277:20)
at Socket.EventEmitter.emit (events.js:101:17)
at Socket.Readable.read (_stream_readable.js:367:10)
at Socket.socketCloseListener (_http_client.js:196:10)
at Socket.EventEmitter.emit (events.js:123:20)
at TCP.close (net.js:479:12)
fix #6784
Timothy J Fontaine [Sat, 25 Jan 2014 03:13:50 +0000 (19:13 -0800)]
Merge remote-tracking branch 'upstream/v0.10'
Conflicts:
AUTHORS
ChangeLog
deps/uv/AUTHORS
deps/uv/ChangeLog
deps/uv/src/unix/process.c
deps/uv/src/version.c
lib/net.js
node.gyp
src/node_version.h
Fedor Indutny [Fri, 24 Jan 2014 18:08:25 +0000 (22:08 +0400)]
tls_wrap: propagate errors to write callbacks
fix #6903
Fedor Indutny [Wed, 22 Jan 2014 01:07:11 +0000 (05:07 +0400)]
tls: emit `clientError` on early socket close
fix #6903
Scott González [Thu, 23 Jan 2014 14:59:21 +0000 (09:59 -0500)]
doc: fix typo in readline
isaacs [Thu, 23 Jan 2014 21:04:49 +0000 (13:04 -0800)]
npm: Upgrade to v1.3.25
Trevor Norris [Thu, 23 Jan 2014 21:01:53 +0000 (13:01 -0800)]
lint: use reinterpret_cast, not C-style casts
Alexis Campailla [Wed, 22 Jan 2014 16:28:24 +0000 (08:28 -0800)]
test: fix http-incoming-pipelined-socket-destroy
The test was calling server.close() after write on the socket
had completed. However the fact that the write had completed was
not valid indication that the server had received the data.
This would result in a premutaure closing of the server and
an ECONNRESET event on the client.
Alexis Campailla [Thu, 23 Jan 2014 15:10:24 +0000 (07:10 -0800)]
test: fix http-many-ended-pipelines server close
The test was calling server.close() without waiting for the server
to have received all the requests. This would cause an ECONNRESET.
Trevor Norris [Thu, 23 Jan 2014 20:14:40 +0000 (12:14 -0800)]
v8: upgrade to 3.22.24.17
Timothy J Fontaine [Thu, 23 Jan 2014 19:44:32 +0000 (11:44 -0800)]
blog: Post for v0.10.25
Timothy J Fontaine [Thu, 23 Jan 2014 19:44:32 +0000 (11:44 -0800)]
Now working on 0.10.26
Timothy J Fontaine [Thu, 23 Jan 2014 19:44:14 +0000 (11:44 -0800)]
Merge branch 'v0.10.25-release' into v0.10
Fedor Indutny [Thu, 23 Jan 2014 12:55:28 +0000 (16:55 +0400)]
tls: process accumulated input
When creating TLSSocket on top of the regular socket that already
contains some received data, `_tls_wrap.js` should try to write all that
data to the internal `SSL*` instance.
fix #6940
Timothy J Fontaine [Thu, 23 Jan 2014 05:05:51 +0000 (21:05 -0800)]
src: lint lib/net.js
Timothy J Fontaine [Thu, 23 Jan 2014 05:03:08 +0000 (21:03 -0800)]
2014.01.23, Version 0.10.25 (Stable)
* uv: Upgrade to v0.10.23
* npm: Upgrade to v1.3.24
* v8: Fix enumeration for objects with lots of properties
* child_process: fix spawn() optional arguments (Sam Roberts)
* cluster: report more errors to workers (Fedor Indutny)
* domains: exit() only affects active domains (Ryan Graham)
* src: OnFatalError handler must abort() (Timothy J Fontaine)
* stream: writes may return false but forget to emit drain (Yang Tianyang)
Timothy J Fontaine [Thu, 23 Jan 2014 04:47:12 +0000 (20:47 -0800)]
uv: Upgrade to v0.10.23
Trevor Norris [Wed, 22 Jan 2014 21:33:16 +0000 (13:33 -0800)]
node: clear nextTickQueue when using domains
When the domain specific code was reintroduced in
828f145 the
conditional to check and clear the nextTickQueue if many items had run
was not introduced. This allows for the application to run out of memory
if domains are being used in an infinite recursive loop.
Vladimir Kurchatkin [Wed, 25 Dec 2013 15:59:25 +0000 (19:59 +0400)]
doc: skip type parsing inside code blocks
Since types are denoted with curly braces it can cause erroneous
replaces in code blocks.
Signed-off-by: Trevor Norris <trev.norris@gmail.com>
Yorkie [Wed, 22 Jan 2014 12:48:46 +0000 (20:48 +0800)]
crypto: remove duplicate ERR_load_crypto_strings()
ERR_load_crypto_strings() registers the error strings for
all libcrypto functions, SSL_load_error_strings() does the
same, but also registers the libssl error strings.
Ben Noordhuis [Thu, 21 Nov 2013 12:23:43 +0000 (13:23 +0100)]
test: fix array sorting bug
`a === a.sort()` is always true because Array#sort() does an in-place
sort. Make a copy of the array first.
Ben Noordhuis [Thu, 21 Nov 2013 10:29:07 +0000 (11:29 +0100)]
crypto: support custom pbkdf2 digest methods
Make the HMAC digest method configurable. Update crypto.pbkdf2() and
crypto.pbkdf2Sync() to take an extra, optional digest argument.
Before this commit, SHA-1 (admittedly the most common method) was used
exclusively.
Fixes #6553.
Trevor Norris [Tue, 21 Jan 2014 23:03:12 +0000 (15:03 -0800)]
node: remove asyncStack
Now that the context stores the active execution stack, and because
removeAsyncListener() always removed the AsyncListener from the queue
and the stack, there's no need to keep a stack around anymore. Instead
the active asyncQueue and the currentContext is able to handle it all.
Signed-off-by: Forrest L Norvell <ogd@aoaioxxysz.net>
Trevor Norris [Tue, 21 Jan 2014 23:28:23 +0000 (15:28 -0800)]
node: only run same AL once on error
Should have been included with
60fcc11 as it is the same type of fix.
Signed-off-by: Forrest L Norvell <ogd@aoaioxxysz.net>
Jo Liss [Tue, 21 Jan 2014 22:24:58 +0000 (22:24 +0000)]
path: improve POSIX path.join() performance
Performance gains are ~4x (~1.5us), but still much slower than a naive
approach. There is some duplicate work done between join(), normalize()
and normalizeArray() so additional optimizations are possible.
Note that this only improves the POSIX implementation.
Thanks to @isaacs and @othiym23 for helping with this optimization.
Signed-off-by: Trevor Norris <trev.norris@gmail.com>
Fedor Indutny [Mon, 20 Jan 2014 00:37:15 +0000 (00:37 +0000)]
crypto: add newline to cert and key if not present
After one of OpenSSL updates we have stopped accepting PEM private keys
and certificates that doesn't end with a newline (`\n`) character.
Handle this regression in `crypto.js` to make less trouble to our users.
fix #6892
Fedor Indutny [Sun, 19 Jan 2014 23:38:15 +0000 (23:38 +0000)]
crypto: throw only in direct C++ methods
Do not throw in internal C++ methods, that clobbers logic and may lead
to the situations, where both exception was thrown and the value was
returned (via `args.GetReturnValue().Set()`). That doesn't play nicely
with v8.
fix #6912
Fedor Indutny [Sat, 18 Jan 2014 22:49:33 +0000 (22:49 +0000)]
node: `EmitExit` should not call `exit()`
Before this commit `RunAtExit` and `env->Dispose()` were never reached,
because `EmitExit` was always colling `exit`.
Fedor Indutny [Sat, 18 Jan 2014 22:49:18 +0000 (22:49 +0000)]
addons: build and test examples
fix #6910
Alexis Campailla [Tue, 14 Jan 2014 08:45:00 +0000 (00:45 -0800)]
text: give more time to test-next-tick-error-spin
The previous timeout was too short for certain execution conditions
(Windows, debug build, first execution).
Alexis Campailla [Tue, 14 Jan 2014 08:29:57 +0000 (00:29 -0800)]
test: give test-net-GH-5504 more time to run
On Windows debug builds, the test was failing because the timeout
was too short.
Trevor Norris [Tue, 21 Jan 2014 17:22:00 +0000 (09:22 -0800)]
node: compare AsyncListener instances, not uid's
Now that process.createAsyncListener() returns a unique object instance
it is no longer necessary to compare the uid's of the objects.
Signed-off-by: Timothy J Fontaine <tjfontaine@gmail.com>
Trevor Norris [Tue, 21 Jan 2014 06:53:56 +0000 (22:53 -0800)]
node: ensure same AL inst only runs once
It was possible that the same AL instance was run twice if it were both
attached to the currentContext then again added to the new asyncQueue
generated for the new stack.
Signed-off-by: Timothy J Fontaine <tjfontaine@gmail.com>
Trevor Norris [Mon, 20 Jan 2014 21:20:11 +0000 (13:20 -0800)]
async_wrap/timers: remove Add/RemoveAsyncListener
The ability to add/remove an AsyncListener to an object after its
creation was an artifact of trying to get AL working with the domain
module. Now that is no longer necessary and other features are going to
be implemented that would be affected by this functionality. So the code
will be removed for now to simplify the implementation process.
In the future this code will likely be reintroduced, but after some
other more important matters have been addressed.
None of this functionality was documented, as is was meant specifically
for domain specific implementation work arounds.
Signed-off-by: Timothy J Fontaine <tjfontaine@gmail.com>
Fedor Indutny [Fri, 17 Jan 2014 23:08:47 +0000 (23:08 +0000)]
crypto: remove most of the `node_isolate` uses
All C++ code should be using `args.GetIsolate()` or `env->isolate()`.
Using static `node_isolate` var limits possible future functionality
(like multi-isolate support).
Alexis Campailla [Fri, 17 Jan 2014 14:28:47 +0000 (06:28 -0800)]
test: relax timing in test-http-exit-delay
This test was originally intended to guard against regressions for
commit
16b59cbc74c8fe2f8b30f3af4c2f885b7bfb6030.
As such, it only needs to ensure that process exit has not been held up
by the date cache timer, which would fire on the next second.
Alexis Campailla [Mon, 13 Jan 2014 14:02:16 +0000 (06:02 -0800)]
test: debug-signal-cluster increase timeouts
The test needs a little more time to run so that it passes for all
builds (eg: Windows, debug)
Alexis Campailla [Fri, 6 Dec 2013 16:58:15 +0000 (08:58 -0800)]
debug client: connect after child is ready
We now wait to connect to the debuggee until we know that
its error stream has data, to ensure that the output message
"connecting..... ok" appears after "Debugger listening on port xyz"
I also increased the test timeout to let the more complex
tests finish in time on Windows
This change fixes the following unit tests on Windows:
test-debugger-repl.js\r test-debugger-repl-term.js\r test-debugger-repl-utf8.js
test-debugger-repl-restart.js
Timothy J Fontaine [Tue, 14 Jan 2014 01:24:14 +0000 (17:24 -0800)]
test: move debugger repl into own section
Timothy J Fontaine [Tue, 14 Jan 2014 01:09:12 +0000 (17:09 -0800)]
test: refactor to use common testcfg
Fedor Indutny [Sat, 18 Jan 2014 12:18:25 +0000 (12:18 +0000)]
test: ignore tests when built without OpenSSL CLI
fix #6880
Fedor Indutny [Fri, 17 Jan 2014 18:46:49 +0000 (18:46 +0000)]
lib: introduce `.setMaxSendFragment(size)`
fix #6889
Ben Noordhuis [Mon, 20 Jan 2014 15:19:00 +0000 (16:19 +0100)]
doc: tls: note that SSLv2 is disabled by default
As of commit
39aa894, SSLv2 support is disabled by default. Update
the documentation to reflect that.
Ben Noordhuis [Mon, 20 Jan 2014 15:12:37 +0000 (16:12 +0100)]
doc: tls: clarify server cipher list
* Make it clear that ECDHE-RSA-AES128-SHA256 and AES128-GCM-SHA256 are
TLS v1.2 ciphers.
* Note that RC4 is under suspicion.
Fedor Indutny [Mon, 20 Jan 2014 14:39:05 +0000 (18:39 +0400)]
gyp: fix non-ninja build
isaacs [Mon, 20 Jan 2014 05:13:20 +0000 (21:13 -0800)]
npm: Upgrade to v1.3.24
Ben Noordhuis [Wed, 15 Jan 2014 11:50:01 +0000 (12:50 +0100)]
src: don't mark addon_register_func as dllimport
addon_register_func and its cousin addon_context_register_func are type
definitions, dllimport and dllexport are name mangling directives, i.e.
they're quite unrelated concepts. MinGW complains about mixing them
when cross-compiling native add-ons.
Signed-off-by: Trevor Norris <trev.norris@gmail.com>
Signed-off-by: Bert Belder <bertbelder@gmail.com>
Ben Noordhuis [Thu, 16 Jan 2014 17:06:56 +0000 (18:06 +0100)]
tls: make cert/pfx optional in tls.createServer()
Not all ciphers require the presence of a certificate. Remove the
check in lib/_tls_wrap.js.
Fixes #6887.
Ben Noordhuis [Fri, 17 Jan 2014 17:15:36 +0000 (18:15 +0100)]
tls: show human-readable error messages
Before this commit, verification exceptions had err.message set to the
OpenSSL error code (e.g. 'UNABLE_TO_VERIFY_LEAF_SIGNATURE').
This commit moves the error code to err.code and replaces err.message
with a human-readable error. Example:
// before
{
message: 'UNABLE_TO_VERIFY_LEAF_SIGNATURE'
}
// after
{
code: 'UNABLE_TO_VERIFY_LEAF_SIGNATURE',
message: 'unable to verify the first certificate'
}
UNABLE_TO_VERIFY_LEAF_SIGNATURE is a good example of why you want this:
the error code suggests that it's the last certificate that fails to
validate while it's actually the first certificate in the chain.
Going by the number of mailing list posts and StackOverflow questions,
it's a source of confusion to many people.
Timothy J Fontaine [Thu, 16 Jan 2014 22:43:29 +0000 (14:43 -0800)]
blog: nodejs v0.12 roadmap update
Fedor Indutny [Thu, 16 Jan 2014 16:39:12 +0000 (16:39 +0000)]
gyp: fix `ninja` build on linux
fix #6679
Sam Roberts [Wed, 15 Jan 2014 22:40:58 +0000 (14:40 -0800)]
doc: clarify Windows signal sending emulation
Sam Roberts [Thu, 16 Jan 2014 01:16:22 +0000 (17:16 -0800)]
child_process: fix spawn() optional arguments
Spawn's arguments were documented to be optional, as they are for the
other similar child_process APIs, but the code was missing. Result was
`child_process.spawn('node', {})` errored when calling slice() on an
Object, now it behaves as the documentation said it would.
Sam Roberts [Thu, 16 Jan 2014 01:13:32 +0000 (17:13 -0800)]
doc: describe child_process.fork() silent option
Sam Roberts [Thu, 16 Jan 2014 01:12:20 +0000 (17:12 -0800)]
doc: child_process.execFile arguments are optional
Trevor Norris [Wed, 15 Jan 2014 21:49:55 +0000 (13:49 -0800)]
Merge remote-tracking branch 'origin/v0.10'
Conflicts:
lib/domain.js
Ryan Graham [Thu, 9 Jan 2014 05:19:31 +0000 (21:19 -0800)]
domains: exit() only affects active domains
domain.create().exit() should not clear the domain stack if the domain
instance does not exist within the stack.
Signed-off-by: Trevor Norris <trev.norris@gmail.com>
isaacs [Wed, 15 Jan 2014 17:03:45 +0000 (09:03 -0800)]
blog: TJ is the new node core project lead
Fedor Indutny [Mon, 13 Jan 2014 16:51:57 +0000 (16:51 +0000)]
gyp: fix build with python 2.6
fix #6859
Fedor Indutny [Mon, 13 Jan 2014 16:50:37 +0000 (16:50 +0000)]
deps: update gyp to
1eae492b
Alexis Campailla [Mon, 13 Jan 2014 12:57:58 +0000 (04:57 -0800)]
test: terminate gracefully in cluster-net-send
Killing the worker without ensuring the socket was closed
was causing intermittent ECONNRESET errors.
Timothy J Fontaine [Mon, 13 Jan 2014 22:56:41 +0000 (14:56 -0800)]
Merge remote-tracking branch 'upstream/v0.10'
Timothy J Fontaine [Mon, 13 Jan 2014 22:56:12 +0000 (14:56 -0800)]
Merge remote-tracking branch 'upstream/v0.10'
Conflicts:
deps/uv/ChangeLog
deps/uv/build.mk
deps/uv/src/version.c
deps/uv/test/test-ipc.c
deps/v8/src/objects.cc
src/node.cc
src/node_os.cc
Sam Roberts [Thu, 9 Jan 2014 01:16:17 +0000 (17:16 -0800)]
doc: streams must be open to be passed to child
spawn stdio options can be a 'stream', but the following code
fails with "Incorrect value for stdio stream: [object Object]",
despite being a stream. The problem is the test isn't really
for a stream, its for an object with a numeric `.fd` property,
and streams do not have an fd until their async 'open' event
has occurred. This is reasonable, but was not documented.
child_process.spawn('date', [], {stdio: [
'ignore',
fs.createWriteStream('out.txt',{flags:'a'}),
'ignore']})
Alexis Campailla [Mon, 13 Jan 2014 21:16:25 +0000 (13:16 -0800)]
test: close debug client in test-debugger-client
Killing the debuggee without first closing the socket can result
in an ECONNRESET error.
Alex Kocharin [Mon, 6 Jan 2014 07:59:40 +0000 (11:59 +0400)]
http: concatenate duplicate headers by default
Timothy J Fontaine [Sun, 12 Jan 2014 18:04:21 +0000 (10:04 -0800)]
src: return empty set on ENOSYS for interfaces
If node was compiled with --no-ifaddrs to support older operating
systems, don't throw instead simply return an empty object
Fixes #6846
svenpanne@chromium.org [Fri, 9 Nov 2012 11:30:05 +0000 (11:30 +0000)]
v8: backport codereview.chromium.org/
11362182
Keep the number of descriptors below
DescriptorArray::kMaxNumberOfDescriptors even for accessors
Review URL: https://codereview.chromium.org/
11362182
Tom Gallacher [Fri, 10 Jan 2014 19:53:47 +0000 (19:53 +0000)]
util: handle escaped forward slashes correctly
Fixes #6835
gluxon [Wed, 1 Jan 2014 21:26:14 +0000 (16:26 -0500)]
doc: Fix argument typo in SimpleProtocol example
Ryan Graham [Thu, 9 Jan 2014 05:36:54 +0000 (21:36 -0800)]
domain: fix off-by-one in Domain.exit()
We want to clear the found domain and the domains after it.
Signed-off-by: Trevor Norris <trev.norris@gmail.com>
Trevor Norris [Sat, 7 Dec 2013 01:17:02 +0000 (17:17 -0800)]
http: use writev on chunked encoding
Now will process all write() that were done on a single tick in a single
writev().
Jeff Barczewski [Thu, 9 Jan 2014 13:03:33 +0000 (07:03 -0600)]
test: check RR scheduler has necessary methods
The RR cluster scheduler replaces the normal StreamWrap handle. Because
of this the AsyncListener method failed to be in place when domains were
in use.
The issue was resolved in
828f145 by reverting having domains use
AsyncListeners.
Signed-off-by: Trevor Norris <trev.norris@gmail.com>
Timothy J Fontaine [Thu, 9 Jan 2014 21:33:51 +0000 (13:33 -0800)]
src: OnFatalError handler must abort()
We are in an unrecoverable state if v8 throws a FatalError, actually
ask the operating system to dump core in this case.
Fixes #6836
Trevor Norris [Fri, 3 Jan 2014 22:02:51 +0000 (14:02 -0800)]
node: AsyncListener use separate storage mechanism
Before when an AsyncListener object was created and the "create"
callback returned a value, it was necessary to construct a new Object
with the same callbacks but add a place for the new storage value.
Now, instead, a separate storage array is kept on the context which is
used for any return value of the "create" callback. This significantly
reduces the number of Objects that need to be created.
Also added a flags property to the context to quickly check if a
specific callback was available either on the context or on the
AsyncListener instance itself.
Few other minor changes for readability that were difficult to separate
into their own commit.
This has not been optimized yet.
Trevor Norris [Thu, 9 Jan 2014 19:11:40 +0000 (11:11 -0800)]
src: revert domain using AsyncListeners
This is a slightly modified revert of
bc39bdd.
Getting domains to use AsyncListeners became too much of a challenge
with many edge cases. While this is still a goal, it will have to be
deferred for now until more test coverage can be provided.
Fedor Indutny [Wed, 8 Jan 2014 21:08:29 +0000 (01:08 +0400)]
configure: always set `arm_float_abi`
When not specified as a configure flag, and not derived from system
configuration, `arm_float_abi` should be set to `'default'`.
fix #6789