isaacs [Sun, 7 Oct 2012 20:12:21 +0000 (13:12 -0700)]
streams2: Handle immediate synthetic transforms properly
isaacs [Fri, 5 Oct 2012 14:45:03 +0000 (07:45 -0700)]
streams2: Correct drain/return logic
It was testing the length *before* adding the current chunk, which
is the opposite of correct.
Also, the return value was flipped.
isaacs [Fri, 5 Oct 2012 14:43:34 +0000 (07:43 -0700)]
streams2: Allow 0 as a lowWaterMark value
isaacs [Thu, 4 Oct 2012 23:58:43 +0000 (16:58 -0700)]
transform: Automatically read() on _write when read buffer is empty
isaacs [Thu, 4 Oct 2012 20:26:16 +0000 (13:26 -0700)]
streams2: Make Transform streams pull-style
That is, the transform is triggered by a _read, not by a _write.
This way, backpressure works properly.
isaacs [Wed, 3 Oct 2012 23:52:14 +0000 (16:52 -0700)]
streams2: setEncoding and abstract out endReadable
isaacs [Thu, 4 Oct 2012 00:43:27 +0000 (17:43 -0700)]
streams2: Set flowing=true when flowing
isaacs [Tue, 2 Oct 2012 23:28:02 +0000 (16:28 -0700)]
streams2: Convert strings to buffers before passing to _write()
isaacs [Tue, 2 Oct 2012 22:44:50 +0000 (15:44 -0700)]
streams2: The new stream base classes
isaacs [Tue, 2 Oct 2012 23:11:36 +0000 (16:11 -0700)]
Add 'stream' as a native module in repl
isaacs [Tue, 2 Oct 2012 23:10:58 +0000 (16:10 -0700)]
module: Support cycles in native module requires
isaacs [Fri, 5 Oct 2012 00:43:15 +0000 (17:43 -0700)]
Don't allow invalid encodings in StringDecoder class
isaacs [Fri, 14 Dec 2012 00:57:58 +0000 (16:57 -0800)]
Merge remote-tracking branch 'ry/v0.8' into master
Conflicts:
AUTHORS
ChangeLog
deps/uv/test/test-spawn.c
deps/uv/uv.gyp
src/cares_wrap.cc
src/node.cc
src/node_version.h
test/simple/test-buffer.js
tools/gyp/pylib/gyp/common.py
tools/install.py
isaacs [Thu, 13 Dec 2012 19:50:47 +0000 (11:50 -0800)]
blog: Post for 0.8.16
isaacs [Thu, 13 Dec 2012 19:50:35 +0000 (11:50 -0800)]
Now working on 0.8.17
isaacs [Thu, 13 Dec 2012 19:50:15 +0000 (11:50 -0800)]
Merge commit 'v0.8.16' into v0.8
isaacs [Wed, 12 Dec 2012 22:44:54 +0000 (14:44 -0800)]
2012.12.13, Version 0.8.16 (Stable)
* npm: Upgrade to 1.1.69
* fs: fix WriteStream/ReadStream fd leaks (Ben Noordhuis)
* crypto: fix leak in GetPeerCertificate (Fedor Indutny)
* buffer: Don't double-negate numeric buffer arg (Trevor Norris)
* net: More accurate IP address validation and IPv6 dotted notation. (Joshua Erickson)
Ben Noordhuis [Thu, 13 Dec 2012 19:23:01 +0000 (20:23 +0100)]
deps: upgrade libuv to e079a99
isaacs [Wed, 12 Dec 2012 22:41:28 +0000 (14:41 -0800)]
npm: Upgrade to v1.1.69
Ben Noordhuis [Tue, 11 Dec 2012 15:01:58 +0000 (16:01 +0100)]
fs: fix WriteStream fd leak
Close the file descriptor when a write operation fails.
Fixes #4387.
Ben Noordhuis [Tue, 11 Dec 2012 13:45:45 +0000 (14:45 +0100)]
fs: fix ReadStream fd leak
Close the file descriptor when a read operation fails.
Fixes #4387.
Ben Noordhuis [Tue, 31 Jul 2012 15:47:53 +0000 (17:47 +0200)]
test: add common.mustCall function
Verifies that the callback gets invoked <n> times during the lifetime of the
test script.
This is a back-port of commit d0e6c3f from the master branch.
isaacs [Tue, 11 Dec 2012 00:56:49 +0000 (16:56 -0800)]
doc: Add nodejstr to community page
Ryunosuke SATO [Mon, 10 Dec 2012 09:32:56 +0000 (18:32 +0900)]
events: fix typos in code comment
- newListeners -> newListener
Ryunosuke SATO [Mon, 10 Dec 2012 09:16:13 +0000 (18:16 +0900)]
events: setMaxListeners() should not have side effects
This object initialization has been unnecessary since
12cf730b.
Ref #3803.
Ryunosuke SATO [Mon, 10 Dec 2012 09:07:23 +0000 (18:07 +0900)]
events: use assigned variable instead of arguments
Always `arguments[0]` is used when `EventEmitter#emit` called.
Using assigned variable is faster than `arguments[0]`.
Ryunosuke SATO [Mon, 10 Dec 2012 04:34:33 +0000 (13:34 +0900)]
events: use null assignment instead of deleting property
Bert Belder [Mon, 19 Nov 2012 19:42:35 +0000 (20:42 +0100)]
http: protect against response splitting attacks
isaacs [Sat, 8 Dec 2012 00:58:16 +0000 (16:58 -0800)]
lint
introduced in 5b65638.
isaacs [Sat, 8 Dec 2012 00:50:12 +0000 (16:50 -0800)]
fs: Raise error when null bytes detected in paths
Reworking of @bnoordhuis's more aggressive approach.
Ben Noordhuis [Thu, 6 Dec 2012 20:58:29 +0000 (21:58 +0100)]
doc: remove broken require.extensions example
Fixes #4384.
Ben Noordhuis [Mon, 3 Dec 2012 17:29:01 +0000 (18:29 +0100)]
tls, https: add tls handshake timeout
Don't allow connections to stall indefinitely if the SSL/TLS handshake does
not complete.
Adds a new tls.Server and https.Server configuration option, handshakeTimeout.
Fixes #4355.
Ben Noordhuis [Tue, 4 Dec 2012 05:36:23 +0000 (06:36 +0100)]
process: add getgroups(), setgroups(), initgroups()
DRY the getuid(), getgid(), etc. functions while we're at it.
Ben Noordhuis [Thu, 6 Dec 2012 03:45:11 +0000 (04:45 +0100)]
buffer: remove unused #includes
Ben Noordhuis [Wed, 5 Dec 2012 04:43:29 +0000 (05:43 +0100)]
test: remove simple/test-child-process-fork2
The test assumes the parent and the child are scheduled fairly. Probably true
most of the time but not always, making it fail spuriously.
Bad test, remove it.
Shigeki Ohtsu [Wed, 28 Nov 2012 08:18:06 +0000 (17:18 +0900)]
test: fix simple/test-debug-brk-file race condition
V8 debug agent needs some time to be ready and no longer sends the first event
break response to a debug client. We wait some time to connect the agent and
check its break status by obtaining breakpoint list and seeing if it exists on
line 0.
Ben Noordhuis [Tue, 4 Dec 2012 02:35:54 +0000 (03:35 +0100)]
fs: add long stacktrace debugging facility
Enable long stacktraces if NODE_DEBUG=fs is set in the environment. Only
applies to the default rethrow callback; it's to help you find places where
you forgot to pass in a callback.
Ben Noordhuis [Tue, 4 Dec 2012 02:17:52 +0000 (03:17 +0100)]
fs: fix 'object is not a function' callback errors
Use a default callback if the user omitted one. Avoids errors like the one
below:
fs.js:777
if (err) return callback(err);
^
TypeError: object is not a function
at fs.appendFile (fs.js:777:21)
at Object.oncomplete (fs.js:297:15)
This commit fixes the behavior of fs.lchmod(), fs.lchown() and fs.readFile()
when the callback is omitted. Before, they silently swallowed errors.
Fixes #4352.
Bert Belder [Mon, 3 Dec 2012 21:34:27 +0000 (22:34 +0100)]
os: throw when os.networkInterfaces() fails
Fedor Indutny [Sat, 1 Dec 2012 18:26:40 +0000 (22:26 +0400)]
crypto: fix leak in GetPeerCertificate
Fedor Indutny [Sat, 1 Dec 2012 18:26:40 +0000 (22:26 +0400)]
crypto: fix leak in GetPeerCertificate
Ben Noordhuis [Mon, 3 Dec 2012 02:08:17 +0000 (03:08 +0100)]
test: fix simple/test-setproctitle on freebsd
Ben Noordhuis [Mon, 3 Dec 2012 01:19:15 +0000 (02:19 +0100)]
build: avoid -Wno-old-style-declaration with gcc 4.2
Fixes the build on FreeBSD <= 9 with the default compiler.
Fixes #4186.
Ben Noordhuis [Sun, 2 Dec 2012 02:01:17 +0000 (03:01 +0100)]
tools: fix platform detection on freebsd, sunos
This is a back-port of upstream gyp commit r1482.
Ben Noordhuis [Sun, 2 Dec 2012 01:54:14 +0000 (02:54 +0100)]
install: fix freebsd man page location
Man pages go into $PREFIX/man on FreeBSD, not $PREFIX/share/man.
isaacs [Sat, 1 Dec 2012 02:21:01 +0000 (18:21 -0800)]
test: TTY only has writeBuffer(), not write()
This test is only passing because it's skipped normally.
isaacs [Mon, 12 Nov 2012 19:01:03 +0000 (11:01 -0800)]
benchmark: Add net-pipe benchmark
Just sends a buffer to a server, which echoes it back, and then measures
the Gbits/second. Very similar to throughput.js, but using a single
process, so that it's possible to dtrace and get the jsstack frames for
profile comparison.
Lewuathe [Fri, 30 Nov 2012 01:13:52 +0000 (10:13 +0900)]
Fix dropped html tag
Trevor Norris [Fri, 30 Nov 2012 21:02:39 +0000 (13:02 -0800)]
buffer: Don't double-negate numeric buffer arg
Fix #4331
Using double negate forces values into 32bit space. Because of this
Math.ceil needs to be used. Since NaN comparisons are always false, use
that to our advantage to return 0 if it is.
Also added two tests to verify the changes.
Kyle Robinson Young [Thu, 29 Nov 2012 18:59:12 +0000 (10:59 -0800)]
website: typo fixes
Joshua Erickson [Tue, 9 Oct 2012 00:51:59 +0000 (19:51 -0500)]
net: More accurate IP address validation and IPv6 dotted notation.
* Added isIP method to make use of inet_pton to cares_wrap.cc
* Modified net.isIP() to make use of new C++ isIP method.
* Added new tests to test-net-isip.js.
This is a back-port of commit fb6377e from the master branch.
Ryunosuke SATO [Tue, 27 Nov 2012 14:52:49 +0000 (23:52 +0900)]
doc: Fix missing link target to 'https.request()'
Chad Rhyner [Sat, 24 Nov 2012 04:49:42 +0000 (20:49 -0800)]
test: disable eio-race tests
Disabled the following unit tests:
* test-eio-race.js
* test-eio-race2.js
* test-eio-race4.js
These tests are known to fail on busy boxes due to being timing sensitive,
and are deemed not meaningful tests.
See https://github.com/joyent/node/issues/4272
Fixes #4272.
Adam Malcontenti-Wilson [Tue, 27 Nov 2012 05:03:36 +0000 (16:03 +1100)]
build: support ARM in makefile target 'binary'
Michael Axiak [Mon, 26 Nov 2012 18:40:24 +0000 (13:40 -0500)]
build: add $(PYTHON) when calling configure
isaacs [Mon, 26 Nov 2012 17:18:51 +0000 (09:18 -0800)]
blog: Post for v0.8.15
isaacs [Mon, 26 Nov 2012 17:18:33 +0000 (09:18 -0800)]
Now working on 0.8.16
isaacs [Mon, 26 Nov 2012 17:12:52 +0000 (09:12 -0800)]
Merge branch 'v0.8.15-release' into v0.8
isaacs [Thu, 25 Oct 2012 20:49:32 +0000 (13:49 -0700)]
2012.11.26, Version 0.8.15 (Stable)
* npm: Upgrade to 1.1.66 (isaacs)
* linux: use /proc/cpuinfo for CPU frequency (Ben Noordhuis)
* windows: map WSAESHUTDOWN to UV_EPIPE (Ben Noordhuis)
* windows: map ERROR_GEN_FAILURE to UV_EIO (Bert Belder)
* unix: do not set environ unless one is provided (Charlie McConnell)
* domains: don't crash if domain is set to null (Bert Belder)
* windows: fix the x64 debug build (Bert Belder)
* net, tls: fix connect() resource leak (Ben Noordhuis)
Ben Noordhuis [Mon, 26 Nov 2012 00:50:04 +0000 (01:50 +0100)]
tls: fix tls.connect() resource leak
The 'secureConnect' event listener was attached with .on(), which blocked it
from getting garbage collected. Use .once() instead.
Fixes #4308.
Ben Noordhuis [Sat, 24 Nov 2012 14:24:36 +0000 (15:24 +0100)]
net: fix net.connect() resource leak
The 'connect' event listener was attached with .on(), which blocked it from
getting garbage collected. Use .once() instead.
Fixes #4308.
Ben Noordhuis [Sat, 24 Nov 2012 00:14:06 +0000 (01:14 +0100)]
js2c: raise proper Exception, not a string
Fixes the following error message:
TypeError: exceptions must be old-style classes or derived
from BaseException, not str
Fixes #4303.
Ben Noordhuis [Fri, 23 Nov 2012 22:53:15 +0000 (23:53 +0100)]
crypto: allow negative numbers in setOptions()
OR'ing together two large values, like `SSL_OP_ALL | SSL_OP_NO_TICKET`,
produces a negative number. To wit:
assert((0x80000000 | 0x4000) === -0x7fffc000); // true
assert((0x80000000 | 0x4000) === 0x80004000); // false!
It's easy to work around by doing a logical shift, like this:
assert((0x80000000 | 0x4000) >>> 0 === 0x80004000); // true
But that's not very intuitive. Let's be more lenient in what we accept.
isaacs [Fri, 23 Nov 2012 20:54:33 +0000 (12:54 -0800)]
blog: Don't filter out non-latest release notes
This causes too many people to ask me why it's broken.
isaacs [Fri, 23 Nov 2012 20:51:23 +0000 (12:51 -0800)]
npm: Upgrade to 1.1.66
Trevor Norris [Thu, 22 Nov 2012 17:30:18 +0000 (09:30 -0800)]
doc: Add lines about additonal uses of Buffer
That Buffers can be used with Typed Array Views and DataViews. Included
are a couple simple examples.
Closes #4257.
Ben Noordhuis [Thu, 22 Nov 2012 15:10:35 +0000 (16:10 +0100)]
constants: fix wrapping of large constants
Use Number::New() instead of Integer::New(). The latter wraps large values,
e.g. 0x80000000 becomes -
2147483648 instead of
2147483648.
Shigeki Ohtsu [Wed, 21 Nov 2012 08:34:56 +0000 (17:34 +0900)]
build: disable use of thin archive
Thin archive needs binutils >= 2.19, disable it for supporting old ar
even if static libraries are linked within a local build.
Scott Blomquist [Tue, 20 Nov 2012 23:27:22 +0000 (00:27 +0100)]
windows: add tracing with performance counters
Patch by Henry Rawas and Scott Blomquist.
Bert Belder [Wed, 21 Nov 2012 00:00:45 +0000 (01:00 +0100)]
windows: fix normalization of UNC paths
Ben Noordhuis [Tue, 20 Nov 2012 17:12:07 +0000 (18:12 +0100)]
v8: fix dragonflybsd build
* fix gyp build
* don't require libexecinfo, it's not there
* libpthread doesn't implement sem_timedwait(), fall back to sem_wait()
Upstreamed in https://codereview.chromium.org/
11421013/
Ben Noordhuis [Tue, 20 Nov 2012 16:28:28 +0000 (17:28 +0100)]
build: make python executable configurable
Upstreamed in https://codereview.chromium.org/
11418101/
Fixes #4287.
Ben Noordhuis [Tue, 20 Nov 2012 20:42:21 +0000 (21:42 +0100)]
deps: upgrade cares to 213f2b7
Ben Noordhuis [Tue, 20 Nov 2012 19:11:08 +0000 (20:11 +0100)]
deps: upgrade libuv to fc5984f
Ben Noordhuis [Tue, 20 Nov 2012 18:21:48 +0000 (19:21 +0100)]
deps: upgrade libuv to 5639b2f
Tim Kuijsten [Tue, 20 Nov 2012 16:15:17 +0000 (17:15 +0100)]
doc: fix typo in setPrivateKey function signature
Ben Noordhuis [Tue, 20 Nov 2012 14:51:25 +0000 (15:51 +0100)]
tools: update gyp to r1535
This commit contains one additional patch that makes gyp work on DragonFlyBSD,
see https://codereview.chromium.org/
11348152/ for details.
Sergey Kholodilov [Fri, 9 Nov 2012 20:32:28 +0000 (00:32 +0400)]
crypto: fix ssl error handling
Make HandleSSLError() correctly process a zero status code: sometimes it
indicates an error and sometimes it doesn't.
Ben Noordhuis [Fri, 16 Nov 2012 22:44:42 +0000 (23:44 +0100)]
node: remove eio-emul.h
The purpose of this file was to remap the old libeio API to the new one.
We dropped libeio in ee77a6a and this file has been broken ever since.
Ergo, remove it.
Stephen Gallagher [Tue, 23 Oct 2012 23:54:22 +0000 (19:54 -0400)]
build: allow linking against system libuv
Ben Noordhuis [Fri, 16 Nov 2012 16:57:15 +0000 (17:57 +0100)]
deps: upgrade libuv to 665a316
isaacs [Sun, 11 Nov 2012 18:02:33 +0000 (10:02 -0800)]
bench: Use hrtime in throughput benchmark
Ben Noordhuis [Sat, 10 Nov 2012 17:21:13 +0000 (18:21 +0100)]
repl: don't interpret floating point numbers
Don't interpret floating point numbers, e.g. ".1234", as REPL commands.
Fixes #4268.
Trevor Norris [Fri, 9 Nov 2012 22:02:45 +0000 (14:02 -0800)]
buffer: remove duplicate assertion tests
Many assertion tests are duplicated in buffer.js. These few could be easily
removed and still have all tests pass.
Bert Belder [Thu, 8 Nov 2012 23:49:24 +0000 (00:49 +0100)]
domains: don't crash if domain is set to null
Closes #4256
Bert Belder [Thu, 8 Nov 2012 22:54:53 +0000 (23:54 +0100)]
windows: fix the x64 debug build
Nathan Rajlich [Thu, 8 Nov 2012 20:31:45 +0000 (12:31 -0800)]
os: add os.endianness() function
Nathan Rajlich [Tue, 6 Nov 2012 22:58:47 +0000 (14:58 -0800)]
readline: use a "string_decoder" to parse "keypress" events
While updating the readline test cases to test both "terimal: false" and
"terminal: true" mode, it turned out that the test case testing utf8 chars
being sent over multiple write() calls was failing. The solution is to use
a string_decoder instance when parsing the "keypress" events.
Nathan Rajlich [Tue, 6 Nov 2012 22:54:58 +0000 (14:54 -0800)]
readline: don't emit "line" events with a trailing '\n' char
Before this commit, readline was inconsistent in whether or not it would emit
"line" events with or without the trailing "\n" included. When "terminal"
mode was true, then there would be no "\n", when it was false, then the "\n"
would be present. However, the trailing "\n" doesn't add much, and most of the
time people just end up stripping it manually.
Part of #4243.
Joshua Erickson [Tue, 9 Oct 2012 00:51:59 +0000 (19:51 -0500)]
net: More accurate IP address validation and IPv6 dotted notation.
* Added isIP method to make use of inet_pton to cares_wrap.cc
* Modified net.isIP() to make use of new C++ isIP method.
* Added new tests to test-net-isip.js.
Shigeki Ohtsu [Wed, 10 Oct 2012 07:28:42 +0000 (16:28 +0900)]
build: remove jslint test/ on Windows
See
605927fbd9c2fbcd7d88a8f8159a9ca78417a6d0
Timothy J Fontaine [Thu, 25 Oct 2012 14:53:51 +0000 (10:53 -0400)]
build: enable DEAD_CODE_STRIPPING on OS X
Timothy J Fontaine [Fri, 14 Sep 2012 18:29:33 +0000 (14:29 -0400)]
build: let xcode pick proper compiler
Timothy J Fontaine [Fri, 14 Sep 2012 18:16:43 +0000 (14:16 -0400)]
build: add configure option to generate xcode build files
Timothy J Fontaine [Fri, 14 Sep 2012 18:14:35 +0000 (14:14 -0400)]
build: add postmortem as a dependency if enabled
Stephen Gallagher [Tue, 23 Oct 2012 14:27:19 +0000 (10:27 -0400)]
build: allow linking against system c-ares
Stephen Gallagher [Tue, 23 Oct 2012 13:01:26 +0000 (09:01 -0400)]
build: allow linking against system http_parser
Anthony Pesch [Sat, 13 Oct 2012 02:56:51 +0000 (19:56 -0700)]
typed arrays: add slice() support to ArrayBuffer
Fedor Indutny [Wed, 17 Oct 2012 17:06:37 +0000 (00:06 +0700)]
debugger: exit and kill child on SIGTERM or SIGHUP
Ben Noordhuis [Sun, 4 Nov 2012 00:26:27 +0000 (01:26 +0100)]
build: remove _LARGEFILE_SOURCE, _FILE_OFFSET_BITS
Don't define the _LARGEFILE_SOURCE and _FILE_OFFSET_BITS flags, they're
inherited from libuv now.