diff --git a/AUTHORS b/AUTHORS index 4b7f00c721..d6dd6cfb8b 100644 --- a/AUTHORS +++ b/AUTHORS @@ -466,3 +466,11 @@ Krzysztof Chrapka Linus Mårtensson Peter Rust Shuan Wang +Wyatt Preul +David Björklund +Dav Glass +Andrew Chilton +Antony Bailey +Forrest L Norvell +Evan Solomon +Eran Hammer diff --git a/ChangeLog b/ChangeLog index 02849a9b98..8e4ee85aaa 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,4 +1,39 @@ -2013.07.12, Version 0.11.4 (Unstable) +2013.08.06, Version 0.11.5 (Unstable) + +* v8: upgrade to 3.20.11 + +* uv: upgrade to v0.11.7 + +* buffer: return offset for end of last write (Trevor Norris) + +* build: embed the mdb_v8.so into the binary (Timothy J Fontaine) + +* build: fix --without-ssl build (Ben Noordhuis) + +* child_process: add 'shell' option to .exec() (Ben Noordhuis) + +* dgram: report send errors to cb, don't pass bytes (Ben Noordhuis) + +* fs: write strings directly to disk (Trevor Norris) + +* https: fix default port (Koichi Kobayashi) + +* openssl: use asm for sha, md5, rmd (Fedor Indutny) + +* os: add mac address to networkInterfaces() output (Brian White) + +* smalloc: introduce smalloc module (Trevor Norris) + +* stream: Simplify flowing, passive data listening (streams3) (isaacs) + +* tls: asynchronous SNICallback (Fedor Indutny) + +* tls: share tls tickets key between cluster workers (Fedor Indutny) + +* util: don't throw on circular %j input to format() (Ben Noordhuis) + + +2013.07.12, Version 0.11.4 (Unstable), b5b84197ed037918fd1a26e5cb87cce7c812ca55 * npm: Upgrade to 1.3.4 diff --git a/deps/uv/ChangeLog b/deps/uv/ChangeLog index 4425f01ba2..8601b32f09 100644 --- a/deps/uv/ChangeLog +++ b/deps/uv/ChangeLog @@ -1,3 +1,50 @@ +2013.08.07, Version 0.11.7 (Unstable) + +Changes since version 0.11.6: + +* unix, windows: fix uv_fs_chown() function prototype (Ben Noordhuis) + +* unix, windows: remove unused variables (Brian White) + +* test: fix signed/unsigned comparison warnings (Ben Noordhuis) + +* build: dtrace shouldn't break out of tree builds (Timothy J. Fontaine) + +* unix, windows: don't read/recv if buf.len==0 (Ben Noordhuis) + +* build: add mingw makefile (Ben Noordhuis) + +* unix, windows: add MAC to uv_interface_addresses() (Brian White) + +* build: enable AM_INIT_AUTOMAKE([subdir-objects]) (Ben Noordhuis) + +* unix, windows: make buf arg to uv_fs_write const (Ben Noordhuis) + +* sunos: fix build breakage introduced in e3a657c (Ben Noordhuis) + +* aix: fix build breakage introduced in 3ee4d3f (Ben Noordhuis) + +* windows: fix mingw32 build, define JOB_OBJECT_XXX (Yasuhiro Matsumoto) + +* windows: fix mingw32 build, include limits.h (Yasuhiro Matsumoto) + +* test: replace sprintf() with snprintf() (Ben Noordhuis) + +* test: replace strcpy() with strncpy() (Ben Noordhuis) + +* openbsd: fix uv_ip6_addr() unused variable warnings (Ben Noordhuis) + +* openbsd: fix dlerror() const correctness warning (Ben Noordhuis) + +* openbsd: fix uv_fs_sendfile() unused variable warnings (Ben Noordhuis) + +* build: disable parallel automake tests (Ben Noordhuis) + +* test: add windows-only snprintf() function (Ben Noordhuis) + +* build: add automake serial-tests version check (Ben Noordhuis) + + 2013.07.26, Version 0.10.13 (Stable), 381312e1fe6fecbabc943ccd56f0e7d114b3d064 Changes since version 0.10.12: diff --git a/deps/uv/configure.ac b/deps/uv/configure.ac index 982ddfdae1..f50e63536b 100644 --- a/deps/uv/configure.ac +++ b/deps/uv/configure.ac @@ -14,7 +14,11 @@ AC_PREREQ(2.57) AC_INIT([libuv], [0.11.5], [https://github.com/joyent/libuv/issues]) -AM_INIT_AUTOMAKE([foreign subdir-objects -Wall -Werror]) +# Use AM_SILENT_RULES as an ad-hoc version check to find out if it's safe +# to use the serial-tests directive. Both were added in automake v0.11. +AM_INIT_AUTOMAKE(m4_ifdef([AM_SILENT_RULES], + [-Wall -Werror foreign subdir-objects serial-tests], + [-Wall -Werror foreign subdir-objects])) AC_CONFIG_MACRO_DIR([m4]) AC_CANONICAL_HOST AC_ENABLE_SHARED diff --git a/deps/uv/m4/.gitignore b/deps/uv/m4/.gitignore new file mode 100644 index 0000000000..bde78f43f9 --- /dev/null +++ b/deps/uv/m4/.gitignore @@ -0,0 +1,2 @@ +# Ignore libtoolize-generated files. +*.m4 diff --git a/deps/uv/src/unix/dl.c b/deps/uv/src/unix/dl.c index 9cc830b815..cbffe4aa26 100644 --- a/deps/uv/src/unix/dl.c +++ b/deps/uv/src/unix/dl.c @@ -65,7 +65,7 @@ const char* uv_dlerror(uv_lib_t* lib) { static int uv__dlerror(uv_lib_t* lib) { - char* errmsg; + const char* errmsg; if (lib->errmsg) free(lib->errmsg); diff --git a/deps/uv/src/unix/fs.c b/deps/uv/src/unix/fs.c index 142e4a0b35..ecd2b239d2 100644 --- a/deps/uv/src/unix/fs.c +++ b/deps/uv/src/unix/fs.c @@ -468,6 +468,10 @@ static ssize_t uv__fs_sendfile(uv_fs_t* req) { return -1; } #else + /* Squelch compiler warnings. */ + (void) &in_fd; + (void) &out_fd; + return uv__fs_sendfile_emul(req); #endif } diff --git a/deps/uv/src/uv-common.c b/deps/uv/src/uv-common.c index 9bcef4504d..532f53fc47 100644 --- a/deps/uv/src/uv-common.c +++ b/deps/uv/src/uv-common.c @@ -140,9 +140,11 @@ struct sockaddr_in uv_ip4_addr(const char* ip, int port) { struct sockaddr_in6 uv_ip6_addr(const char* ip, int port) { struct sockaddr_in6 addr; +#if defined(UV_PLATFORM_HAS_IP6_LINK_LOCAL_ADDRESS) char address_part[40]; size_t address_part_size; const char* zone_index; +#endif memset(&addr, 0, sizeof(struct sockaddr_in6)); diff --git a/deps/uv/src/version.c b/deps/uv/src/version.c index ac1577251c..e18cf15ba5 100644 --- a/deps/uv/src/version.c +++ b/deps/uv/src/version.c @@ -32,7 +32,7 @@ #define UV_VERSION_MAJOR 0 #define UV_VERSION_MINOR 11 #define UV_VERSION_PATCH 7 -#define UV_VERSION_IS_RELEASE 0 +#define UV_VERSION_IS_RELEASE 1 #define UV_VERSION ((UV_VERSION_MAJOR << 16) | \ diff --git a/deps/uv/src/win/process.c b/deps/uv/src/win/process.c index 053721ca40..3230bb2ef5 100644 --- a/deps/uv/src/win/process.c +++ b/deps/uv/src/win/process.c @@ -24,6 +24,7 @@ #include #include #include +#include #include "uv.h" #include "internal.h" diff --git a/deps/uv/src/win/winapi.h b/deps/uv/src/win/winapi.h index e023beed5d..003c14bad4 100644 --- a/deps/uv/src/win/winapi.h +++ b/deps/uv/src/win/winapi.h @@ -4073,6 +4073,25 @@ ((NTSTATUS) (error)) : ((NTSTATUS) (((error) & 0x0000FFFF) | \ (FACILITY_NTWIN32 << 16) | ERROR_SEVERITY_WARNING))) +#ifndef JOB_OBJECT_LIMIT_PROCESS_MEMORY +# define JOB_OBJECT_LIMIT_PROCESS_MEMORY 0x00000100 +#endif +#ifndef JOB_OBJECT_LIMIT_JOB_MEMORY +# define JOB_OBJECT_LIMIT_JOB_MEMORY 0x00000200 +#endif +#ifndef JOB_OBJECT_LIMIT_DIE_ON_UNHANDLED_EXCEPTION +# define JOB_OBJECT_LIMIT_DIE_ON_UNHANDLED_EXCEPTION 0x00000400 +#endif +#ifndef JOB_OBJECT_LIMIT_BREAKAWAY_OK +# define JOB_OBJECT_LIMIT_BREAKAWAY_OK 0x00000800 +#endif +#ifndef JOB_OBJECT_LIMIT_SILENT_BREAKAWAY_OK +# define JOB_OBJECT_LIMIT_SILENT_BREAKAWAY_OK 0x00001000 +#endif +#ifndef JOB_OBJECT_LIMIT_KILL_ON_JOB_CLOSE +# define JOB_OBJECT_LIMIT_KILL_ON_JOB_CLOSE 0x00002000 +#endif + /* from ntifs.h */ /* MinGW already has it, mingw-w64 does not. */ #if defined(_MSC_VER) || defined(__MINGW64_VERSION_MAJOR) diff --git a/deps/uv/test/runner-unix.c b/deps/uv/test/runner-unix.c index b66df51b98..9afcd1e488 100644 --- a/deps/uv/test/runner-unix.c +++ b/deps/uv/test/runner-unix.c @@ -49,7 +49,7 @@ void platform_init(int argc, char **argv) { /* Disable stdio output buffering. */ setvbuf(stdout, NULL, _IONBF, 0); setvbuf(stderr, NULL, _IONBF, 0); - strcpy(executable_path, argv[0]); + strncpy(executable_path, argv[0], sizeof(executable_path) - 1); signal(SIGPIPE, SIG_IGN); } diff --git a/deps/uv/test/task.h b/deps/uv/test/task.h index 6f96a4ff00..e050dca0c6 100644 --- a/deps/uv/test/task.h +++ b/deps/uv/test/task.h @@ -153,4 +153,32 @@ enum test_status { return TEST_SKIP; \ } while (0) +#ifdef _WIN32 + +#include + +/* Emulate snprintf() on Windows, _snprintf() doesn't zero-terminate the buffer + * on overflow... + */ +static int snprintf(char* buf, size_t len, const char* fmt, ...) { + va_list ap; + int n; + + va_start(ap, fmt); + n = _vsprintf_p(buf, len, fmt, ap); + va_end(ap); + + /* It's a sad fact of life that no one ever checks the return value of + * snprintf(). Zero-terminating the buffer hopefully reduces the risk + * of gaping security holes. + */ + if (n < 0) + if (len > 0) + buf[0] = '\0'; + + return n; +} + +#endif + #endif /* TASK_H_ */ diff --git a/deps/uv/test/test-ip6-addr.c b/deps/uv/test/test-ip6-addr.c index d65043eab6..9cd9b97cf1 100644 --- a/deps/uv/test/test-ip6-addr.c +++ b/deps/uv/test/test-ip6-addr.c @@ -76,9 +76,9 @@ void test_ip6_addr_scope(const char* ip6_addr, if (strncmp(ip6_addr, "fe80::", 6) != 0) return; #ifdef _WIN32 - sprintf(scoped_addr, "%s%%%d", ip6_addr, iface_index); + snprintf(scoped_addr, sizeof(scoped_addr), "%s%%%d", ip6_addr, iface_index); #else - sprintf(scoped_addr, "%s%%%s", ip6_addr, device_name); + snprintf(scoped_addr, sizeof(scoped_addr), "%s%%%s", ip6_addr, device_name); #endif LOGF("Testing link-local address %s (iface_index: 0x%02x, device_name: %s)\n", diff --git a/src/node_version.h b/src/node_version.h index cf3d6c07b7..17474405c2 100644 --- a/src/node_version.h +++ b/src/node_version.h @@ -26,7 +26,7 @@ #define NODE_MINOR_VERSION 11 #define NODE_PATCH_VERSION 5 -#define NODE_VERSION_IS_RELEASE 0 +#define NODE_VERSION_IS_RELEASE 1 #ifndef NODE_TAG # define NODE_TAG ""