Ben Noordhuis [Wed, 6 Jun 2012 19:07:54 +0000 (21:07 +0200)]
fs: make fs.symlink() with no callback async
Fix a bug where fs.symlink('foo', 'bar') executed symlink(2) synchronously.
Joel Brandt [Wed, 6 Jun 2012 01:32:44 +0000 (18:32 -0700)]
add NODE_EXTERN to node::Start
Ben Noordhuis [Wed, 6 Jun 2012 03:21:07 +0000 (05:21 +0200)]
deps: upgrade libuv to 649ad50
isaacs [Tue, 5 Jun 2012 19:02:37 +0000 (12:02 -0700)]
Warn about running npm in the repl
Nathan Rajlich [Sun, 27 May 2012 07:47:40 +0000 (00:47 -0700)]
test: make the node-weak install build agaist this repo
This prevents node-gyp from attempting to download dev header files from
nodejs.org. Instead, the files in this repo will be used to build the module.
Ben Noordhuis [Tue, 5 Jun 2012 13:45:46 +0000 (15:45 +0200)]
deps: upgrade libuv to c8c9fe1
Ben Noordhuis [Tue, 5 Jun 2012 14:45:29 +0000 (16:45 +0200)]
udp_wrap, stream_wrap: lazy init slab allocator
Create slab allocator when binding is initialized.
Add an AtExit handler to destroy the slab before the VM shuts down, it can't be
disposed when V8 is dead and Valgrind will complain about memory leaks.
Ben Noordhuis [Tue, 5 Jun 2012 13:58:55 +0000 (15:58 +0200)]
slab_allocator: fix crash in dtor if V8 is dead
Don't try to dispose the persistent handles if the VM is already dead, it
triggers an assertion inside V8.
Shigeki Ohtsu [Tue, 5 Jun 2012 10:24:15 +0000 (19:24 +0900)]
slab_allocator: fix leak of Persistent handles
isaacs [Tue, 5 Jun 2012 00:32:46 +0000 (17:32 -0700)]
Upgrade npm to 1.1.24
isaacs [Mon, 4 Jun 2012 18:21:42 +0000 (11:21 -0700)]
build: Don't clobber symlinked npm
Bert Belder [Mon, 4 Jun 2012 19:39:23 +0000 (21:39 +0200)]
windows/msi: minor installer tweaks
Jeroen Janssen [Mon, 4 Jun 2012 16:59:01 +0000 (18:59 +0200)]
windows/msi: add node.js prompt to startmenu
isaacs [Mon, 4 Jun 2012 18:10:31 +0000 (11:10 -0700)]
v8: Don't use 'echo -n' in configure script
Ben Noordhuis [Mon, 4 Jun 2012 13:02:02 +0000 (15:02 +0200)]
net: rename flag FLAG_SHUTDOWNQUED
Jeroen Janssen [Sun, 3 Jun 2012 09:03:49 +0000 (11:03 +0200)]
windows/msi: fix adding node to PATH
Closes #3366
Bert Belder [Mon, 4 Jun 2012 12:04:15 +0000 (14:04 +0200)]
Improve child process stdio documentation
Jeroen Janssen [Sat, 2 Jun 2012 19:49:31 +0000 (21:49 +0200)]
windows/msi: add start menu links when installing
Jeroen Janssen [Sat, 2 Jun 2012 16:36:20 +0000 (18:36 +0200)]
windows/msi: cleanup WiX project files
The current WiX project files do some manual processing and generation
which WiX supports doing out of the box. This patch will use the
HeatDirectory task to generate the npm.wxs file and use the auto GUID
generation. I also changed the msi filename generation to include the
version number to match the currently used name for released msi files.
Closes #3360
Bert Belder [Sat, 2 Jun 2012 14:01:18 +0000 (16:01 +0200)]
Unbreak the Windows build
The v8 team apparently decided that all build products should go
into ./build/«type», and updated their common.gypi file to do so.
Unfortunately v8's common.gypi is only used for some targets. All
the other targets would still look in the old place to find their
their dependencies, which effectively broke the build.
In the long run it would be good for node to send all build
output to ./build too, on all platforms.
isaacs [Tue, 29 May 2012 22:32:20 +0000 (15:32 -0700)]
test: v8 stack trace messages changed slightly
Ben Noordhuis [Tue, 24 Apr 2012 01:41:49 +0000 (03:41 +0200)]
v8: debug: fix error handling in SendConnectMessage()
The old error handling code checked if the return value of Socket::Send() != 0,
which is wrong because Socket::Send() can write less bytes than requested or
return -1 on error.
isaacs [Tue, 29 May 2012 22:09:31 +0000 (15:09 -0700)]
v8: Floating patches
isaacs [Tue, 29 May 2012 22:05:24 +0000 (15:05 -0700)]
Upgrade v8 to 3.11.7
Fedor Indutny [Wed, 16 May 2012 16:04:24 +0000 (23:04 +0700)]
child_process: new stdio API for .spawn() method
Simon Sturmer [Fri, 1 Jun 2012 07:33:19 +0000 (17:33 +1000)]
http: don't lowercase http req header until later
Don't lowercase the request header until we're in the _addHeaderLine method,
makes it easier to intercept the raw request headers.
Matt Gollob [Fri, 1 Jun 2012 02:44:10 +0000 (22:44 -0400)]
windows: don't install x64 version into the 'program files (x86)' folder
* Update nodemsi.sln and .wixproj to include support for x64 platform
- Add ProgramFilesFolderId to the DefineConstants property for each
configuration/platform's property group with the appropriate value
(ProgramFilesFolder for x86 builds, ProgramFiles64Folder for x64
builds)
* Update product.wxs:
- update the Id value for the "Program Files" Directory element to
use a preprocessor constant.
- remove hard-coded platform from the Package element. MSI platform
will be automatically detected based on MSBuild's Platform property.
(This was already supported in the Wix MSBuild targets, we just
weren't taking advantage of it.)
* Update vcbuild.bat to set MSBuild's Platform property appropriately,
defaulting to x86 if not explicitly supplied by the user. Note that
creating an x64 build requires that vcbuild.bat be run from a VS
64-bit command prompt.
Closes #3312
Closes #3356
Bert Belder [Sat, 2 Jun 2012 00:01:57 +0000 (02:01 +0200)]
windows: add icon to node.exe
The icon could definitely be nicer, patches welcome.
Credits to Nathan Rajlich for putting together this one.
Fedor Indutny [Wed, 16 May 2012 16:04:24 +0000 (23:04 +0700)]
child_process: new stdio API for .spawn() method
Bert Belder [Fri, 1 Jun 2012 16:07:22 +0000 (18:07 +0200)]
Ben Noordhuis [Wed, 30 May 2012 23:46:53 +0000 (01:46 +0200)]
test: update pummel/test-exec
ChildProcess.prototype._internal is called ChildProcess.prototype._handle now.
isaacs [Tue, 29 May 2012 17:08:24 +0000 (10:08 -0700)]
Now working on 0.7.10
isaacs [Tue, 29 May 2012 17:07:44 +0000 (10:07 -0700)]
Merge branch 'v0.7.9-release'
Fedor Indutny [Mon, 28 May 2012 19:52:34 +0000 (23:52 +0400)]
deps: upgrade libuv to 7556590
Ben Noordhuis [Tue, 29 May 2012 11:05:49 +0000 (13:05 +0200)]
net: fix 'close' event emit order
The server 'close' event was emitted before the last client 'close' event. Not
exactly fatal but potentially confusing.
Before this commit the order looked something like [client, server, client],
now it looks like [client, client, server].
See #3340 for more details.
isaacs [Sat, 26 May 2012 05:20:21 +0000 (22:20 -0700)]
2012.05.28, Version 0.7.9 (unstable)
* Upgrade V8 to 3.11.1
* Upgrade npm to 1.1.23
* uv: rework reference counting scheme (Ben Noordhuis)
* uv: add interface for joining external event loops (Bert Belder)
* repl, readline: Handle Ctrl+Z and SIGCONT better (Nathan Rajlich)
* fs: 64bit offsets for fs calls (Igor Zinkovsky)
* fs: add sync open flags 'rs' and 'rs+' (Kevin Bowman)
* windows: enable creating directory junctions with fs.symlink (Igor Zinkovsky, Bert Belder)
* windows: fix fs.lstat to properly detect symlinks. (Igor Zinkovsky)
* Fix #3270 Escape url.parse delims (isaacs)
* http: make http.get() accept a URL (Adam Malcontenti-Wilson)
* Cleanup vm module memory leakage (Marcel Laverdet)
* Optimize writing strings with Socket.write (Bert Belder)
* add support for CESU-8 and UTF-16LE encodings (koichik)
* path: add path.sep to get the path separator. (Yi, EungJun)
* net, http: add backlog parameter to .listen() (Erik Dubbelboer)
* debugger: support mirroring Date objects (Fedor Indutny)
* addon: add AtExit() function (Ben Noordhuis)
* net: signal localAddress bind failure in connect (Brian Schroeder)
* util: handle non-string return value in .inspect() (Alex Kocharin)
isaacs [Sun, 27 May 2012 15:32:31 +0000 (08:32 -0700)]
Revert "tests: kill process group on failure"
This reverts commit
0cebfc8ddb509fbf5f865bb660b73e96680b3f65.
isaacs [Sun, 27 May 2012 05:36:04 +0000 (22:36 -0700)]
upgrade npm to 1.1.23
This also upgrades node-gyp to 0.4.3
Ben Noordhuis [Mon, 28 May 2012 22:06:36 +0000 (22:06 +0000)]
deps: cherry-pick libuv commit 4690204
libuv cannot be upgraded right now (API change in upstream libuv) but this
commit fixes a segmentation fault on SunOS systems, hence the cherry-pick.
Shigeki Ohtsu [Mon, 28 May 2012 06:36:04 +0000 (15:36 +0900)]
http: fix duplicated variable declaration
Maciej Małecki [Sun, 27 May 2012 21:29:00 +0000 (23:29 +0200)]
stream: don't call `cleanup` twice on `end` and `close`
Ben Noordhuis [Sun, 27 May 2012 22:32:16 +0000 (00:32 +0200)]
deps: upgrade libuv to 2ec0986
Andreas Madsen [Sat, 26 May 2012 13:28:35 +0000 (15:28 +0200)]
fs: no end emit after createReadStream.pause()
In case a fd option is given to fs.createReadStream a read will instantly
happen. But in the edge case where fd point to an empty file and .pause()
was executed instantly, the end event would emit since no async wait was
between fs.createReadStream and the file read there emits end.
Jeroen Janssen [Sat, 26 May 2012 10:36:05 +0000 (12:36 +0200)]
doc: add npm search to appendix
Fixes #3327.
Jeroen Janssen [Sat, 26 May 2012 10:25:44 +0000 (12:25 +0200)]
doc: updated JavaScript casing where relevant
Fixes #3326.
Ben Noordhuis [Fri, 25 May 2012 12:02:35 +0000 (14:02 +0200)]
deps: upgrade libuv to 28766dc
isaacs [Thu, 24 May 2012 21:26:32 +0000 (14:26 -0700)]
Upgrade uv to 604802a
Igor Zinkovsky [Thu, 24 May 2012 18:49:51 +0000 (11:49 -0700)]
remove NODE_USE_64BIT_UV_FS_API
Jeroen Janssen [Thu, 24 May 2012 16:36:20 +0000 (18:36 +0200)]
doc: update possible values for process.platform
Ben Noordhuis [Thu, 24 May 2012 12:07:09 +0000 (14:07 +0200)]
test: update addons .gitignore
Igor Zinkovsky [Tue, 22 May 2012 23:02:10 +0000 (16:02 -0700)]
windows: enable creating directory junctions with fs.symlink
Mathias Bynens [Mon, 21 May 2012 14:51:09 +0000 (16:51 +0200)]
doc: add punycode.js documentation
Jeroen Janssen [Mon, 21 May 2012 22:07:11 +0000 (00:07 +0200)]
doc: process get/setuid and get/setgid are POSIX only
Fixes #3302
Ben Noordhuis [Wed, 23 May 2012 02:01:19 +0000 (04:01 +0200)]
deps: upgrade libuv to 5b9c451
Igor Zinkovsky [Tue, 22 May 2012 23:49:19 +0000 (16:49 -0700)]
Igor Zinkovsky [Tue, 22 May 2012 20:55:47 +0000 (13:55 -0700)]
remove race from test-child-process-fork-exec-argv test
Ben Noordhuis [Fri, 18 May 2012 00:02:57 +0000 (02:02 +0200)]
test: fix bad comment
Ben Noordhuis [Mon, 21 May 2012 16:00:25 +0000 (18:00 +0200)]
test: fix simple/test-process-active-wraps
Said test relies a great deal on internals and implementation details (I should
know, I wrote it). Patch it up to work with libuv's new refcounting scheme.
Ben Noordhuis [Thu, 17 May 2012 05:13:29 +0000 (07:13 +0200)]
deps: upgrade libuv to a478847
The event loop's reference counting scheme in this version of libuv has changed.
Update the libuv bindings to reflect that fact.
Nathan Rajlich [Mon, 21 May 2012 22:46:57 +0000 (19:46 -0300)]
repl: preserve the cursor when redisplaying the prompt on SIGCONT
Otherwise the cursor position was being reset to 0, even when there was
already part of a line, which was strange.
Part of #3295.
Nathan Rajlich [Mon, 21 May 2012 22:43:26 +0000 (19:43 -0300)]
readline: explicitly disable and re-enable "raw mode" on Ctrl+Z
Fixes #3295.
Nathan Rajlich [Mon, 21 May 2012 22:41:56 +0000 (19:41 -0300)]
readline: move the "setRawMode" logic into a private function
Oleg Efimov [Mon, 21 May 2012 17:09:40 +0000 (21:09 +0400)]
Make UNWRAP macro generic.
Andreas Madsen [Sun, 20 May 2012 13:57:24 +0000 (15:57 +0200)]
cluster: remove NODE_UNIQUE_ID from env on startup
In case a worker would spawn a new subprocess with process.env, NODE_UNIQUE_ID
would have been a part of the env. Making the new subprocess believe it is a
worker, this would result in some confusion if the subprocess where to listen to
a port, since the server handle request would then be relayed to the worker.
This patch removes the NODE_UNIQUE_ID flag from process.env on startup so any
subprocess spawned by a worker is a normal process with no cluster stuff.
Oleg Efimov [Mon, 21 May 2012 15:27:15 +0000 (19:27 +0400)]
Check for tabs in source line in DisplayExceptionLine
Fix for joyent/node#3280
Ben Noordhuis [Sun, 20 May 2012 22:31:28 +0000 (00:31 +0200)]
test: add http 'data after timeout' test
See #3234. TDB if this is or is not the desired behavior.
isaacs [Sun, 20 May 2012 12:40:10 +0000 (09:40 -0300)]
test: wait for 'close' event for stdout
At the 'exit' event, it is sometimes not done writing to stdout.
isaacs [Sun, 20 May 2012 03:42:07 +0000 (00:42 -0300)]
test: root can connect to chmod'd pipes
isaacs [Sun, 20 May 2012 03:17:18 +0000 (00:17 -0300)]
test: Solaris is not as granular with rename fs watch events
Andreas Madsen [Sat, 19 May 2012 21:05:43 +0000 (23:05 +0200)]
fs.watch should not require a listener arguments
Since fs.watch returns an event emitter where the change event is exactly
the same as the listener callback, the argument should be required
Ben Noordhuis [Thu, 17 May 2012 04:18:25 +0000 (06:18 +0200)]
doc: improve fs.open() docs
Kevin Bowman [Wed, 16 May 2012 03:24:05 +0000 (04:24 +0100)]
doc: document fs 'rs+' open mode
isaacs [Wed, 16 May 2012 00:35:42 +0000 (17:35 -0700)]
Faster fs.readFile and fs.readFileSync
isaacs [Wed, 16 May 2012 00:02:39 +0000 (17:02 -0700)]
benchmark for fs.readfile
isaacs [Wed, 16 May 2012 23:32:37 +0000 (16:32 -0700)]
Revert "Fix #3242 Actually deprecate 'binary' buffer encoding"
This reverts commit
5979f096d1b702ca2ba95664a0bbc8210109775b.
Related:
- #3279
- #3278
isaacs [Wed, 16 May 2012 02:06:15 +0000 (19:06 -0700)]
Fix #3270 Escape url.parse delims
Rather than omitting them.
isaacs [Wed, 16 May 2012 21:49:51 +0000 (14:49 -0700)]
build: Set strict_aliasing on SunOS always
A build failure was introduced on
c9676c9147e088171e60b1977ac239ded4f327df
in SmartOS systems. This makes it build properly.
isaacs [Wed, 16 May 2012 21:44:15 +0000 (14:44 -0700)]
Revert "test: stack overflow output"
This reverts commit
f8519e10b823f576ddd0efa76ab425f0598b1223.
Recent update to V8 fixes the problem where it incorrectly reports the
line number as 0 for thrown RangeErrors.
isaacs [Wed, 16 May 2012 17:15:25 +0000 (10:15 -0700)]
v8: s/echo -n/echo/. Not all sh's are bash.
isaacs [Wed, 16 May 2012 15:50:24 +0000 (08:50 -0700)]
Patches floating on V8
isaacs [Wed, 16 May 2012 02:53:16 +0000 (19:53 -0700)]
Upgrade V8 to 3.11.1
Adam Malcontenti-Wilson [Wed, 16 May 2012 14:27:34 +0000 (16:27 +0200)]
http: make http.get() accept a URL
http.get() now accepts either a URL (as a string) or an options object.
Ben Noordhuis [Wed, 16 May 2012 14:08:18 +0000 (16:08 +0200)]
doc: clarify stream 'close' event
isaacs [Wed, 16 May 2012 00:37:23 +0000 (17:37 -0700)]
lint
Kevin Bowman [Tue, 15 May 2012 22:10:25 +0000 (00:10 +0200)]
fs: add sync open flags 'rs' and 'rs+'
isaacs [Tue, 15 May 2012 21:21:22 +0000 (14:21 -0700)]
Merge branch 'master' into v0.6-merge
Conflicts:
src/node.cc
isaacs [Tue, 15 May 2012 21:19:46 +0000 (14:19 -0700)]
Re-apply http fixes from v0.6 branch properly
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.
isaacs [Tue, 15 May 2012 20:03:56 +0000 (13:03 -0700)]
test: stack overflow output
isaacs [Tue, 15 May 2012 20:03:43 +0000 (13:03 -0700)]
lint
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.
isaacs [Tue, 15 May 2012 18:37:34 +0000 (11:37 -0700)]
Merge remote-tracking branch 'ry/v0.6' into v0.6-merge
Conflicts:
ChangeLog
deps/uv/include/uv-private/uv-unix.h
deps/uv/src/unix/core.c
deps/uv/src/unix/sunos.c
deps/v8/src/runtime.cc
doc/api/crypto.markdown
lib/http.js
src/node_version.h
test/gc/test-http-client-timeout.js
wscript
isaacs [Tue, 15 May 2012 00:21:20 +0000 (17:21 -0700)]
Guard against emitting 'end' twice on http responses
Conflicts:
lib/http.js
isaacs [Fri, 11 May 2012 00:55:28 +0000 (17:55 -0700)]
Break up huge function in ClientRequest.onSocket
Conflicts:
lib/http.js
isaacs [Tue, 15 May 2012 17:21:57 +0000 (10:21 -0700)]
Now working on 0.6.19
isaacs [Tue, 15 May 2012 17:21:40 +0000 (10:21 -0700)]
Merge branch 'v0.6.18-release' into v0.6