- 05 Jul, 2017 1 commit
-
-
cjihrig authored
Changes since version 1.12.0: * Now working on version 1.12.1 (cjihrig) * unix: avoid segfault in uv_get_process_title (Michele Caini) * build: add a comma to uv.gyp (Gemini Wen) * win: restore file pos after positional read/write (Bartosz Sosnowski) * unix,stream: return error on closed handle passing (Santiago Gimeno) * unix,benchmark: use fd instead of FILE* after fork (jBarz) * zos: avoid compiler warnings (jBarz) * win,pipe: race condition canceling readfile thread (Jameson Nash) * sunos: filter out non-IPv4/IPv6 interfaces (Sebastian Wiedenroth) * sunos: fix cmpxchgi and cmpxchgl type error (Sai Ke WANG) * unix: reset signal disposition before execve() (Ben Noordhuis) * unix: reset signal mask before execve() (Ben Noordhuis) * unix: fix POLLIN assertion on server read (jBarz) * zos: use stckf builtin for high-res timer (jBarz) * win,udp: implements uv_udp_try_send (Barnabas Gema) * win,udp: return UV_EINVAL instead of aborting (Romain Caire) * freebsd: replace kvm with sysctl (Robert Ayrapetyan) * aix: fix un-initialized pointer field in fs handle (Gireesh Punathil) * win,build: support building with VS2017 (Refael Ackermann) * doc: add instructions for building on Windows (Refael Ackermann) * doc: format README (Refael Ackermann)
-
- 04 Jul, 2017 4 commits
-
-
Refael Ackermann authored
PR-URL: https://github.com/libuv/libuv/pull/1284 Reviewed-By:
Bartosz Sosnowski <bartosz@janeasystems.com> Reviewed-By:
Ben Noordhuis <info@bnoordhuis.nl> Reviewed-By:
Colin Ihrig <cjihrig@gmail.com> Reviewed-By:
Saúl Ibarra Corretgé <saghul@gmail.com>
-
Refael Ackermann authored
PR-URL: https://github.com/libuv/libuv/pull/1284 Reviewed-By:
Bartosz Sosnowski <bartosz@janeasystems.com> Reviewed-By:
Ben Noordhuis <info@bnoordhuis.nl> Reviewed-By:
Colin Ihrig <cjihrig@gmail.com> Reviewed-By:
Saúl Ibarra Corretgé <saghul@gmail.com>
-
Refael Ackermann authored
Detection is attempted with `vswhere`. PR-URL: https://github.com/libuv/libuv/pull/1284 Reviewed-By:
Bartosz Sosnowski <bartosz@janeasystems.com> Reviewed-By:
Ben Noordhuis <info@bnoordhuis.nl> Reviewed-By:
Colin Ihrig <cjihrig@gmail.com> Reviewed-By:
Saúl Ibarra Corretgé <saghul@gmail.com>
-
Gireesh Punathil authored
On AIX, uv_fs_event_start() didn't always initialize handle->dir_filename. In this scenario, uv_fs_event_stop() would free the uninitialized pointer. This commit initialized handle->dir_filename to NULL in all cases. Fixes: https://github.com/nodejs/node/issues/13577 PR-URL: https://github.com/libuv/libuv/pull/1400 Reviewed-By:
Colin Ihrig <cjihrig@gmail.com> Reviewed-By:
Ben Noordhuis <info@bnoordhuis.nl>
-
- 01 Jul, 2017 3 commits
-
-
Robert Ayrapetyan authored
PR-URL: https://github.com/libuv/libuv/pull/1377 Reviewed-By:
Ben Noordhuis <info@bnoordhuis.nl> Reviewed-By:
Santiago Gimeno <santiago.gimeno@gmail.com>
-
Romain Caire authored
PR-URL: https://github.com/libuv/libuv/pull/1385 Reviewed-By:
Saúl Ibarra Corretgé <saghul@gmail.com> Reviewed-By:
Santiago Gimeno <santiago.gimeno@gmail.com>
-
Barnabas Gema authored
PR-URL: https://github.com/libuv/libuv/pull/1385 Reviewed-By:
Saúl Ibarra Corretgé <saghul@gmail.com> Reviewed-By:
Santiago Gimeno <santiago.gimeno@gmail.com>
-
- 30 Jun, 2017 5 commits
-
-
John Barboza authored
Instead of gettimeofday which is too heavy for a fast monotonic clock implementation. PR-URL: https://github.com/libuv/libuv/pull/1394 Reviewed-By:
Ben Noordhuis <info@bnoordhuis.nl>
-
John Barboza authored
Certain systems like z/OS have more than one bit turned on for POLLIN events. (e.g. #define POLLIN 0x03). Asserting that all bits are turned on would be invalid. Instead, assert that *any* of those bits are turned on. PR-URL: https://github.com/libuv/libuv/pull/1390 Reviewed-By:
Ben Noordhuis <info@bnoordhuis.nl> Reviewed-By:
Colin Ihrig <cjihrig@gmail.com> Reviewed-By:
Santiago Gimeno <santiago.gimeno@gmail.com>
-
Ben Noordhuis authored
Like the previous commit, except now the signal mask is reset instead of the signal disposition. This does open a race window where blocked signals can get delivered in the interval between the pthread_sigmask() call and the execve() call (and may end up terminating the process) but that cannot be helped; the same caveat applies to the previous commit. Fixes: https://github.com/nodejs/node/issues/13662 PR-URL: https://github.com/libuv/libuv/pull/1376 Reviewed-By:
Colin Ihrig <cjihrig@gmail.com> Reviewed-By:
Fedor Indutny <fedor.indutny@gmail.com> Reviewed-By:
Santiago Gimeno <santiago.gimeno@gmail.com> Reviewed-By:
Saúl Ibarra Corretgé <saghul@gmail.com>
-
Ben Noordhuis authored
Signal dispositions are inherited by child processes. Libuv itself does not touch them (if you don't use uv_signal_start(), that is) but the embedder might and probably does in the case of SIGPIPE. Reset the disposition for signals 1-31 to their defaults right before execve'ing into the new process. Fixes: https://github.com/nodejs/node/issues/13662 PR-URL: https://github.com/libuv/libuv/pull/1376 Reviewed-By:
Colin Ihrig <cjihrig@gmail.com> Reviewed-By:
Fedor Indutny <fedor.indutny@gmail.com> Reviewed-By:
Santiago Gimeno <santiago.gimeno@gmail.com> Reviewed-By:
Saúl Ibarra Corretgé <saghul@gmail.com>
-
Sai Ke WANG authored
atomic_cas_ptr() is for compare-and-swap pointer addresses. So when building 64 bit: 1. `ptr` is used casted to a pointer value (4-byte into 8-byte). 2. atomic_cas_ptr reads 8-byte at `ptr` and returns In the case of `uv_async_send`, if handle->pending is 0, cmpxchgi() actually returns the value of the 4-bytes past handle->pending, causing uv__async_send to never be called. The modified test-async-null-cb.c hangs at uv_run in this case. PR-URL: https://github.com/libuv/libuv/pull/1361 Reviewed-By:
Ben Noordhuis <info@bnoordhuis.nl>
-
- 28 Jun, 2017 1 commit
-
-
Sebastian Wiedenroth authored
Filter out anything that is not an IPv4 or IPv6 interface in uv_interface_addresses(). PR-URL: https://github.com/libuv/libuv/pull/1387 Reviewed-By:
Ben Noordhuis <info@bnoordhuis.nl>
-
- 23 Jun, 2017 4 commits
-
-
Jameson Nash authored
Fixes a race condition where if uv_read_stop was called shortly after uv_read_start or a successful read and before the uv_pipe_zero_readfile_thread_proc thread started, that thread would call the blocking ReadFile call after the HANDLE_READING flag had already been cleared. Also ignores EINTR to be more consistent with unix (although we generally don't expect to see this condition on windows). PR-URL: https://github.com/libuv/libuv/pull/1322 Reviewed-By:
Saúl Ibarra Corretgé <saghul@gmail.com> Reviewed-By:
Bartosz Sosnowski <bartosz@janeasystems.com>
-
John Barboza authored
Some of these compiler flags are not supported. So don't use them. PR-URL: https://github.com/libuv/libuv/pull/1373 Reviewed-By:
Colin Ihrig <cjihrig@gmail.com>
-
John Barboza authored
The FILE* object is not guaranteed to be in the same state after a fork. Instead store the file descriptor instead and use that in the child process. PR-URL: https://github.com/libuv/libuv/pull/1369 Reviewed-By:
Ben Noordhuis <info@bnoordhuis.nl> Reviewed-By:
Santiago Gimeno <santiago.gimeno@gmail.com>
-
Santiago Gimeno authored
Return `EBADF` when trying to send a handle which, while enqueued, was closed. Fixes: https://github.com/libuv/libuv/issues/806 PR-URL: https://github.com/libuv/libuv/pull/1352 Reviewed-By:
Colin Ihrig <cjihrig@gmail.com> Reviewed-By:
Saúl Ibarra Corretgé <saghul@gmail.com>
-
- 21 Jun, 2017 1 commit
-
-
Bartosz Sosnowski authored
File read or write from specified position will move file pointer on Windows but not on POSIX. This makes Windows behave as other supported platforms. Ref: https://github.com/nodejs/node/issues/9671 PR-URL: https://github.com/libuv/libuv/pull/1357 Reviewed-By:
Santiago Gimeno <santiago.gimeno@gmail.com> Reviewed-By:
Saúl Ibarra Corretgé <saghul@gmail.com>
-
- 05 Jun, 2017 1 commit
-
-
Gemini Wen authored
PR-URL: https://github.com/libuv/libuv/pull/1368 Reviewed-By:
Colin Ihrig <cjihrig@gmail.com> Reviewed-By:
Ben Noordhuis <info@bnoordhuis.nl>
-
- 31 May, 2017 1 commit
-
-
Michele Caini authored
Fixes: https://github.com/libuv/libuv/issues/1359 PR-URL: https://github.com/libuv/libuv/pull/1360 Reviewed-By:
Ben Noordhuis <info@bnoordhuis.nl> Reviewed-By:
Colin Ihrig <cjihrig@gmail.com> Reviewed-By:
Saúl Ibarra Corretgé <saghul@gmail.com>
-
- 30 May, 2017 5 commits
-
-
cjihrig authored
-
cjihrig authored
-
cjihrig authored
Changes since version 1.11.0: * Now working on version 1.11.1 (cjihrig) * test: fix tests on OpenBSD (Santiago Gimeno) * test: fix -Wformat warning (Santiago Gimeno) * win,fs: avoid double freeing uv_fs_event_t.dirw (Vladimir Matveev) * unix: remove unused code in `uv__io_start` (Fedor Indutny) * signal: add uv_signal_start_oneshot method (Santiago Gimeno) * unix: factor out reusable POSIX hrtime impl (Brad King) * unix,win: add uv_os_{get,set,unset}env() (cjihrig) * win: add uv__convert_utf8_to_utf16() (cjihrig) * docs: improve UV_ENOBUFS scenario documentation (cjihrig) * unix: return UV_EINVAL for NULL env name (jBarz) * unix: filter getifaddrs results consistently (Brad King) * unix: factor out getifaddrs result filter (Brad King) * unix: factor out reusable BSD ifaddrs impl (Brad King) * unix: use union to follow strict aliasing rules (jBarz) * unix: simplify async watcher dispatch logic (Ben Noordhuis) * samples: update timer callback prototype (Ben Noordhuis) * unix: make loops and watchers usable after fork() (Jason Madden) * win: free uv__loops once empty (cjihrig) * tools: add make_dist_html.py script (Ben Noordhuis) * win,sunos: stop handle on uv_fs_event_start() err (cjihrig) * unix,windows: refactor request init logic (Ben Noordhuis) * win: fix memory leak inside uv__pipe_getname (A. Hauptmann) * fsevent: support for files without short name (Bartosz Sosnowski) * doc: fix multiple doc typos (Jamie Davis) * test,osx: fix flaky kill test (Santiago Gimeno) * unix: inline uv_pipe_bind() err_bind goto target (cjihrig) * unix,test: deadstore fixes (Rasmus Christian Pedersen) * win: fix memory leak inside uv_fs_access() (A. Hauptmann) * doc: fix docs/src/fs.rst build warning (Daniel Bevenius) * doc: minor grammar fix in Installation section (Daniel Bevenius) * doc: suggestions for design page (Daniel Bevenius) * doc: libuv does not touch uv_loop_t.data (Ben Noordhuis) * github: add ISSUE_TEMPLATE.md (Ben Noordhuis) * doc: add link to libuv/help to README (Ben Noordhuis) * udp: fix fast path in uv_udp_send() on unix (Fedor Indutny) * test: add test for uv_udp_send() fix (Trevor Norris) * doc: fix documentation for uv_handle_t.type (Daniel Kahn Gillmor) * zos: use proper prototype for epoll_init() (Ben Noordhuis) * doc: rename docs to "libuv documentation" (Saúl Ibarra Corretgé) * doc: update copyright years (Saúl Ibarra Corretgé) * doc: move TOC to a dedicated document (Saúl Ibarra Corretgé) * doc: move documentation section up (Saúl Ibarra Corretgé) * doc: move "upgrading" to a standalone document (Saúl Ibarra Corretgé) * doc: add initial version of the User Guide (Saúl Ibarra Corretgé) * doc: removed unused file (Saúl Ibarra Corretgé) * doc: update guide/about and mention new maintainership (Saúl Ibarra Corretgé) * doc: remove licensing note from guide/about (Saúl Ibarra Corretgé) * doc: add warning note to user guide (Saúl Ibarra Corretgé) * doc: change license to CC BY 4.0 (Saúl Ibarra Corretgé) * doc: remove ubvook reference from README (Saúl Ibarra Corretgé) * doc: add code samples from uvbook (unadapted) (Saúl Ibarra Corretgé) * doc: update supported linux/glibc baseline (Ben Noordhuis) * win: avoid leaking pipe handles to child processes (Jameson Nash) * win,test: support stdout output larger than 1kb (Bartosz Sosnowski) * win: remove __declspec(inline) from atomic op (Keane) * test: fix VC++ compilation warning (Rasmus Christian Pedersen) * build: add -Wstrict-prototypes (Jameson Nash) * zos: implement uv__io_fork, skip fs event tests (jBarz) * unix: do not close udp sockets on bind error (Marc Schlaich) * unix: remove FSEventStreamFlushSync() call (cjihrig) * build,openbsd: remove kvm-related code (James McCoy) * test: fix flaky tcp-write-queue-order (Santiago Gimeno) * unix,win: add uv_os_gethostname() (cjihrig) * zos: increase timeout for tcp_writealot (jBarz) * zos: do not inline OOB data by default (jBarz) * test: fix -Wstrict-prototypes compiler warnings (Ben Noordhuis) * unix: factor out reusable no-proctitle impl (Brad King) * test: factor out fsevents skip explanation (Brad King) * test: skip fork fsevent cases when lacking support (Brad King) * unix: factor out reusable no-fsevents impl (Brad King) * unix: factor out reusable sysinfo memory lookup (Brad King) * unix: factor out reusable sysinfo loadavg impl (Brad King) * unix: factor out reusable procfs exepath impl (Brad King) * unix: add a uv__io_poll impl using POSIX poll(2) (Brad King) * cygwin: implement support for cygwin and msys2 (Brad King) * cygwin: recognize EOF on named pipe closure (Brad King) * cygwin: fix uv_pipe_connect report of ENOTSOCK (Brad King) * cygwin: disable non-functional ipc handle send (Brad King) * test: skip self-connecting tests on cygwin (Brad King) * doc: mark uv_loop_fork() as experimental (cjihrig) * doc: add bzoz to maintainers (Bartosz Sosnowski) * doc: fix memory leak in tcp-echo-server example (Bernardo Ramos) * win: make uv__get_osfhandle() public (Juan Cruz Viotti) * doc: use valid pipe name in pipe-echo-server (Bernardo Ramos)
-
Bernardo Ramos authored
PR-URL: https://github.com/libuv/libuv/pull/1330 Reviewed-By:
Saúl Ibarra Corretgé <saghul@gmail.com> Reviewed-By:
Colin Ihrig <cjihrig@gmail.com>
-
Juan Cruz Viotti authored
The uv__get_osfhandle() function is a private functio of the Windows subsystem, and its used to get a Windows HANDLE out of a file descriptor number. The motivation behind making this function public is to allow Node.js programs to pass file descriptors created using fs.open() to native Node.js C++ add-ons, and be able to successfully convert them to Windows HANDLEs. Refs: https://github.com/libuv/libuv/pull/1166 Refs: https://github.com/nodejs/node/issues/6369 Fixes: https://github.com/libuv/libuv/issues/1291 PR-URL: https://github.com/libuv/libuv/pull/1323 Reviewed-By:
Santiago Gimeno <santiago.gimeno@gmail.com> Reviewed-By:
Bartosz Sosnowski <bartosz@janeasystems.com> Reviewed-By:
Saúl Ibarra Corretgé <saghul@gmail.com> Reviewed-By:
Colin Ihrig <cjihrig@gmail.com>
-
- 29 May, 2017 1 commit
-
-
Bernardo Ramos authored
Fixes: https://github.com/libuv/help/issues/4 PR-URL: https://github.com/libuv/libuv/pull/1363 Reviewed-By:
Ben Noordhuis <info@bnoordhuis.nl> Reviewed-By:
Colin Ihrig <cjihrig@gmail.com>
-
- 25 May, 2017 2 commits
-
-
Bartosz Sosnowski authored
PR-URL: https://github.com/libuv/libuv/pull/1358 Reviewed-By:
Santiago Gimeno <santiago.gimeno@gmail.com> Reviewed-By:
Saúl Ibarra Corretgé <saghul@gmail.com> Reviewed-By:
Colin Ihrig <cjihrig@gmail.com>
-
cjihrig authored
uv_loop_fork() was recently added, but is known to contain bugs. This commit marks the function as experimental so that bugs can be addressed without blocking further libuv releases. Refs: https://github.com/libuv/libuv/pull/846 Refs: https://github.com/libuv/libuv/pull/1269 Refs: https://github.com/libuv/libuv/issues/1264 PR-URL: https://github.com/libuv/libuv/pull/1356 Reviewed-By:
Santiago Gimeno <santiago.gimeno@gmail.com> Reviewed-By:
Ben Noordhuis <info@bnoordhuis.nl>
-
- 21 May, 2017 11 commits
-
-
Brad King authored
The cygwin runtime library fails to connect a socket client to a listening server within the same thread. Test cases that use this approach hang while waiting for the connection to complete. This can be reproduced independent of libuv in a simple example using both socket/bind/listen and socket/connect in a single thread. Avoid this problem in our test suite by skipping such tests on cygwin. PR-URL: https://github.com/libuv/libuv/pull/1312 Reviewed-By:
Ben Noordhuis <info@bnoordhuis.nl> Reviewed-By:
Santiago Gimeno <santiago.gimeno@gmail.com>
-
Brad King authored
On Cygwin `recvmsg` always sets `msg_controllen` to zero on a message received from a named pipe. Therefore we cannot use `sendmsg` to send handles for ipc. Return failure early from this code path as `ENOSYS`. Skip tests requiring this feature since it is not available. PR-URL: https://github.com/libuv/libuv/pull/1312 Reviewed-By:
Ben Noordhuis <info@bnoordhuis.nl> Reviewed-By:
Santiago Gimeno <santiago.gimeno@gmail.com>
-
Brad King authored
On Cygwin a `connect` to a file that is not a socket fails with `EBADF` instead of `ENOTSOCK` even though the former is supposed to be for a bad socket fd. Translate the error. This fixes the `pipe_connect_to_file` to file test. PR-URL: https://github.com/libuv/libuv/pull/1312 Reviewed-By:
Ben Noordhuis <info@bnoordhuis.nl> Reviewed-By:
Santiago Gimeno <santiago.gimeno@gmail.com>
-
Brad King authored
On Cygwin a named pipe closed by terminating a child process may be reported via `ECONNRESET` on the next read. Teach `uv__read` to interpret this as end of file. This fixes the `spawn_and_kill_with_std` test. PR-URL: https://github.com/libuv/libuv/pull/1312 Reviewed-By:
Ben Noordhuis <info@bnoordhuis.nl> Reviewed-By:
Santiago Gimeno <santiago.gimeno@gmail.com>
-
Brad King authored
Cygwin and MSYS2 are POSIX layers implemented on top of Windows. Use our POSIX `poll(2)` implementation of our poll abstraction. For most other components we already have dedicated sources implementing them in terms of APIs available on Cygwin or providing non-implementations of components not supported. This leaves only three components that need Cygwin-specific implementations: * uv_uptime: implement using sysinfo * uv_resident_set_memory: add a placeholder returning UV_ENOSYS * uv_cpu_info: add a placeholder returning UV_ENOSYS Update our test suite to account for features not available due to Cygwin platform limitations or our placeholders. PR-URL: https://github.com/libuv/libuv/pull/1312 Reviewed-By:
Ben Noordhuis <info@bnoordhuis.nl> Reviewed-By:
Santiago Gimeno <santiago.gimeno@gmail.com>
-
Brad King authored
POSIX defines `poll()` as a portable way to wait on file descriptors. Use it to provide an implementation of our poll abstraction for use on platforms that do not provide a more specialized polling method. PR-URL: https://github.com/libuv/libuv/pull/1312 Reviewed-By:
Ben Noordhuis <info@bnoordhuis.nl> Reviewed-By:
Santiago Gimeno <santiago.gimeno@gmail.com>
-
Brad King authored
On Linux we read `/proc/self/exe` for the path to the executable. Factor out a dedicated source file to make this implementation available for use on other platforms that support it. PR-URL: https://github.com/libuv/libuv/pull/1312 Reviewed-By:
Ben Noordhuis <info@bnoordhuis.nl> Reviewed-By:
Santiago Gimeno <santiago.gimeno@gmail.com>
-
Brad King authored
On Linux we use `sysinfo(2)` to look up the load average. Factor out a dedicated source file to make this implementation available for use on other platforms that support it. PR-URL: https://github.com/libuv/libuv/pull/1312 Reviewed-By:
Ben Noordhuis <info@bnoordhuis.nl> Reviewed-By:
Santiago Gimeno <santiago.gimeno@gmail.com>
-
Brad King authored
On Linux we use `sysinfo(2)` to look up available memory. Factor out a dedicated source file to make this implementation available for use on other platforms that support it. PR-URL: https://github.com/libuv/libuv/pull/1312 Reviewed-By:
Ben Noordhuis <info@bnoordhuis.nl> Reviewed-By:
Santiago Gimeno <santiago.gimeno@gmail.com>
-
Brad King authored
On os390 we implement no support for fsevents. Other platforms may not support fsevents either, so provide a dedicated source file to use in this case. PR-URL: https://github.com/libuv/libuv/pull/1312 Reviewed-By:
Ben Noordhuis <info@bnoordhuis.nl> Reviewed-By:
Santiago Gimeno <santiago.gimeno@gmail.com>
-
Brad King authored
On platforms not supporting fsevents do not run the fork fsevent tests. PR-URL: https://github.com/libuv/libuv/pull/1312 Reviewed-By:
Ben Noordhuis <info@bnoordhuis.nl> Reviewed-By:
Santiago Gimeno <santiago.gimeno@gmail.com>
-