Sadique Ali [Tue, 1 May 2012 10:33:36 +0000 (16:03 +0530)]
build: improve c compiler detection
Ben Noordhuis [Tue, 15 May 2012 20:05:33 +0000 (22:05 +0200)]
http: fix client request.end() EPIPE race
request.end() would sometimes try to write a zero-length buffer to the socket.
Don't do that, it triggers an unnecessary EPIPE when the other end has closed
the connection.
Fixes #3257.
Ben Noordhuis [Tue, 15 May 2012 15:24:06 +0000 (17:24 +0200)]
node: make _getActiveHandles() return user objects
Before this commit, process._getActiveHandles() returned a list of internal
handles. Now, it returns the user objects that handles are attached to.
For example, a tcp_wrap handle will now return its parent net.Socket object.
It works for all handle types except timers because timer handles are shared
across multiple user objects.
Ben Noordhuis [Sun, 29 Apr 2012 22:58:15 +0000 (00:58 +0200)]
test: verify that connect reqs are cleaned up
Ben Noordhuis [Sat, 28 Apr 2012 16:45:10 +0000 (18:45 +0200)]
process: add _getActiveHandles(), _getActiveRequests()
* process._getActiveHandles() returns a list containing all active handles
(timers, sockets, etc.) that have not been unref'd.
* process._getActiveRequests() returns a list of active requests (in-flight
actions like connecting to a remote host, writing data to a socket, etc.).
Ben Noordhuis [Fri, 27 Apr 2012 16:58:30 +0000 (18:58 +0200)]
req_wrap: share process_symbol, domain_symbol
Share persistent strings process_symbol and domain_symbol across compilation
units. Avoids redefinition errors when src/node.cc includes src/req_wrap.h.
Ben Noordhuis [Fri, 27 Apr 2012 14:54:28 +0000 (16:54 +0200)]
child_process: hook up handle wrap to owning object
Ben Noordhuis [Fri, 27 Apr 2012 14:52:06 +0000 (16:52 +0200)]
child_process: rename field _internal to _handle
Consistent with how other classes that are built around HandleWraps call it.
Ben Noordhuis [Fri, 27 Apr 2012 02:42:10 +0000 (04:42 +0200)]
net: hook up handle wrap to owning object
Ben Noordhuis [Fri, 27 Apr 2012 02:39:05 +0000 (04:39 +0200)]
fs: hook up handle wrap to owning object
Ben Noordhuis [Fri, 27 Apr 2012 02:37:27 +0000 (04:37 +0200)]
dgram: hook up handle wrap to owning object
Andreas Madsen [Thu, 12 Apr 2012 07:23:07 +0000 (09:23 +0200)]
child_process: allow sending a net Socket and Server object using child.send
child_process.fork() support sending native hander object, this patch add support for sending
net.Server and net.Socket object by converting the object to a native handle object and back
to a useful object again.
Note when sending a Socket there was emitted by a net Server object, the server.connections
property becomes null, because it is no longer possible to known when it is destroyed.
Andreas Madsen [Thu, 12 Apr 2012 07:18:12 +0000 (09:18 +0200)]
doc: move child.send details from child_process.fork to child.send
rsolomo [Mon, 14 May 2012 02:17:51 +0000 (19:17 -0700)]
net: make isIP() return 0 on empty input
Nathan Rajlich [Sun, 6 May 2012 19:47:25 +0000 (12:47 -0700)]
buffer: make SlowBuffer inherit from Buffer
This frees us from manually having to copy over functions to SlowBuffer's
prototype (which has bitten us multiple times in the past).
As an added bonus, the `inspect()` function is now shared between Buffer
and SlowBuffer, removing some duplicate code.
Closes #3228.
isaacs [Fri, 11 May 2012 15:49:03 +0000 (08:49 -0700)]
Fix #3058 querystring: Fix incorrect handling of empty keys
Ben Noordhuis [Fri, 11 May 2012 02:39:20 +0000 (04:39 +0200)]
test: add failing dgram refcount test
Idle UDP sockets (reading nor writing) should not keep the event loop alive.
This will get fixed in v0.8 one way or the other.
Ben Noordhuis [Thu, 10 May 2012 14:54:17 +0000 (16:54 +0200)]
child_process: make copy of options arg
Make a copy of the options object that the user passes in, we modify it.
Ben Noordhuis [Thu, 10 May 2012 14:49:35 +0000 (16:49 +0200)]
util: make _extend() more robust
Add a better 'is object?' check, the old one let values like true slip through.
isaacs [Wed, 9 May 2012 17:07:02 +0000 (10:07 -0700)]
Fix #3242 Actually deprecate 'binary' buffer encoding
Alex Kocharin [Sun, 6 May 2012 09:32:49 +0000 (13:32 +0400)]
util: handle non-string return value in .inspect()
Ben Noordhuis [Wed, 9 May 2012 04:06:42 +0000 (06:06 +0200)]
stream_wrap: fix compilation errors
Bert Belder [Wed, 9 May 2012 02:58:26 +0000 (04:58 +0200)]
Net.js: fix UCS2 write crash due to inconsistent naming
Bert Belder [Wed, 9 May 2012 02:34:41 +0000 (04:34 +0200)]
stream_wrap.cc: fix typo
Bert Belder [Tue, 8 May 2012 18:19:38 +0000 (20:19 +0200)]
net.js: make Socket.bytesWritten work again
Earlier string write optimizations broke it.
Bert Belder [Wed, 9 May 2012 01:54:28 +0000 (03:54 +0200)]
StreamWrap::WriteBuffer: remove superfluous arguments
Bert Belder [Mon, 7 May 2012 21:30:55 +0000 (23:30 +0200)]
Optimize writing strings with Socket.write
Bert Belder [Tue, 8 May 2012 16:09:04 +0000 (18:09 +0200)]
Benchmark: add /unicode/nnn bench to http_simple.js
Bert Belder [Tue, 8 May 2012 15:38:02 +0000 (17:38 +0200)]
Benchmark: clean up http_simple.js
Bert Belder [Tue, 8 May 2012 18:17:54 +0000 (20:17 +0200)]
net.js: don't pretend that everything is okay when unwrapping fails
In case of an UNWRAP failure, the binding returns -1, which is truthy.
yangguo@chromium.org [Tue, 8 May 2012 12:38:24 +0000 (12:38 +0000)]
Force inlining CopyChars and String::Get.
BUG=
TEST=
Review URL: https://chromiumcodereview.appspot.com/
10332054
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@11527
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
Ben Noordhuis [Tue, 8 May 2012 14:01:36 +0000 (16:01 +0200)]
Don't use _snprintf() on Windows, it's not safe.
_snprintf() doesn't zero-terminate the buffer on overflow. Use the hand-rolled
version that lives in src/node_internals.h.
Kevin Gadd [Wed, 25 Apr 2012 07:11:06 +0000 (00:11 -0700)]
docs: add warning to vm module docs
Add a clear warning about known issues with the module and a pointer to the
GitHub issues list for the module. Describe some of the biggest known issues
with the module.
James Koval [Sun, 6 May 2012 18:23:09 +0000 (11:23 -0700)]
docs: update var names in readline docs to be consistent
Closes #3201.
isaacs [Sun, 6 May 2012 05:33:06 +0000 (22:33 -0700)]
Upgrade npm to 1.1.21
Somehow this got downgraded in the last v0.6 merge. Very strange.
isaacs [Sun, 6 May 2012 02:27:42 +0000 (19:27 -0700)]
Document http.STATUS_CODES
This is an incredibly useful thing to know about, and it
will likely never change. I can't remember why we
didn't ever document it, and people keep suggesting we
do so.
isaacs [Sat, 5 May 2012 22:07:58 +0000 (15:07 -0700)]
More cluster event consistency
Regarding discussion in #3198. Passing the worker as an argument
to an event emitted on the worker is redundant, and an unnecessary
break in consistency vs the events on the ChildProcess objects.
It was removed from 'exit', but 'listening' and others were
overlooked. This corrects that oversight.
isaacs [Sat, 5 May 2012 22:05:14 +0000 (15:05 -0700)]
Move test-fs-largefile into pummel
It's too slow.
Javier Hernández [Fri, 4 May 2012 22:06:24 +0000 (00:06 +0200)]
build: print error message if no compiler found
Make the configure script warn the user about the lack of an acceptable
C compiler on the system.
koichik [Sat, 5 May 2012 14:10:36 +0000 (23:10 +0900)]
doc: fix setEncoding()
Fixes #3209.
koichik [Sat, 5 May 2012 13:47:24 +0000 (22:47 +0900)]
string_decoder: added support for UTF-16LE
Fixes #3223.
Mark Cavage [Mon, 19 Dec 2011 00:13:51 +0000 (16:13 -0800)]
Add HTTP Status codes from RFC 6585
See: http://tools.ietf.org/html/rfc6585
koichik [Sat, 5 May 2012 03:22:01 +0000 (12:22 +0900)]
string_decoder: add support for CESU-8
Fixes #3217.
isaacs [Sat, 5 May 2012 01:29:56 +0000 (18:29 -0700)]
test: No need for weak in 'make test'
J. Lee Coltrane [Wed, 2 May 2012 16:38:31 +0000 (12:38 -0400)]
cluster: worker exit event to match child_process
test: fixes due to new cluster api.
- changed worker `death` to `exit`.
- corrected argument type expected by worker `exit` handler.
test: more tests of cluster.worker death
cluster: fixed arguments on worker 'exit' event
worker 'exit' event now emits arguments consistent with the
corresponding event in child_process module.
isaacs [Sat, 5 May 2012 00:24:30 +0000 (17:24 -0700)]
Merge branch 'v0.6-merge'
isaacs [Sat, 5 May 2012 00:14:09 +0000 (17:14 -0700)]
Fix incorrect merge choices
Brian Schroeder [Thu, 3 May 2012 20:27:06 +0000 (13:27 -0700)]
net: signal localAddress bind failure in connect
Marcel Laverdet [Fri, 4 May 2012 22:29:42 +0000 (17:29 -0500)]
node: un-revert 9a6012e
The crashes in debug mode after adding Locker are *not* caused by
Locker. Locker is merely exposing issues that already existed. Some of
these issues have since been fixed in
70635753.
This reverts commit
407181538b5193f6810bf06a2056a200265c0e93.
This reapplies commit
9a6012edd9330296b7476bc6b7fbda2cd5c8165d.
Conflicts:
src/node.cc
isaacs [Fri, 4 May 2012 22:12:47 +0000 (15:12 -0700)]
Merge remote-tracking branch 'ry/v0.6' into v0.6-merge
Conflicts:
ChangeLog
Makefile
deps/npm/AUTHORS
deps/npm/html/api/bin.html
deps/npm/html/api/bugs.html
deps/npm/html/api/commands.html
deps/npm/html/api/config.html
deps/npm/html/api/deprecate.html
deps/npm/html/api/docs.html
deps/npm/html/api/edit.html
deps/npm/html/api/explore.html
deps/npm/html/api/help-search.html
deps/npm/html/api/init.html
deps/npm/html/api/install.html
deps/npm/html/api/link.html
deps/npm/html/api/load.html
deps/npm/html/api/ls.html
deps/npm/html/api/npm.html
deps/npm/html/api/outdated.html
deps/npm/html/api/owner.html
deps/npm/html/api/pack.html
deps/npm/html/api/prefix.html
deps/npm/html/api/prune.html
deps/npm/html/api/publish.html
deps/npm/html/api/rebuild.html
deps/npm/html/api/restart.html
deps/npm/html/api/root.html
deps/npm/html/api/run-script.html
deps/npm/html/api/search.html
deps/npm/html/api/shrinkwrap.html
deps/npm/html/api/start.html
deps/npm/html/api/stop.html
deps/npm/html/api/submodule.html
deps/npm/html/api/tag.html
deps/npm/html/api/test.html
deps/npm/html/api/uninstall.html
deps/npm/html/api/unpublish.html
deps/npm/html/api/update.html
deps/npm/html/api/version.html
deps/npm/html/api/view.html
deps/npm/html/api/whoami.html
deps/npm/html/doc/README.html
deps/npm/html/doc/adduser.html
deps/npm/html/doc/bin.html
deps/npm/html/doc/bugs.html
deps/npm/html/doc/build.html
deps/npm/html/doc/bundle.html
deps/npm/html/doc/cache.html
deps/npm/html/doc/changelog.html
deps/npm/html/doc/coding-style.html
deps/npm/html/doc/completion.html
deps/npm/html/doc/config.html
deps/npm/html/doc/deprecate.html
deps/npm/html/doc/developers.html
deps/npm/html/doc/disputes.html
deps/npm/html/doc/docs.html
deps/npm/html/doc/edit.html
deps/npm/html/doc/explore.html
deps/npm/html/doc/faq.html
deps/npm/html/doc/folders.html
deps/npm/html/doc/help-search.html
deps/npm/html/doc/help.html
deps/npm/html/doc/index.html
deps/npm/html/doc/init.html
deps/npm/html/doc/install.html
deps/npm/html/doc/json.html
deps/npm/html/doc/link.html
deps/npm/html/doc/list.html
deps/npm/html/doc/npm.html
deps/npm/html/doc/outdated.html
deps/npm/html/doc/owner.html
deps/npm/html/doc/pack.html
deps/npm/html/doc/prefix.html
deps/npm/html/doc/prune.html
deps/npm/html/doc/publish.html
deps/npm/html/doc/rebuild.html
deps/npm/html/doc/registry.html
deps/npm/html/doc/removing-npm.html
deps/npm/html/doc/restart.html
deps/npm/html/doc/root.html
deps/npm/html/doc/run-script.html
deps/npm/html/doc/scripts.html
deps/npm/html/doc/search.html
deps/npm/html/doc/semver.html
deps/npm/html/doc/shrinkwrap.html
deps/npm/html/doc/star.html
deps/npm/html/doc/start.html
deps/npm/html/doc/stop.html
deps/npm/html/doc/submodule.html
deps/npm/html/doc/tag.html
deps/npm/html/doc/test.html
deps/npm/html/doc/uninstall.html
deps/npm/html/doc/unpublish.html
deps/npm/html/doc/update.html
deps/npm/html/doc/version.html
deps/npm/html/doc/view.html
deps/npm/html/doc/whoami.html
deps/npm/man/man1/npm.1
deps/npm/man/man3/npm.3
deps/npm/package.json
doc/api/url.markdown
lib/http.js
src/node_version.h
test/simple/test-fs-sync-fd-leak.js
isaacs [Fri, 4 May 2012 17:40:27 +0000 (10:40 -0700)]
http: Clean up parser usage
Move parsers.free(parser) to a single function, which also
nulls all of the various references we hang on them.
Also, move the parser.on* methods out of the closure, so that
there's one shared definition of each, instead of re-defining
for each parser in a spot where they can close over references
to other request-specific objects.
Conflicts:
lib/http.js
isaacs [Fri, 4 May 2012 17:32:42 +0000 (10:32 -0700)]
Clean up gc tests
This fixes the additional issues brought up in #3179.
isaacs [Thu, 3 May 2012 17:39:16 +0000 (10:39 -0700)]
http: .once() usage in setTimeout
isaacs [Thu, 3 May 2012 17:16:25 +0000 (10:16 -0700)]
Tests for memory leaks
Conflicts:
Makefile
isaacs [Thu, 3 May 2012 17:20:20 +0000 (10:20 -0700)]
http leak: Null links from parser to req/res
vvo [Thu, 26 Apr 2012 23:02:10 +0000 (01:02 +0200)]
Fix #3179 HTTP memory leak using ClientRequest.
isaacs [Wed, 2 May 2012 19:13:54 +0000 (12:13 -0700)]
http client: Destroy on timeout
isaacs [Tue, 1 May 2012 22:25:59 +0000 (15:25 -0700)]
http: Remove socket ondata/onend in parser cleanup
isaacs [Tue, 1 May 2012 21:26:18 +0000 (14:26 -0700)]
Null references to request object on socket errors.
Regarding #3199 and #3179 and issues seen in production.
Hopefully this fixes them.
isaacs [Fri, 4 May 2012 20:34:33 +0000 (13:34 -0700)]
Now working on 0.6.18
isaacs [Fri, 4 May 2012 20:34:08 +0000 (13:34 -0700)]
Merge branch 'v0.6.17-release' into v0.6
isaacs [Fri, 4 May 2012 18:21:08 +0000 (11:21 -0700)]
2012.05.04 Version 0.6.17 (stable)
* Upgrade npm to 1.1.21
* uv: Add support for EROFS errors (Ben Noordhuis, Maciej Małecki)
* uv: Add support for EIO and ENOSPC errors (Fedor Indutny)
* windows: Add support for EXDEV errors (Bert Belder)
* http: Fix client memory leaks (isaacs, Vincent Voyer)
* fs: fix file descriptor leak in sync functions (Ben Noordhuis)
* fs: fix ReadStream / WriteStream double close bug (Ben Noordhuis)
isaacs [Fri, 4 May 2012 19:51:37 +0000 (12:51 -0700)]
test: Run weak install with --unsafe-perm
This way it doesn't die when running as root.
isaacs [Fri, 4 May 2012 18:06:35 +0000 (11:06 -0700)]
Upgrade npm to 1.1.21
isaacs [Fri, 4 May 2012 18:00:39 +0000 (11:00 -0700)]
isaacs [Fri, 4 May 2012 17:57:33 +0000 (10:57 -0700)]
Update Authors
isaacs [Fri, 4 May 2012 17:54:24 +0000 (10:54 -0700)]
Merge branch 'http-memleak' into v0.6
isaacs [Fri, 4 May 2012 17:40:27 +0000 (10:40 -0700)]
http: Clean up parser usage
Move parsers.free(parser) to a single function, which also
nulls all of the various references we hang on them.
Also, move the parser.on* methods out of the closure, so that
there's one shared definition of each, instead of re-defining
for each parser in a spot where they can close over references
to other request-specific objects.
isaacs [Fri, 4 May 2012 17:32:42 +0000 (10:32 -0700)]
Clean up gc tests
This fixes the additional issues brought up in #3179.
ANDO Takahiro [Tue, 1 May 2012 02:41:29 +0000 (11:41 +0900)]
doc: fix callback argument of child_process.exec, execFile
Fixes #3196.
isaacs [Thu, 3 May 2012 17:39:16 +0000 (10:39 -0700)]
http: .once() usage in setTimeout
isaacs [Thu, 3 May 2012 17:16:25 +0000 (10:16 -0700)]
Tests for memory leaks
isaacs [Thu, 3 May 2012 17:20:20 +0000 (10:20 -0700)]
http leak: Null links from parser to req/res
koichik [Thu, 3 May 2012 14:55:25 +0000 (23:55 +0900)]
buffer: add UTF-16LE encoding name.
vvo [Thu, 26 Apr 2012 23:02:10 +0000 (01:02 +0200)]
Fix #3179 HTTP memory leak using ClientRequest.
Ben Noordhuis [Sat, 21 Apr 2012 05:13:25 +0000 (07:13 +0200)]
addon: add AtExit() function
Lets native addons register exit hooks that run after the event loop has quit
but before the VM is killed.
Fixes #3147.
Igor Zinkovsky [Thu, 19 Apr 2012 18:58:35 +0000 (11:58 -0700)]
64bit offsets for fs calls
Ben Noordhuis [Wed, 2 May 2012 23:03:08 +0000 (01:03 +0200)]
fs: fix file descriptor leak in sync functions
Fixes #3202. This is a back-port of commit 4e290e4.
Ben Noordhuis [Wed, 2 May 2012 23:03:08 +0000 (01:03 +0200)]
fs: fix file descriptor leak in sync functions
Fixes #3202.
Ben Noordhuis [Wed, 2 May 2012 02:24:38 +0000 (04:24 +0200)]
fs: fix ReadStream / WriteStream double close bug
* Calling fs.ReadStream.destroy() or fs.WriteStream.destroy() twice would close
the file descriptor twice. That's bad because the file descriptor may have
been repurposed in the mean time.
* A bad value check in fs.ReadStream.prototype.destroy() would prevent a stream
created with fs.createReadStream({fd:0}) from getting closed.
Ben Noordhuis [Wed, 2 May 2012 22:53:45 +0000 (22:53 +0000)]
Revert "v8: fix "pure virtual method called" runtime error"
It makes mksnapshot die with a segmentation fault on sunos with gcc 4.5.2.
This reverts commit
c21c51a6fce878a4625c30032e669660ce6cbcaf.
isaacs [Wed, 2 May 2012 19:13:54 +0000 (12:13 -0700)]
http client: Destroy on timeout
Ben Noordhuis [Wed, 2 May 2012 16:03:23 +0000 (18:03 +0200)]
tcp, udp: share sockaddr-to-object function
Share AddressToJS() function between tcp_wrap.cc and udp_wrap.cc.
Fedor Indutny [Wed, 2 May 2012 05:30:23 +0000 (12:30 +0700)]
debugger: support mirroring Date objects
* fixes #3203
Yoshihiro Kikuchi [Tue, 1 May 2012 02:32:20 +0000 (11:32 +0900)]
test: add a child domain explicitly
isaacs [Tue, 1 May 2012 22:51:29 +0000 (15:51 -0700)]
Return after emitting error in tty.js
isaacs [Tue, 1 May 2012 22:25:59 +0000 (15:25 -0700)]
http: Remove socket ondata/onend in parser cleanup
isaacs [Tue, 1 May 2012 21:26:18 +0000 (14:26 -0700)]
Null references to request object on socket errors.
Regarding #3199 and #3179 and issues seen in production.
Hopefully this fixes them.
Nathan Rajlich [Tue, 1 May 2012 20:53:30 +0000 (13:53 -0700)]
process: ensure that "exit" doesn't get emitted twice on a natural exit
Fixes "test/simple/test-process-exit.js".
isaacs [Tue, 1 May 2012 20:31:26 +0000 (13:31 -0700)]
Now working on 0.6.17
Fedor Indutny [Tue, 1 May 2012 18:59:59 +0000 (01:59 +0700)]
vm: accept only object as arg of .createContext()
Converting strings and others to objects is very slow and essentially
wrong.
Yi, EungJun [Mon, 2 Apr 2012 16:31:21 +0000 (01:31 +0900)]
path: add path.sep to get the path separator.
Kyle Robinson Young [Sat, 21 Apr 2012 05:58:15 +0000 (22:58 -0700)]
doc: correct return value of string-based fs.readSync
Closes #2330
Ben Noordhuis [Tue, 1 May 2012 12:55:51 +0000 (14:55 +0200)]
udp: slightly optimize address family property
Ben Noordhuis [Tue, 1 May 2012 12:52:00 +0000 (14:52 +0200)]
udp: make variable names consistent
Shigeki Ohtsu [Tue, 1 May 2012 00:49:19 +0000 (09:49 +0900)]
udp: make getsockname() return address family name
Nathan Rajlich [Tue, 1 May 2012 01:51:20 +0000 (18:51 -0700)]
tty: emit "error" instead of throwing when getWindowSize() fails
Garen Torikian [Fri, 23 Mar 2012 02:03:18 +0000 (03:03 +0100)]
doc: add Cloud9 links to docs
Kyle Robinson Young [Sat, 21 Apr 2012 17:55:14 +0000 (10:55 -0700)]
doc: add args to console methods
Kyle Robinson Young [Fri, 30 Mar 2012 06:17:41 +0000 (23:17 -0700)]
doc: typo fixes