diff --git a/ChangeLog b/ChangeLog index e1f8c4c3c8..867d8cd04e 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,43 @@ +2011.05.20, Version 0.4.8 (stable) + +* #974 Properly report traceless errors (isaacs) + +* #983 Better JSON.parse error detection in REPL (isaacs) + +* #836 Agent socket errors bubble up to req only if req exists + +* #1041 Fix event listener leak check timing (koichik) + +* #1038 Fix dns.resolve() with 'PTR' throws Error: Unknown type "PTR" + (koichik) + +* #1073 Share SSL context between server connections (Fedor Indutny) + +* Disable compression with OpenSSL. Improves memory perf. + +* Implement os.totalmem() and os.freemem() for SunOS (Alexandre Marangone) + +* Fix a special characters in URL regression (isaacs) + +* Fix idle timeouts in HTTPS (Felix Geisendörfer) + +* SlowBuffer.write() with 'ucs2' throws ReferenceError. (koichik) + +* http.ServerRequest 'close' sometimes gets an error argument + (Felix Geisendörfer) + +* Doc improvements + +* cleartextstream.destroy() should close(2) the socket. Previously was being + mapped to a shutdown(2) syscall. + +* No longer compile out asserts and debug statements in normal build. + +* Debugger improvements. + +* Upgrade V8 to 3.1.8.16. + + 2011.04.22, Version 0.4.7 (stable) * Don't emit error on ECONNRESET from read() #670 diff --git a/deps/v8/src/objects.h b/deps/v8/src/objects.h index de15a7398d..406895a4e6 100644 --- a/deps/v8/src/objects.h +++ b/deps/v8/src/objects.h @@ -585,6 +585,7 @@ enum CompareResult { class StringStream; class ObjectVisitor; +class Failure; struct ValueInfo : public Malloced { ValueInfo() : type(FIRST_TYPE), ptr(NULL), str(NULL), number(0) { } @@ -611,6 +612,10 @@ class MaybeObject BASE_EMBEDDED { *obj = reinterpret_cast
- 2011.04.22 - node-v0.4.7.tar.gz - (Documentation) + 2011.05.20 + node-v0.4.8.tar.gz + (Documentation)
diff --git a/lib/http.js b/lib/http.js index acb8898215..c18a8683df 100644 --- a/lib/http.js +++ b/lib/http.js @@ -1089,7 +1089,11 @@ function connectionListener(socket) { // When we're finished writing the response, check if this is the last // respose, if so destroy the socket. res.on('finish', function() { - assert(incoming[0] === req); + // Usually the first incoming element should be our request. it may + // be that in the case abortIncoming() was called that the incoming + // array will be empty. + assert(incoming.length == 0 || incoming[0] === req); + incoming.shift(); res.detachSocket(socket); diff --git a/wscript b/wscript index 32b4cc1a40..bc77a3bafe 100644 --- a/wscript +++ b/wscript @@ -875,7 +875,7 @@ def build(bld): , 'CPPFLAGS' : " ".join(program.env["CPPFLAGS"]).replace('"', '\\"') , 'LIBFLAGS' : " ".join(program.env["LIBFLAGS"]).replace('"', '\\"') , 'PREFIX' : safe_path(program.env["PREFIX"]) - , 'VERSION' : '0.4.7' # FIXME should not be hard-coded, see NODE_VERSION_STRING in src/node_version. + , 'VERSION' : '0.4.8' # FIXME should not be hard-coded, see NODE_VERSION_STRING in src/node_version. } return x