platform/upstream/nodejs.git
13 years agoReplace WAF with make/autoconf
Ryan Dahl [Mon, 4 Oct 2010 09:11:27 +0000 (02:11 -0700)]
Replace WAF with make/autoconf

13 years agoNow working on v0.3.1
Ryan Dahl [Sat, 23 Oct 2010 23:01:37 +0000 (16:01 -0700)]
Now working on v0.3.1

13 years agobump version to 0.3.0 v0.3.0
Ryan Dahl [Sat, 23 Oct 2010 22:46:58 +0000 (15:46 -0700)]
bump version to 0.3.0

13 years agoRevert "Add some failing tests for path.join"
Ryan Dahl [Sat, 23 Oct 2010 22:35:58 +0000 (15:35 -0700)]
Revert "Add some failing tests for path.join"

This reverts commit 8c0e87f9c333f3519b6d6439099f669a316ed598.

(Revert until fix comes)

13 years agoone more 'listening' race condition
Ryan Dahl [Sat, 23 Oct 2010 21:26:31 +0000 (14:26 -0700)]
one more 'listening' race condition

13 years agoFix a few 'listening' race conditions
Ryan Dahl [Sat, 23 Oct 2010 21:11:30 +0000 (14:11 -0700)]
Fix a few 'listening' race conditions

in
test-net-timeout
test-http-client-parse-error

13 years agoDo not spin on aceept() with EMFILE
Ryan Dahl [Sat, 23 Oct 2010 18:59:32 +0000 (11:59 -0700)]
Do not spin on aceept() with EMFILE

When a server hit EMFILE it would continue to try to accept new connections
from the queue. This patch introduces a timeout of one second where it will
stop trying to accept new files. After the second is over it tries again.

This is a rather serious bug that has been effecting many highly concurrent
programs. It was introduced in 4593c0, version v0.2.0.

TODO: A test for this situation. Currently I test it like this

  termA% cd projects/node
  termA% ulimit -n 256
  termA% ./node benchmark/idle_server.js

  termB% cd projects/node
  termB% ./node benchmark/idle_clients.js

And watch how the server process behaves.

13 years agoMake sure Error object on exec() gets killed member
Ryan Dahl [Sat, 23 Oct 2010 18:36:30 +0000 (11:36 -0700)]
Make sure Error object on exec() gets killed member

Also default to SIGTERM for destruction when exceeding timeout or buffer on
exec()

13 years agoFix test-net-eaddrinuse
Ryan Dahl [Sat, 23 Oct 2010 18:22:24 +0000 (11:22 -0700)]
Fix test-net-eaddrinuse

13 years agoProvide a C++ Buffer constructor for external storage.
Stéphan Kochen [Fri, 22 Oct 2010 10:08:55 +0000 (12:08 +0200)]
Provide a C++ Buffer constructor for external storage.

In order to do this, buffer data management was moved out of the
JS entry-point New, and into Replace.

Secondly, the constructor makes an immediate call to Replace, and
in order for ArrayData calls to work, wrapping must already be set
up. Now, the constructor takes the wrappee as a parameter.

13 years agoGeneralize Buffer::Copy to work with all unsigned byte external data.
Stéphan Kochen [Thu, 21 Oct 2010 09:53:02 +0000 (11:53 +0200)]
Generalize Buffer::Copy to work with all unsigned byte external data.

13 years agoSimplify things by using `*ArrayData` everywhere.
Stéphan Kochen [Thu, 21 Oct 2010 09:47:27 +0000 (11:47 +0200)]
Simplify things by using `*ArrayData` everywhere.

13 years agoRemove old interface remains from Buffer.
Stéphan Kochen [Thu, 21 Oct 2010 09:37:08 +0000 (11:37 +0200)]
Remove old interface remains from Buffer.

These were all lacking implementation, so deprecating wouldn't help.

13 years agoDon't call AtExit twice
Ryan Dahl [Fri, 22 Oct 2010 17:17:38 +0000 (10:17 -0700)]
Don't call AtExit twice

13 years agoFix parsing of linux memory
Vitali Lovich [Fri, 16 Jul 2010 08:07:43 +0000 (01:07 -0700)]
Fix parsing of linux memory

If process name contains a space, this parsing fails for no good reason.

13 years agoWrite write.txt into the tmpdir
Ryan Dahl [Fri, 22 Oct 2010 17:02:30 +0000 (10:02 -0700)]
Write write.txt into the tmpdir

13 years agoRemove a confusing sentence in the docs
Ryan Dahl [Fri, 22 Oct 2010 00:31:38 +0000 (17:31 -0700)]
Remove a confusing sentence in the docs

13 years agoRemove unneeded function wrappers
Jorge Chamorro Bieling [Thu, 21 Oct 2010 12:36:00 +0000 (14:36 +0200)]
Remove unneeded function wrappers

13 years agoUpgrade libev to 4.00
Ryan Dahl [Thu, 21 Oct 2010 22:38:32 +0000 (15:38 -0700)]
Upgrade libev to 4.00

13 years agoUpgrade V8 to 2.5.1
Ryan Dahl [Thu, 21 Oct 2010 22:22:38 +0000 (15:22 -0700)]
Upgrade V8 to 2.5.1

13 years agoAdd isatty for isaacs
Ryan Dahl [Thu, 21 Oct 2010 19:34:37 +0000 (12:34 -0700)]
Add isatty for isaacs

13 years agoForce exit on SIGINT but still reset flags on stdio fds
Ryan Dahl [Thu, 21 Oct 2010 19:27:58 +0000 (12:27 -0700)]
Force exit on SIGINT but still reset flags on stdio fds

Add test that one can ctrl+c out of a script spinning infinitely.

13 years agoAdd incomplete R plot file
Ryan Dahl [Thu, 21 Oct 2010 04:01:43 +0000 (21:01 -0700)]
Add incomplete R plot file

13 years agoFix execFile timeouts, improve tests
Ryan Dahl [Thu, 21 Oct 2010 02:20:44 +0000 (19:20 -0700)]
Fix execFile timeouts, improve tests

It seems that a parent will not get a SIGCHLD if the child is killed by the
parent? It's unclear, so make 'exit' callback manually.

13 years agoChildProcesses cannot be killed if pid is missing
Ryan Dahl [Thu, 21 Oct 2010 00:55:25 +0000 (17:55 -0700)]
ChildProcesses cannot be killed if pid is missing

13 years agoAdd --max-stack-size flag.
Tom Hughes [Mon, 18 Oct 2010 22:50:56 +0000 (17:50 -0500)]
Add --max-stack-size flag.

v8 doesn't expose a command-line flag to set the stack size, so this
adds a new flag that node understands how to handle and uses v8's
ResourceConstraints API.

13 years agoAdd ~/.node_modules as well as ~/.node_libraries
isaacs [Tue, 19 Oct 2010 20:28:13 +0000 (13:28 -0700)]
Add ~/.node_modules as well as ~/.node_libraries

13 years agorequire looks in node_modules folders
isaacs [Thu, 14 Oct 2010 00:15:56 +0000 (17:15 -0700)]
require looks in  node_modules folders

for modules starting with the __dirname and moving up.

This makes it much easier to localize dependencies to a particular program.

13 years agoThe cwdRequire hack is no longer necessary with the require.resolve refactor.
isaacs [Tue, 19 Oct 2010 19:01:22 +0000 (12:01 -0700)]
The cwdRequire hack is no longer necessary with the require.resolve refactor.

13 years agoSplit out modulePaths and defaultPaths
isaacs [Tue, 19 Oct 2010 18:36:10 +0000 (11:36 -0700)]
Split out modulePaths and defaultPaths

This way, the "default" paths of ~/.node_libraries and {prefix}/lib/node are only checked *after* anything that the user has placed into the NODE_PATHS environ, or pushed onto require.paths.

This makes require.paths a much more effective write-target, albeit slightly less useful as a read-target.  However, given the existence of require.resolve(), this is less of an issue -- if you want to know what a module ID will map to, just ask that question and get an authoritative answer from the loading machinery.

13 years agoDocs for require.resolve
isaacs [Wed, 20 Oct 2010 20:56:22 +0000 (13:56 -0700)]
Docs for require.resolve

13 years agoAdd some failing tests for path.join
Ryan Dahl [Wed, 20 Oct 2010 20:03:39 +0000 (13:03 -0700)]
Add some failing tests for path.join

13 years agoPrevents child_process.exec timeouts from throwing when the child was previously...
Aaron Heckmann [Tue, 19 Oct 2010 12:42:00 +0000 (08:42 -0400)]
Prevents child_process.exec timeouts from throwing when the child was previously killed.

13 years agoAdd require.resolve.
isaacs [Tue, 19 Oct 2010 01:17:33 +0000 (18:17 -0700)]
Add require.resolve.

Also, hack the repl so that it works as expected there, too.

13 years agoRemove old references to old 'stream' event
Ryan Dahl [Wed, 20 Oct 2010 18:10:40 +0000 (11:10 -0700)]
Remove old references to old 'stream' event

13 years agoAdded documentation of EventEmitter.once
Nikhil Marathe [Tue, 19 Oct 2010 03:36:26 +0000 (09:06 +0530)]
Added documentation of EventEmitter.once

13 years agouse bash instead of sh in http_simple_bench.sh
Ryan Dahl [Tue, 19 Oct 2010 00:48:49 +0000 (17:48 -0700)]
use bash instead of sh in http_simple_bench.sh

13 years agoUpgrade V8 to 2.5.0
Ryan Dahl [Tue, 19 Oct 2010 00:13:30 +0000 (17:13 -0700)]
Upgrade V8 to 2.5.0

13 years agonet listen should emit eaddrinuse error
Johan Euphrosine [Wed, 6 Oct 2010 17:18:08 +0000 (19:18 +0200)]
net listen should emit eaddrinuse error

13 years agoFix expect/continue keepalive
Mark Nottingham [Mon, 18 Oct 2010 05:14:29 +0000 (16:14 +1100)]
Fix expect/continue keepalive

13 years agounbase64 skips over *any* illegal chars
Jorge Chamorro Bieling [Mon, 18 Oct 2010 20:08:42 +0000 (22:08 +0200)]
unbase64 skips over *any* illegal chars

13 years agoFix race conditions in test-http-upgrade-client2
Ryan Dahl [Mon, 18 Oct 2010 22:05:18 +0000 (15:05 -0700)]
Fix race conditions in test-http-upgrade-client2

13 years agofix test-base64-bigfile for linux
Ryan Dahl [Mon, 18 Oct 2010 22:00:49 +0000 (15:00 -0700)]
fix test-base64-bigfile for linux

13 years agoFix test harness for Linux
Ryan Dahl [Mon, 18 Oct 2010 21:46:25 +0000 (14:46 -0700)]
Fix test harness for Linux

Mostly just upgraded tools/test.py to the latest one that's in V8.  But also
fixing the before and after hooks to preserve the test/tmp directory so that
running tests manually usually works.

13 years agonew api for defining repl commands
Sami Samhuri [Wed, 13 Oct 2010 14:51:53 +0000 (07:51 -0700)]
new api for defining repl commands

13 years ago./wscript: allow for cross-compiling of all three supported architectures
AJ ONeal [Wed, 13 Oct 2010 22:27:51 +0000 (16:27 -0600)]
./wscript: allow for cross-compiling of all three supported architectures

13 years agoA big base64 file encoding/decoding test
isaacs [Thu, 7 Oct 2010 23:25:30 +0000 (16:25 -0700)]
A big base64 file encoding/decoding test

Originally written to try to track down this bug report:
http://permalink.gmane.org/gmane.comp.lang.javascript.nodejs/13924

As it turns out, it's showing a completely different kind of failure.  When
the file is base64 encoded with the native program, then decoded with node,
it doesn't match the original.  Something's fishy.

13 years agobase64 decode should handle whitespace
Ryan Dahl [Mon, 18 Oct 2010 18:15:20 +0000 (11:15 -0700)]
base64 decode should handle whitespace

13 years agoInstall ev.h and eio.h
Ryan Dahl [Mon, 18 Oct 2010 05:57:40 +0000 (22:57 -0700)]
Install ev.h and eio.h

13 years agoAdd EventEmitter.prototype.once
Peteris Krumins [Tue, 12 Oct 2010 20:52:26 +0000 (23:52 +0300)]
Add EventEmitter.prototype.once

13 years agoAdd idle connection test
Ryan Dahl [Fri, 15 Oct 2010 17:05:22 +0000 (12:05 -0500)]
Add idle connection test

13 years agoAdd 'make bench' script
Ryan Dahl [Wed, 13 Oct 2010 23:20:24 +0000 (16:20 -0700)]
Add 'make bench' script

13 years agoImprove benchmark/http_simple.js
Ryan Dahl [Wed, 13 Oct 2010 21:16:49 +0000 (14:16 -0700)]
Improve benchmark/http_simple.js

13 years agoUpgrade http-parser with a fix for spaces in headers
Nathan Rajlich [Wed, 13 Oct 2010 09:45:37 +0000 (02:45 -0700)]
Upgrade http-parser with a fix for spaces in headers

13 years agoDon't flush net writeQueue on end() if its still connecting
Joshua Peek [Tue, 12 Oct 2010 04:19:44 +0000 (23:19 -0500)]
Don't flush net writeQueue on end() if its still connecting

13 years agoPreliminary pkg-config support.
Ben Noordhuis [Tue, 12 Oct 2010 21:13:44 +0000 (23:13 +0200)]
Preliminary pkg-config support.

13 years agoAllow people to set backlog. Need a better API.
Ryan Dahl [Wed, 13 Oct 2010 08:47:29 +0000 (01:47 -0700)]
Allow people to set backlog. Need a better API.

13 years agoAdd signal handlers so we clean up before exiting.
Tom Hughes [Tue, 12 Oct 2010 21:01:58 +0000 (14:01 -0700)]
Add signal handlers so we clean up before exiting.

Add SIGTERM and SIGINT signal handlers so that we run the exit handlers
before exiting when getting these signals. Fixes an issue where we
couldn't run vi after CTRL+C'ing node because the stdin fd was left
non-blocking.

13 years agoAdd .js to native script's filename
Ryan Dahl [Tue, 12 Oct 2010 18:54:45 +0000 (11:54 -0700)]
Add .js to native script's filename

13 years agoDynamically load native scripts
Ryan Dahl [Tue, 12 Oct 2010 18:49:41 +0000 (11:49 -0700)]
Dynamically load native scripts

13 years agoDon't require events in fs.js
Ryan Dahl [Mon, 11 Oct 2010 23:40:28 +0000 (16:40 -0700)]
Don't require events in fs.js

13 years agofs.ReadStream and fs.WriteStream derive from stream.Stream
Ryan Dahl [Mon, 11 Oct 2010 23:39:40 +0000 (16:39 -0700)]
fs.ReadStream and fs.WriteStream derive from stream.Stream

13 years agoAdd destroy methods to HTTP messages
Ryan Dahl [Mon, 11 Oct 2010 23:36:12 +0000 (16:36 -0700)]
Add destroy methods to HTTP messages

needs tests (particularly for pipeline situations)

13 years agoMigrated from sys.p to console.dir
Micheil Smith [Mon, 11 Oct 2010 23:09:02 +0000 (10:09 +1100)]
Migrated from sys.p to console.dir

13 years agoRemoved deprecated methods from lib/path.js
Micheil Smith [Mon, 11 Oct 2010 23:06:44 +0000 (10:06 +1100)]
Removed deprecated methods from lib/path.js

13 years agoRemoved deprecated methods from lib/net.js
Micheil Smith [Mon, 11 Oct 2010 23:04:18 +0000 (10:04 +1100)]
Removed deprecated methods from lib/net.js

13 years agoRemoved deprecated methods from lib/http.js
Micheil Smith [Mon, 11 Oct 2010 23:03:28 +0000 (10:03 +1100)]
Removed deprecated methods from lib/http.js

13 years agoRemoved deprecated methods from lib/fs.js
Micheil Smith [Mon, 11 Oct 2010 23:03:02 +0000 (10:03 +1100)]
Removed deprecated methods from lib/fs.js

13 years agoRemoved deprecated alias to lib/fs.js
Micheil Smith [Mon, 11 Oct 2010 23:02:05 +0000 (10:02 +1100)]
Removed deprecated alias to lib/fs.js

13 years agoRemoved deprecated events.Promise
Micheil Smith [Mon, 11 Oct 2010 23:01:12 +0000 (10:01 +1100)]
Removed deprecated events.Promise

13 years agoEnable pipe test
Ryan Dahl [Mon, 11 Oct 2010 23:08:19 +0000 (16:08 -0700)]
Enable pipe test

13 years agoRemove sys in new tests
Ryan Dahl [Mon, 11 Oct 2010 23:07:18 +0000 (16:07 -0700)]
Remove sys in new tests

13 years agoFix test-http-buffer-sanity
Ryan Dahl [Mon, 11 Oct 2010 23:00:36 +0000 (16:00 -0700)]
Fix test-http-buffer-sanity

13 years agoSoft migration of sys -> util, Removal of deprecated utils module.
Micheil Smith [Mon, 11 Oct 2010 21:04:09 +0000 (08:04 +1100)]
Soft migration of sys -> util, Removal of deprecated utils module.

13 years agoAdd broken test passing a buffer through http
Ryan Dahl [Mon, 11 Oct 2010 21:54:32 +0000 (14:54 -0700)]
Add broken test passing a buffer through http

13 years agoenviron symbol fix for Mac OS X
Rasmus Andersson [Mon, 11 Oct 2010 15:19:11 +0000 (17:19 +0200)]
environ symbol fix for Mac OS X

13 years agoCloser to a working pipe
Ryan Dahl [Mon, 11 Oct 2010 08:22:38 +0000 (01:22 -0700)]
Closer to a working pipe

13 years agoNo long have tcp module
Ryan Dahl [Mon, 11 Oct 2010 08:22:24 +0000 (01:22 -0700)]
No long have tcp module

13 years agoStress test for http upload timeouts
Felix Geisendörfer [Mon, 11 Oct 2010 07:19:40 +0000 (09:19 +0200)]
Stress test for http upload timeouts

This was meant to find a bug in setTimeout, but there doesn't seem to be
one. So this test can no help to prevent future regressions.

13 years agoTCP clients should buffer writes before connection
Ryan Dahl [Mon, 11 Oct 2010 06:09:14 +0000 (23:09 -0700)]
TCP clients should buffer writes before connection

13 years agopipe-test fixes
Ryan Dahl [Mon, 11 Oct 2010 05:05:49 +0000 (22:05 -0700)]
pipe-test fixes

13 years agoRemove old tcp module
Ryan Dahl [Mon, 11 Oct 2010 03:57:33 +0000 (20:57 -0700)]
Remove old tcp module

13 years agoImprove pipe-test. Still not working
Ryan Dahl [Mon, 11 Oct 2010 03:18:47 +0000 (20:18 -0700)]
Improve pipe-test. Still not working

13 years agoclean up options.end code - wasn't working
Ryan Dahl [Mon, 11 Oct 2010 03:16:21 +0000 (20:16 -0700)]
clean up options.end code - wasn't working

13 years agoChanging http.js to use the same stream.Stream creation as net.js
Micheil Smith [Mon, 11 Oct 2010 02:38:57 +0000 (13:38 +1100)]
Changing http.js to use the same stream.Stream creation as net.js

13 years agoFix return in Buffer::New
Ryan Dahl [Mon, 11 Oct 2010 02:24:33 +0000 (19:24 -0700)]
Fix return in Buffer::New

13 years agoAdd char* constructor for Buffer
Ryan Dahl [Mon, 11 Oct 2010 02:08:51 +0000 (19:08 -0700)]
Add char* constructor for Buffer

13 years agoAdd Stream base class with stream.pipe
Ryan Dahl [Mon, 11 Oct 2010 00:21:36 +0000 (17:21 -0700)]
Add Stream base class with stream.pipe

13 years agoFix a few compiler warnings...
Ryan Dahl [Sat, 9 Oct 2010 23:04:38 +0000 (16:04 -0700)]
Fix a few compiler warnings...

13 years agoMore clang fixes
Ryan Dahl [Sat, 9 Oct 2010 22:10:45 +0000 (15:10 -0700)]
More clang fixes

13 years agoUgly fix for clang
Ryan Dahl [Sat, 9 Oct 2010 21:21:26 +0000 (14:21 -0700)]
Ugly fix for clang

13 years agoFix style
Ryan Dahl [Sat, 9 Oct 2010 19:48:22 +0000 (12:48 -0700)]
Fix style

13 years agoAdd flag to disable colors in REPL
Ryan Dahl [Sat, 9 Oct 2010 19:46:06 +0000 (12:46 -0700)]
Add flag to disable colors in REPL

13 years agoUse readline.columns in sys.inspect when possible
Ryan Dahl [Sat, 9 Oct 2010 19:40:15 +0000 (12:40 -0700)]
Use readline.columns in sys.inspect when possible

Though, this should probably be an option to sys.inspect and be set by REPL.

13 years agoCommas last in sys.inspect
Ryan Dahl [Sat, 9 Oct 2010 01:26:53 +0000 (18:26 -0700)]
Commas last in sys.inspect

Ugly? Yes. More readable by first time users? Yes.

13 years agoWarnings for new C++ buffer API
Ryan Dahl [Sat, 9 Oct 2010 19:15:14 +0000 (12:15 -0700)]
Warnings for new C++ buffer API

13 years agoadd $ to variable name character matching patterns in repl completer
Sean Coates [Sat, 9 Oct 2010 16:25:02 +0000 (12:25 -0400)]
add $ to variable name character matching patterns in repl completer

13 years agoAdd missing v8 file...
Ryan Dahl [Sat, 9 Oct 2010 07:56:37 +0000 (00:56 -0700)]
Add missing v8 file...

13 years agoAdd config.h for cygwin for libev and libeio
Ryan Dahl [Sat, 9 Oct 2010 07:55:51 +0000 (00:55 -0700)]
Add config.h for cygwin for libev and libeio

13 years agoexpose parsers freelist
Ryan Dahl [Thu, 7 Oct 2010 23:17:06 +0000 (16:17 -0700)]
expose parsers freelist