platform/upstream/nodejs.git
13 years agoMassage util.inherits for perf increase
Ryan Dahl [Sat, 11 Jun 2011 06:51:48 +0000 (08:51 +0200)]
Massage util.inherits for perf increase

13 years agodebugger: don't allow users to input non-valid commands
Siddharth Mahendraker [Thu, 2 Jun 2011 20:08:18 +0000 (23:08 +0300)]
debugger: don't allow users to input non-valid commands

Fixes #1144.

13 years agoDisabling SSL compression is dependent on OpenSSL version 0.9.8
Ryan Dahl [Fri, 3 Jun 2011 12:38:55 +0000 (14:38 +0200)]
Disabling SSL compression is dependent on OpenSSL version 0.9.8

Fixes #1087.

13 years agoUpgrade http-parser to eee60127c0df551be085cc8e7983e36d7700d885
Ryan Dahl [Fri, 3 Jun 2011 12:12:14 +0000 (14:12 +0200)]
Upgrade http-parser to eee60127c0df551be085cc8e7983e36d7700d885

13 years agoDoc improvements
Ryan Dahl [Fri, 3 Jun 2011 11:19:06 +0000 (13:19 +0200)]
Doc improvements

Fixes #1147.
Fixes #1139.
Fixes #1126.
Thanks ctide, kext, disfated.

13 years agoOption to disable SSL v2
Jérémy Lal [Fri, 3 Jun 2011 06:35:11 +0000 (08:35 +0200)]
Option to disable SSL v2

Fixes #880

13 years agodocument require.cache
Ryan Dahl [Fri, 3 Jun 2011 06:14:35 +0000 (08:14 +0200)]
document require.cache

13 years agoClose #562 Close #1078 Parse file:// urls properly
Ryan Petrello [Fri, 20 May 2011 04:50:35 +0000 (00:50 -0400)]
Close #562 Close #1078 Parse file:// urls properly

The file:// protocol *always* has a hostname; it's frequently
abbreviated as an empty string, which represents 'localhost'
implicitly.

According to RFC 1738 (http://tools.ietf.org/html/rfc1738):

A file URL takes the form:

   file://<host>/<path>

where <host> is the fully qualified domain name of the system on
which the <path> is accessible...

As a special case, <host> can be the string "localhost" or the empty
string; this is interpreted as 'the machine from which the URL is
being interpreted'.

13 years agoFix resource leaks in node_crypto.cc
Ben Noordhuis [Mon, 23 May 2011 11:10:00 +0000 (13:10 +0200)]
Fix resource leaks in node_crypto.cc

Fixes #1097.

13 years agoCrypto documentation fixes
Brian White [Wed, 25 May 2011 04:26:57 +0000 (21:26 -0700)]
Crypto documentation fixes

Fixes #1104.

13 years agoFix error handling bug in stream.pipe()
Felix Geisendörfer [Mon, 23 May 2011 09:02:53 +0000 (11:02 +0200)]
Fix error handling bug in stream.pipe()

Problem: Since stream.pipe() is registering it's own error handlers on
the source and destination stream, it needs to replicate the
EventEmitter 'error' emitting semantics of throwing an error if there
are no other listeners. However, there was a off-by-one error because
the check for remaining listeners was done after cleanup() which means
the pipe's own listener was no longer included.

This would cause 'error' events on either the dest or the source to
throw if there was one other error listener, and while swallowing
the 'error' event if there was no other listener.

Solution: I added a test demonstrating the two issues and fixed the
problem by correcting the off-by-one error.

Fixes #1095.

13 years agoFix incorrect documentation for assert.fail()
Brian White [Tue, 24 May 2011 05:40:09 +0000 (22:40 -0700)]
Fix incorrect documentation for assert.fail()

Fixes #1100.

13 years agoNow working on v0.4.9
Ryan Dahl [Sat, 21 May 2011 07:10:23 +0000 (00:10 -0700)]
Now working on v0.4.9

13 years agoBump to v0.4.8 v0.4.8
Ryan Dahl [Sat, 21 May 2011 02:40:06 +0000 (19:40 -0700)]
Bump to v0.4.8

13 years agoMerge branch 'v8-3.1' into v0.4
Ryan Dahl [Sat, 21 May 2011 02:25:30 +0000 (19:25 -0700)]
Merge branch 'v8-3.1' into v0.4

13 years agoUpgrade V8 to 3.1.8.16
Ryan Dahl [Sat, 21 May 2011 02:24:37 +0000 (19:24 -0700)]
Upgrade V8 to 3.1.8.16

13 years agoFix TJ's assert error
Ryan Dahl [Fri, 20 May 2011 22:39:48 +0000 (15:39 -0700)]
Fix TJ's assert error

Unable to reproduce but connect's "make test TESTS=test/static.test.js" does
it occasionally.

13 years agoAdditional docs for net.listenFD()
Mark Cavage [Fri, 20 May 2011 21:38:49 +0000 (14:38 -0700)]
Additional docs for net.listenFD()

Fixes #1080.

13 years agoCryptoStream.prototype.readyState shoudn't reference fd
Ryan Dahl [Fri, 20 May 2011 17:08:08 +0000 (10:08 -0700)]
CryptoStream.prototype.readyState shoudn't reference fd

Fixes #1069

13 years agoRemove unused variable
Brian White [Thu, 19 May 2011 22:09:10 +0000 (15:09 -0700)]
Remove unused variable

Fixes #1077

13 years agoAdd test for agent upgrade and example in docs
David Trejo [Thu, 19 May 2011 23:50:12 +0000 (16:50 -0700)]
Add test for agent upgrade and example in docs

13 years ago(char *) casting for all strings args to kstat function to avoid warnings
Alexandre Marangone [Thu, 19 May 2011 19:20:08 +0000 (21:20 +0200)]
(char *) casting for all strings args to kstat function to avoid warnings

Fixes #1071.

13 years agoAdding os.totalmem() and os.freemem() for SunOS
Alexandre Marangone [Thu, 19 May 2011 19:15:12 +0000 (21:15 +0200)]
Adding os.totalmem() and os.freemem() for SunOS

13 years agoShare SSL context between server connections
Fedor Indutny [Thu, 19 May 2011 19:42:13 +0000 (02:42 +0700)]
Share SSL context between server connections

Fixes #1073.

13 years agoFix buffer test
Ryan Dahl [Thu, 19 May 2011 19:41:17 +0000 (12:41 -0700)]
Fix buffer test

13 years agomakeFastBuffer should not segfault but rather throw on non-buffer
Ryan Dahl [Thu, 19 May 2011 19:13:48 +0000 (12:13 -0700)]
makeFastBuffer should not segfault but rather throw on non-buffer

13 years agoreadline docs
David Trejo [Thu, 19 May 2011 01:39:06 +0000 (18:39 -0700)]
readline docs

13 years agoChanges for job bullets
Ryan Dahl [Tue, 17 May 2011 20:22:34 +0000 (13:22 -0700)]
Changes for job bullets

13 years agoRemove 'binary' encoding assert - add tests
Ryan Dahl [Mon, 16 May 2011 22:00:33 +0000 (15:00 -0700)]
Remove 'binary' encoding assert - add tests

Don't write large characters to buffers with binary encoding. You will be
silently injured.

13 years agoClose #1054 More clear documentation for module system
isaacs [Mon, 16 May 2011 11:56:40 +0000 (04:56 -0700)]
Close #1054 More clear documentation for module system

13 years agoDisable compression with OpenSSL.
Ryan Dahl [Fri, 1 Apr 2011 02:27:28 +0000 (19:27 -0700)]
Disable compression with OpenSSL.

This improves memory and speed. Users may apply compression in "userland"
above the CryptoStream layer if they desire.

13 years agoFix dns.resolve() with 'PTR' throws Error: Unknown type "PTR"
koichik [Thu, 12 May 2011 04:43:24 +0000 (13:43 +0900)]
Fix dns.resolve() with 'PTR' throws Error: Unknown type "PTR"

Fixes #1038

13 years agoFix event listener leak check timing
koichik [Thu, 12 May 2011 06:18:21 +0000 (15:18 +0900)]
Fix event listener leak check timing

Fixes #1041.

13 years agoFix doc - missing dns.resolveNs() and dns.resolveCname()
koichik [Thu, 12 May 2011 04:49:26 +0000 (13:49 +0900)]
Fix doc - missing dns.resolveNs() and dns.resolveCname()

Fixes #1039.

13 years agoUpdate http.ServerRequest docs
Felix Geisendörfer [Sat, 14 May 2011 14:06:32 +0000 (16:06 +0200)]
Update http.ServerRequest docs

The documentation for 'end' was wrong, and 'close' now has an `err`
parameter.

13 years agoError argument for http.ServerRequest 'close'
Felix Geisendörfer [Sat, 14 May 2011 13:58:41 +0000 (15:58 +0200)]
Error argument for http.ServerRequest 'close'

Problem: It was not possible to detect the reason for a premature
connection termination in http requests.

This patch provides a new `err` argument to the 'close' event which
can be inspected to differentiate between a timeout and a client
actively terminating the connection.

Also contains tests for this new behavior for http and https.

13 years agoMake https 'timeout' events bubble up
Felix Geisendörfer [Sat, 14 May 2011 19:17:13 +0000 (21:17 +0200)]
Make https 'timeout' events bubble up

Also adds a test case for it.

13 years agoAdd trademark stuff to homepage
Ryan Dahl [Wed, 11 May 2011 20:40:42 +0000 (13:40 -0700)]
Add trademark stuff to homepage

13 years agoFix a url regression
isaacs [Tue, 10 May 2011 20:42:49 +0000 (13:42 -0700)]
Fix a url regression

The change for #954 introduced a regression that would cause
the url parser to fail on special chars found in the auth
segment.  Fix that, and also don't create invalid urls when
format() is called on an object containing an auth member
containing '@' characters or delimiters.

13 years agoDocs: server.pause() server.address() socket.address()
Ryan Dahl [Mon, 9 May 2011 17:49:20 +0000 (10:49 -0700)]
Docs: server.pause() server.address() socket.address()

13 years agoDocumenting `require.main`, fixing #997
Trevor Burnham [Sun, 1 May 2011 18:03:08 +0000 (14:03 -0400)]
Documenting `require.main`, fixing #997

13 years agoAgent socket errors bubble up to req only if req exists
Ryan Dahl [Sat, 7 May 2011 19:30:53 +0000 (12:30 -0700)]
Agent socket errors bubble up to req only if req exists

Fixes #836.

13 years agoAttempt to connect to debug process more than once
Marcel Laverdet [Tue, 3 May 2011 21:51:15 +0000 (06:51 +0900)]
Attempt to connect to debug process more than once

The debugger would give up after only 100ms but on my system this
timeout isn't enough. The startup process is now modified to try 6
times every 50ms instead.

Fixes #1010.

13 years agoPoint changelog to correct branch
Ryan Dahl [Fri, 6 May 2011 23:05:02 +0000 (16:05 -0700)]
Point changelog to correct branch

Fixes #1002. Thanks cjavapro.

13 years agoTLS: simplify logic
Ryan Dahl [Fri, 6 May 2011 23:48:44 +0000 (16:48 -0700)]
TLS: simplify logic

13 years agoFix crash in debugger
Ryan Dahl [Thu, 5 May 2011 23:52:05 +0000 (16:52 -0700)]
Fix crash in debugger

13 years agoAdd on('error') to http request example
Ryan Dahl [Thu, 5 May 2011 22:40:45 +0000 (15:40 -0700)]
Add on('error') to http request example

for indexzero

13 years agoAssert, Debug output in normal default build
Ryan Dahl [Thu, 5 May 2011 04:41:01 +0000 (21:41 -0700)]
Assert, Debug output in normal default build

13 years agocleartextstream.destroy() should destroy socket.
Ryan Dahl [Mon, 2 May 2011 19:13:06 +0000 (12:13 -0700)]
cleartextstream.destroy() should destroy socket.

This fixes a critical bug see in MJR's production. Very difficult to build a
test case. Sometimes HTTPS server gets sockets that are hanging in a
half-duplex state.

13 years agoRemove oprofile flags in wscript.
Ben Noordhuis [Sun, 1 May 2011 14:34:05 +0000 (16:34 +0200)]
Remove oprofile flags in wscript.

V8 3.1.5 (commit 550f73a) dropped oprofile support so don't pass
prof=oprofile to scons.

See http://codereview.chromium.org/6474037/

Fixes #998.

13 years agoMerge branch 'v8-3.1' into v0.4
Ryan Dahl [Sat, 30 Apr 2011 18:38:55 +0000 (11:38 -0700)]
Merge branch 'v8-3.1' into v0.4

13 years agoUpgrade V8 to 3.1.8.14
Ryan Dahl [Sat, 30 Apr 2011 18:38:25 +0000 (11:38 -0700)]
Upgrade V8 to 3.1.8.14

13 years agoFix SlowBuffer.write() with 'ucs2' throws ReferenceError.
koichik [Thu, 28 Apr 2011 06:38:28 +0000 (15:38 +0900)]
Fix SlowBuffer.write() with 'ucs2' throws ReferenceError.

13 years agoDoc improvements.
koichik [Thu, 28 Apr 2011 07:36:04 +0000 (16:36 +0900)]
Doc improvements.

13 years agoBetter stream.pipe() tracking.
isaacs [Wed, 27 Apr 2011 18:10:10 +0000 (11:10 -0700)]
Better stream.pipe() tracking.

This commit does three things:

1. Uses an exposed counter rather than a hidden array for tracking dest
streams that may have multiple inputs.  This allows for significantly
faster lookups, since the counter can be checked in constant time rather
than searching an array for the dest object.  (A proper O(1) WeakMap
would be better, but that may have to wait for Harmony.)

2. Calls the 'end' event logic when there is an 'error' event on the
source object (and then throws if there are no other error listeners.)
This is important, because otherwise 'error' events would lead to
memory leaks.

3. Clean up the style a bit.  Function Declarations are not allowed
within blocks in ES strict.  Prefer Function Declarations to Function
Expressions, because hoisting allows for more expressive ordering of
logic.

Downside: It adds "_pipeCount" as part of the Stream API.  It'll work
fine if the member is missing, but if anyone tries to use it for some
other purpose, it can mess things up.

13 years agoClose #983 Better JSON.parse error detection
isaacs [Tue, 26 Apr 2011 16:48:28 +0000 (09:48 -0700)]
Close #983 Better JSON.parse error detection

Previous pattern would only catch ILLEGAL, not { or other
known-but-unexpected JSON tokens.

13 years agoClose #962: Fixed typo in vm.runInNewContext docs.
George Miroshnykov [Thu, 21 Apr 2011 11:43:12 +0000 (14:43 +0300)]
Close #962: Fixed typo in vm.runInNewContext docs.

EDIT: Also added another typo fix to this commit. --isaacs

13 years agoClose #974 Properly report traceless errors.
isaacs [Mon, 25 Apr 2011 19:22:18 +0000 (12:22 -0700)]
Close #974 Properly report traceless errors.

Also, tests for the same.

13 years agoA test that running 100 stream pipes in parallel is ok
isaacs [Sat, 23 Apr 2011 02:31:14 +0000 (19:31 -0700)]
A test that running 100 stream pipes in parallel is ok

13 years agoCorrect attribution
Ryan Dahl [Sat, 23 Apr 2011 02:04:43 +0000 (19:04 -0700)]
Correct attribution

13 years agoBump bounds on #897 test - was too small for slow machines
Ryan Dahl [Sat, 23 Apr 2011 00:50:40 +0000 (17:50 -0700)]
Bump bounds on #897 test - was too small for slow machines

13 years agoNow working on v0.4.8
Ryan Dahl [Sat, 23 Apr 2011 00:49:56 +0000 (17:49 -0700)]
Now working on v0.4.8

13 years agobump version to v0.4.7 v0.4.7
Ryan Dahl [Sat, 23 Apr 2011 00:06:02 +0000 (17:06 -0700)]
bump version to v0.4.7

13 years agoFix timeouts with floating point numbers bug
Ryan Dahl [Fri, 22 Apr 2011 23:38:27 +0000 (16:38 -0700)]
Fix timeouts with floating point numbers bug

fixes #897.

13 years agoUse better ports on the home page
Ryan Dahl [Fri, 22 Apr 2011 23:01:34 +0000 (16:01 -0700)]
Use better ports on the home page

13 years agoAdd loadavg for SunOS
Robert Mustacchi [Fri, 22 Apr 2011 02:39:16 +0000 (19:39 -0700)]
Add loadavg for SunOS

13 years agoDon't overwrite an user-specified repl.writer
Tim Baumann [Wed, 30 Mar 2011 19:05:56 +0000 (21:05 +0200)]
Don't overwrite an user-specified repl.writer

13 years agomake it possible to do repl.start('', stream)
Wade Simmons [Wed, 13 Apr 2011 23:54:50 +0000 (17:54 -0600)]
make it possible to do repl.start('', stream)

13 years agoClose #954 URL parsing/formatting corrections
isaacs [Wed, 20 Apr 2011 22:44:34 +0000 (15:44 -0700)]
Close #954 URL parsing/formatting corrections

1. Allow single-quotes in urls, but escape them.
2. Add comments about which RFCs we're following for guidance.
3. Handle any invalid character in the hostname portion.
4. lcase protocol and hostname portions, since they are
case-insensitive.

13 years agoadd docs for console object
Ryan Dahl [Mon, 18 Apr 2011 23:52:53 +0000 (16:52 -0700)]
add docs for console object

13 years agoAdd community link on homepage
Ryan Dahl [Sat, 16 Apr 2011 20:55:03 +0000 (13:55 -0700)]
Add community link on homepage

13 years agoDocs: some encodings contains multibyte chars.
Ryan Dahl [Thu, 14 Apr 2011 22:11:35 +0000 (15:11 -0700)]
Docs: some encodings contains multibyte chars.

fixes #888

13 years agoFix docs - Move module's description to right position
koichik [Thu, 14 Apr 2011 16:54:36 +0000 (01:54 +0900)]
Fix docs - Move module's description to right position

13 years agoFix: Multiple pipes to the same stream were broken
Felix Geisendörfer [Thu, 14 Apr 2011 18:33:54 +0000 (20:33 +0200)]
Fix: Multiple pipes to the same stream were broken

When creating multiple .pipe()s to the same destination stream, the
first source to end would close the destination, breaking all remaining
pipes. This patch fixes the problem by keeping track of all open
pipes, so that we only call end on destinations that have no more
sources piping to them.

closes #929

13 years agoDon't emit error on ECONNRESET - just close
Ryan Dahl [Thu, 14 Apr 2011 07:01:23 +0000 (00:01 -0700)]
Don't emit error on ECONNRESET - just close

Fix #670

13 years agoNow working on v0.4.7
Ryan Dahl [Thu, 14 Apr 2011 05:03:48 +0000 (22:03 -0700)]
Now working on v0.4.7

13 years agoBump to v0.4.6 v0.4.6
Ryan Dahl [Thu, 14 Apr 2011 04:20:05 +0000 (21:20 -0700)]
Bump to v0.4.6

13 years agoCryptoStream.write returns false when queue > 128kb
Ryan Dahl [Wed, 13 Apr 2011 20:54:47 +0000 (13:54 -0700)]
CryptoStream.write returns false when queue > 128kb

Previously the return value of write was dependent on if it was paused or
not which was causing a strange error demoed in the previous commit.

Fixes #892

13 years agoTLS use RC4-SHA by default
Ryan Dahl [Thu, 14 Apr 2011 01:37:49 +0000 (18:37 -0700)]
TLS use RC4-SHA by default

13 years agoPass secureProtocol through on tls.Server creation
Theo Schlossnagle [Sat, 2 Apr 2011 04:53:07 +0000 (00:53 -0400)]
Pass secureProtocol through on tls.Server creation

The secureProtocol option to building the SSL context was not being properly
passed through in the credentials in the tls code. This is fixed.

13 years agoAdd os.cpus() and os.uptime() support for sunos
Scott McWhirter [Sun, 27 Mar 2011 10:14:34 +0000 (03:14 -0700)]
Add os.cpus() and os.uptime() support for sunos

13 years agoRevert "Add os.cpus() and os.uptime() support for sunos"
Ryan Dahl [Thu, 14 Apr 2011 00:30:12 +0000 (17:30 -0700)]
Revert "Add os.cpus() and os.uptime() support for sunos"

Cherry-pick fail. Breaks linux. Will land again shortly.

This reverts commit e8cf98c841c8aa80975fa2bd96187f49a6cbb760.
This reverts commit d953856d87f2b12740332940011f9fd0e2cb41a2.
This reverts commit 752bbd6b426d4be9fc8a352c7bec0f89839828d7.

13 years agoAdd os.cpus() and os.uptime() support for sunos
Scott McWhirter [Sun, 27 Mar 2011 10:14:34 +0000 (03:14 -0700)]
Add os.cpus() and os.uptime() support for sunos

13 years agoTest to demonstrate #892
Ryan Dahl [Wed, 13 Apr 2011 19:49:11 +0000 (12:49 -0700)]
Test to demonstrate #892

13 years agoFix Buffer.write() with UCS-2 should not be write partial char
koichik [Wed, 13 Apr 2011 16:17:18 +0000 (01:17 +0900)]
Fix Buffer.write() with UCS-2 should not be write partial char

closes #916.

13 years agoAllow omission of end option for range reads
Felix Geisendörfer [Tue, 5 Apr 2011 21:37:40 +0000 (23:37 +0200)]
Allow omission of end option for range reads

Problem: Sometimes it is useful to read a file from a certain position
to it's end. The current implementation was already perfectly capable
of this, but decided to throw an error when the user tried to omit
the end option. The only way to do this, was to pass {end: Infinity}.

Solution: Automatically assume {end: Infinity} when omitted, and remove
the previous exception thrown. Also updated the docs.

closes #801.

13 years agoModify text about buffer.write and partial chars
Ryan Dahl [Wed, 13 Apr 2011 08:26:57 +0000 (01:26 -0700)]
Modify text about buffer.write and partial chars

Fixes GH-913.

13 years agoFixes the circular reference in vm modules.
Jakub Lekstan [Thu, 31 Mar 2011 14:55:26 +0000 (16:55 +0200)]
Fixes the circular reference in vm modules.

Fixes the circular reference problem. Closes GH-822.

13 years agoAdd docs about Buffer._charsWritten
Ryan Dahl [Tue, 12 Apr 2011 22:20:58 +0000 (15:20 -0700)]
Add docs about Buffer._charsWritten

Fixes GH-907.

13 years agoFix bug where http response.readable was never set to false
Abe Fettig [Thu, 31 Mar 2011 21:02:14 +0000 (17:02 -0400)]
Fix bug where http response.readable was never set to false

Closes GH-867.

13 years agoFix doc - no setBodyEnocoding anymore
Ryan Dahl [Tue, 12 Apr 2011 00:30:33 +0000 (17:30 -0700)]
Fix doc - no setBodyEnocoding anymore

Thanks Frederic. Closes GH-859.

13 years agoAuto completion of built-in debugger suggests prefix match rather than partial match.
koichik [Wed, 30 Mar 2011 13:17:00 +0000 (22:17 +0900)]
Auto completion of built-in debugger suggests prefix match rather than partial match.

13 years agoFix docs: There were 2 descriptions of 'request' event.
koichik [Wed, 30 Mar 2011 13:06:41 +0000 (22:06 +0900)]
Fix docs: There were 2 descriptions of 'request' event.

13 years agoRemove extra kstat_open
Scott McWhirter [Sun, 27 Mar 2011 11:31:55 +0000 (04:31 -0700)]
Remove extra kstat_open

13 years agoAdd os.cpus() support for sunos
Scott McWhirter [Sun, 27 Mar 2011 10:14:34 +0000 (03:14 -0700)]
Add os.cpus() support for sunos

13 years agoAdd documentation around module.exports and scope of global objects
Ryan Dahl [Mon, 11 Apr 2011 23:48:18 +0000 (16:48 -0700)]
Add documentation around module.exports and scope of global objects

Closes GH-852.

13 years agoMerge branch 'v8-3.1' into v0.4
Ryan Dahl [Mon, 11 Apr 2011 23:08:10 +0000 (16:08 -0700)]
Merge branch 'v8-3.1' into v0.4

13 years ago Upgrade v8 to 3.1.8.10
Ryan Dahl [Mon, 11 Apr 2011 23:07:54 +0000 (16:07 -0700)]
 Upgrade v8 to 3.1.8.10

13 years agoDon't error on ENOTCONN from shutdown()
Ryan Dahl [Mon, 11 Apr 2011 22:33:24 +0000 (15:33 -0700)]
Don't error on ENOTCONN from shutdown()

13 years agoAdd example to sha1 docs
Ryan Dahl [Sun, 3 Apr 2011 08:09:00 +0000 (01:09 -0700)]
Add example to sha1 docs