From 01a4be45542d6130b422991f035409d9a2d846ae Mon Sep 17 00:00:00 2001 From: isaacs Date: Fri, 18 Jan 2013 10:03:54 -0800 Subject: [PATCH 1/3] buffer: Define INFINITY for MSVC compiler --- src/node_buffer.cc | 24 ++++++++++++++++++++++++ 1 file changed, 24 insertions(+) diff --git a/src/node_buffer.cc b/src/node_buffer.cc index f49524774cc..ed2656955ab 100644 --- a/src/node_buffer.cc +++ b/src/node_buffer.cc @@ -31,6 +31,30 @@ #include // float limits #include // infinity +// Windows does not define INFINITY in math.h +// Copy V8's approach and use HUGE_VAL instead +#ifndef INFINITY +# ifdef HUGE_VALF +# define INFINITY HUGE_VALF +# else + +// MSVC. No INFINITY, no HUGE_VALF +// There's HUGE_VAL, but that's a double, not a float. +// Assign the bytes and float-ify it. + +typedef union { unsigned char __c[4]; float __f; } __huge_valf_t; +# if __BYTE_ORDER == __BIG_ENDIAN +# define __HUGE_VALF_bytes { 0x7f, 0x80, 0, 0 } +# endif +# if __BYTE_ORDER == __LITTLE_ENDIAN +# define __HUGE_VALF_bytes { 0, 0, 0x80, 0x7f } +# endif +static __huge_valf_t __huge_valf = { __HUGE_VALF_bytes }; +# define INFINITY (__huge_valf.__f) + +# endif +#endif + #define MIN(a,b) ((a) < (b) ? (a) : (b)) #define BUFFER_CLASS_ID (0xBABE) From ee2fd79e434ed7096193602e614bccc075bac849 Mon Sep 17 00:00:00 2001 From: isaacs Date: Fri, 18 Jan 2013 10:17:26 -0800 Subject: [PATCH 2/3] doc: Remove mention of child.send 'track' option Will be removed very soon. No point making it public. --- doc/api/child_process.markdown | 12 +++--------- 1 file changed, 3 insertions(+), 9 deletions(-) diff --git a/doc/api/child_process.markdown b/doc/api/child_process.markdown index 343030d53fd..596c3c6dd9c 100644 --- a/doc/api/child_process.markdown +++ b/doc/api/child_process.markdown @@ -124,11 +124,10 @@ process may not actually kill it. `kill` really just sends a signal to a proces See `kill(2)` -### child.send(message, [sendHandle], [options]) +### child.send(message, [sendHandle]) * `message` {Object} * `sendHandle` {Handle object} -* `options` {Object} When using `child_process.fork()` you can write to the child using `child.send(message, [sendHandle])` and messages are received by @@ -167,12 +166,7 @@ The `sendHandle` option to `child.send()` is for sending a TCP server or socket object to another process. The child will receive the object as its second argument to the `message` event. -The `options` object may have the following properties: - - * `track` - Notify master process when `sendHandle` will be closed in child - process. (`false` by default) - -**send server object** +#### Example: sending server object Here is an example of sending a server: @@ -200,7 +194,7 @@ And the child would the receive the server object as: Note that the server is now shared between the parent and child, this means that some connections will be handled by the parent and some by the child. -**send socket object** +#### Example: sending socket object Here is an example of sending a socket. It will spawn two children and handle connections with the remote address `74.125.127.100` as VIP by sending the From 9e7bebeb8305edd55735a95955a98fdbe47572e5 Mon Sep 17 00:00:00 2001 From: isaacs Date: Fri, 18 Jan 2013 08:42:54 -0800 Subject: [PATCH 3/3] 2013.01.18, Version 0.9.7 (Unstable) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * V8: Upgrade to 3.15.11.7 * npm: Upgrade to 1.2.2 * punycode: Upgrade to 1.2.0 (Mathias Bynens) * repl: make built-in modules available by default (Felix Böhm) * windows: add support for '_Total' perf counters (Scott Blomquist) * cluster: make --prof work for workers (Ben Noordhuis) * child_process: do not keep list of sent sockets (Fedor Indutny) * tls: Follow RFC6125 more strictly (Fedor Indutny) * buffer: floating point read/write improvements (Trevor Norris) * TypedArrays: Improve dataview perf without endian param (Dean McNamee) * module: assert require() called with a non-empty string (Felix Böhm, James Campos) * stdio: Set readable/writable flags properly (isaacs) * stream: Properly handle large reads from push-streams (isaacs) --- AUTHORS | 2 ++ ChangeLog | 31 ++++++++++++++++++++++++++++++- src/node_version.h | 2 +- 3 files changed, 33 insertions(+), 2 deletions(-) diff --git a/AUTHORS b/AUTHORS index eb558aa9f71..40f0651da84 100644 --- a/AUTHORS +++ b/AUTHORS @@ -401,3 +401,5 @@ Luke Bayes Nirk Niggler James Hight Mike Harsch +Alexandr Emelin +James Campos diff --git a/ChangeLog b/ChangeLog index d4805dc43e8..6be7da43a91 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,4 +1,33 @@ -2013.01.11, Version 0.9.6 (Unstable) +2013.01.18, Version 0.9.7 (Unstable) + +* V8: Upgrade to 3.15.11.7 + +* npm: Upgrade to 1.2.2 + +* punycode: Upgrade to 1.2.0 (Mathias Bynens) + +* repl: make built-in modules available by default (Felix Böhm) + +* windows: add support for '_Total' perf counters (Scott Blomquist) + +* cluster: make --prof work for workers (Ben Noordhuis) + +* child_process: do not keep list of sent sockets (Fedor Indutny) + +* tls: Follow RFC6125 more strictly (Fedor Indutny) + +* buffer: floating point read/write improvements (Trevor Norris) + +* TypedArrays: Improve dataview perf without endian param (Dean McNamee) + +* module: assert require() called with a non-empty string (Felix Böhm, James Campos) + +* stdio: Set readable/writable flags properly (isaacs) + +* stream: Properly handle large reads from push-streams (isaacs) + + +2013.01.11, Version 0.9.6 (Unstable), 9313fdc71ca8335d5e3a391c103230ee6219b3e2 * V8: update to 3.15.11.5 diff --git a/src/node_version.h b/src/node_version.h index 6f8f39f3a1a..1c5ab4404e8 100644 --- a/src/node_version.h +++ b/src/node_version.h @@ -30,7 +30,7 @@ # define NODE_TAG "" #endif -#define NODE_VERSION_IS_RELEASE 0 +#define NODE_VERSION_IS_RELEASE 1 #ifndef NODE_STRINGIFY #define NODE_STRINGIFY(n) NODE_STRINGIFY_HELPER(n)