Saúl Ibarra Corretgé
d476185bb3
Now working on version 1.9.1
2016-04-07 07:52:59 -03:00
Saúl Ibarra Corretgé
229b3a4cc1
2016.04.08, Version 1.9.0 (Stable)
...
Changes since version 1.8.0:
* win: wait for full timeout duration (João Reis)
* unix: fix support for uClibc-ng (Martin Bark)
* doc: indicate where new test files need to be added (Dave)
* test,unix: fix logic error in test runner (Ben Noordhuis)
* fs: don't nullify req->bufs on EINTR (Dave)
* osx: set the default thread stack size to RLIMIT_STACK (Saúl Ibarra
Corretgé)
* build: invoke libtoolize with --copy (Ben Noordhuis)
* test: fixup eintr_handling (Saúl Ibarra Corretgé)
* osx: avoid compilation warning with Clang (Saúl Ibarra Corretgé)
* test,win: fix compilation with shared lib (Alexis Murzeau)
* test: fix race condition in pipe-close-stdout (Imran Iqbal)
* unix,win: add uv_os_tmpdir() (cjihrig)
* ios: fix undefined PTHREAD_STACK_MIN (Didiet)
* test: fix threadpool_multiple_event_loops for AIX (Imran Iqbal)
* unix: report errors for unpollable fds (Ben Noordhuis)
* win: fix watching root files (Nicholas Vavilov)
* build,win: print the Visual Studio version in use (Saúl Ibarra
Corretgé)
* build,win: remove unneeded condition from GYP file (Saúl Ibarra
Corretgé)
* test,win: fix compilation warning (Saúl Ibarra Corretgé)
* test: use uv_loop_close and assert its result (Nan Xiang)
* build: map 'AMD64' host arch to 'x64' (Ben Noordhuis)
* osx: protected use of potentially undefined macro (Samuel Lorétan)
* linux: fix compilation with musl (Saúl Ibarra Corretgé)
* doc: describe how to make release builds on Unix (Saúl Ibarra
Corretgé)
* doc: add missing link in README (Saúl Ibarra Corretgé)
* build: python 2.x/3.x consistent print usage (Rasmus Christian
Pedersen)
* test: assume no IPv6 if interfaces cannot be listed (Nan Xiang)
* darwin: replace F_FULLFSYNC with fdatasync syscall (Saúl Ibarra
Corretgé)
* doc: add missing write callback to example (Nándor István Krácser)
* build: compile with -D_THREAD_SAFE on AIX (Imran Iqbal)
* test: fix threadpool_multiple_event_loops on PPC (Imran Iqbal)
* test: reduce timeout in tcp_close_while_connecting (Imran Iqbal)
* unix, win: consistently null-terminate buffers (Saúl Ibarra Corretgé)
* unix, win: count null byte on UV_ENOBUFS (Saúl Ibarra Corretgé)
* test: fix deadlocks in uv_cond_wait (Katsutoshi Horie)
* linux: fix cpu count (Lukasz Jagiello)
* unix: fix uv__handle_type for AIX (Imran Iqbal)
* linux: call fclose(), fix fdopen() memory leak (Ben Noordhuis)
* win: remove unneeded condition (Saúl Ibarra Corretgé)
* unix: fix compile error in Android using bionic (Robert Chiras)
* linux: add braces to multi-statement if (Kári Tristan Helgason)
* doc: add @cjihrig as a maintainer (Saúl Ibarra Corretgé)
* unix: add fork-safe open file function (Kári Tristan Helgason)
* linux: replace calls to fopen with uv__open_file (Kári Tristan
Helgason)
* linux: remove redundant call to rewind() (Krishnaraj Bhat)
* win: remove duplicated code when processing fsevents (Saúl Ibarra
Corretgé)
* test: fix poll_bad_fdtype for AIX (Imran Iqbal)
* linux: fix error checking in uv__open_file (Saúl Ibarra Corretgé)
* poll: add UV_DISCONNECT event (Santiago Gimeno)
* fs: realpath: fix string size before converting (Yuval Brik)
* win: use native APIs for UTF conversions (cjihrig)
* doc: clarify uv_loop_close() (Ben Noordhuis)
* unix: retry ioctl(TIOCGWINSZ) on EINTR (Ben Noordhuis)
* win,build: remove unused build defines (Saúl Ibarra Corretgé)
* win: fix buffer overflow in fs events (Joran Dirk Greef)
* win: fix uv_relative_path and remove dead branch (Joran Dirk Greef)
* unix: use open(2) with O_CLOEXEC on OS X (Kári Tristan Helgason)
* test: add missing copyright header (cjihrig)
* aix: fix 'POLLRDHUP undeclared' build error (Ben Noordhuis)
* unix,win: add uv_get_passwd() (cjihrig)
* process: fix uv_spawn edge-case (Santiago Gimeno)
* test: use %ld for printing uid/gid (Ben Noordhuis)
* aix: fix ahafs implementation (Imran Iqbal)
* aix: do not store absolute path to ahafs (Imran Iqbal)
* process: close process pipes safely (Santiago Gimeno)
* unix: open ttyname instead of /dev/tty (Enno Boland)
* unix: remove outdated comment (Kári Tristan Helgason)
2016-04-07 12:14:56 +02:00
cjihrig
217f81b6a1
unix,win: add uv_get_passwd()
...
This commit adds the uv_get_passwd() function, which returns a
subset of the current effective user's password file entry.
Refs: https://github.com/libuv/libuv/issues/11
Fixes: https://github.com/libuv/libuv/issues/731
PR-URL: https://github.com/libuv/libuv/pull/742
Reviewed-By: Ben Noordhuis <info@bnoordhuis.nl>
Reviewed-By: Saúl Ibarra Corretgé <saghul@gmail.com>
2016-03-29 08:13:59 -04:00
cjihrig
f04d5fc3b9
win: use native APIs for UTF conversions
...
This commit replaces uv_utf16_to_utf8() and uv_utf8_to_utf16()
with calls to the native Windows API equivalents.
Refs: https://github.com/libuv/libuv/pull/672#discussion_r49049746
PR-URL: https://github.com/libuv/libuv/pull/762
Reviewed-By: Ben Noordhuis <info@bnoordhuis.nl>
Reviewed-By: Saúl Ibarra Corretgé <saghul@gmail.com>
2016-03-18 12:40:57 -04:00
Santiago Gimeno
c7c8e916b8
poll: add UV_DISCONNECT event
...
It allows detecting the remote socket closing the connection. It's
emitted when `EPOLLRDHUP`(Linux), `EV_EOF`(BSD), `POLLRDHUP`(Solaris,
AIX) and `AFD_POLL_DISCONNECT`(Windows) events are received.
PR-URL: https://github.com/libuv/libuv/pull/691
Reviewed-By: Ben Noordhuis <info@bnoordhuis.nl>
Reviewed-By: Fedor Indutny <fedor@indutny.com>
Reviewed-By: Saúl Ibarra Corretgé <saghul@gmail.com>
2016-03-15 23:39:49 +01:00
cjihrig
c0fa2e7518
unix,win: add uv_os_tmpdir()
...
PR-URL: https://github.com/libuv/libuv/pull/672
Reviewed-By: Saúl Ibarra Corretgé <saghul@gmail.com>
2016-01-21 09:11:56 +01:00
Saúl Ibarra Corretgé
61f13a6d5e
Now working on version 1.8.1
2015-12-14 21:07:52 +01:00
Saúl Ibarra Corretgé
5467299450
2015.12.15, Version 1.8.0 (Stable)
...
Changes since version 1.7.5:
* unix: fix memory leak in uv_interface_addresses (Jianghua Yang)
* unix: make uv_guess_handle work properly for AIX (Gireesh Punathil)
* fs: undo uv__req_init when uv__malloc failed (Jianghua Yang)
* build: remove unused 'component' GYP option (Saúl Ibarra Corretgé)
* include: remove duplicate extern declaration (Jianghua Yang)
* win: use the MSVC provided snprintf where possible (Jason Williams)
* win, test: fix compilation warning (Saúl Ibarra Corretgé)
* win: fix compilation with VS < 2012 (Ryan Johnston)
* stream: support empty uv_try_write on unix (Fedor Indutny)
* unix: fix request handle leak in uv__udp_send (Jianghua Yang)
* src: replace QUEUE_SPLIT with QUEUE_MOVE (Ben Noordhuis)
* unix: use QUEUE_MOVE when iterating over lists (Ben Noordhuis)
* unix: squelch harmless valgrind warning (Ben Noordhuis)
* test: don't abort on setrlimit() failure (Ben Noordhuis)
* unix: only undo fs req registration in async mode (Ben Noordhuis)
* unix: fix uv__getiovmax return value (HungMingWu)
* unix: make work with Solaris Studio. (Adam Stylinski)
* test: fix fs_event_watch_file_currentdir flakiness (Santiago Gimeno)
* unix: skip prohibited syscalls on tvOS and watchOS (Nathan Corvino)
* test: use FQDN in getaddrinfo_fail test (Wink Saville)
* docs: clarify documentation of uv_tcp_init_ex (Andrius Bentkus)
* win: fix comment (Miodrag Milanovic)
* doc: fix typo in README (Angel Leon)
* darwin: abort() if (un)locking fs mutex fails (Ben Noordhuis)
* pipe: enable inprocess uv_write2 on Windows (Louis DeJardin)
* win: properly return UV_EBADF when _close() fails (Nicholas Vavilov)
* test: skip process_title for AIX (Imran Iqbal)
* misc: expose handle print APIs (Petka Antonov)
* include: add stdio.h to uv.h (Saúl Ibarra Corretgé)
* misc: remove unnecessary null pointer checks (Ian Kronquist)
* test,freebsd: skip udp_dual_stack if not supported (Santiago Gimeno)
* linux: don't retry dup2/dup3 on EINTR (Ben Noordhuis)
* unix: don't retry dup2/dup3 on EINTR (Ben Noordhuis)
* test: fix -Wtautological-pointer-compare warnings (Saúl Ibarra
Corretgé)
* win: map ERROR_BAD_PATHNAME to UV_ENOENT (Tony Kelman)
* test: fix test/test-tty.c for AIX (Imran Iqbal)
* android: support api level less than 21 (kkdaemon)
* fsevents: fix race on simultaneous init+close (Fedor Indutny)
* linux,fs: fix p{read,write}v with a 64bit offset (Saúl Ibarra
Corretgé)
* fs: add uv_fs_realpath() (Yuval Brik)
* win: fix path for removed and renamed fs events (Joran Dirk Greef)
* win: do not read more from stream than available (Jeremy Whitlock)
* test: test that uv_close() doesn't corrupt QUEUE (Andrey Mazo)
* unix: fix uv_fs_event_stop() from fs_event_cb (Andrey Mazo)
* test: fix self-deadlocks in thread_rwlock_trylock (Ben Noordhuis)
* src: remove non ascii character (sztomi)
* test: fix test udp_multicast_join6 for AIX (Imran Iqbal)
2015-12-14 20:54:30 +01:00
Yuval Brik
e76b8838e5
fs: add uv_fs_realpath()
...
Equivalent to realpath(3), returns the full resolved absolute path of a
file or directory.
PR-URL: https://github.com/libuv/libuv/pull/531
Reviewed-By: Saúl Ibarra Corretgé <saghul@gmail.com>
2015-12-05 11:32:58 +01:00
Saúl Ibarra Corretgé
f41b7386de
include: add stdio.h to uv.h
...
Fixes a compilation problem in some platforms (notably OSX) after
6490c50 .
PR-URL: https://github.com/libuv/libuv/pull/618
Reviewed-By: Ben Noordhuis <info@bnoordhuis.nl>
Reviewed-By: Jeremy Whitlock <jwhitlock@apache.org>
2015-11-17 09:14:01 +01:00
Petka Antonov
6490c508a9
misc: expose handle print APIs
...
PR-URL: https://github.com/libuv/libuv/pull/291
Reviewed-By: Saúl Ibarra Corretgé <saghul@gmail.com>
2015-11-16 09:34:34 +01:00
Jianghua Yang
e5c03aed6b
include: remove duplicate extern declaration
...
PR-URL: https://github.com/libuv/libuv/pull/547
Reviewed-By: Saúl Ibarra Corretgé <saghul@gmail.com>
2015-09-24 23:19:31 +02:00
Saúl Ibarra Corretgé
455c4035d4
Now working on version 1.7.6
2015-09-22 22:27:51 +02:00
Saúl Ibarra Corretgé
a8c1136de2
2015.09.23, Version 1.7.5 (Stable)
...
Changes since version 1.7.4:
* unix: Support atomic compare & swap xlC on AIX (nmushell)
* unix: Fix including uv-aix.h on AIX (nmushell)
* unix: consolidate rwlock tryrdlock trywrlock errors (Saúl Ibarra
Corretgé)
* unix, win: consolidate mutex trylock errors (Saúl Ibarra Corretgé)
* darwin: fix memory leak in uv_cpu_info (Jianghua Yang)
* test: add tests for the uv_rwlock implementation (Bert Belder)
* win: redo/fix the uv_rwlock APIs (Bert Belder)
* win: don't fetch function pointers to SRWLock APIs (Bert Belder)
2015-09-22 22:12:07 +02:00
Bert Belder
9a4fd2689d
win: redo/fix the uv_rwlock APIs
...
Previously, on Windows Vista and later, we'd use the Windows native
SRWLock APIs. However they turned out to be semantically incompatible
with pthread read-write locks and/or plain buggy. This patch makes sure
that the custom implementation that was previously only used on old
Windows versions is now used everywhere.
This patch fixes a number of issues with the old fallback
implementation. Specifically:
* The reader count would not be incremented when a thread successfully
acquired a read lock while another thread *also* held a read lock.
* `uv_rwlock_tryrdlock()` and `uv_rwlock_trywrlock()` now
consistently return UV_EBUSY when a lock couldn't be acquired.
* Any unexpected errors now cause libuv to abort, with the exception of
`uv_rwlock_init()`.
See also https://github.com/libuv/libuv/issues/515 .
PR-URL: https://github.com/libuv/libuv/pull/525
Reviewed-By: Saúl Ibarra Corretgé <saghul@gmail.com>
2015-09-22 11:18:13 -04:00
Saúl Ibarra Corretgé
e2db9240db
Working on the next version
2015-09-11 17:58:25 +02:00
Saúl Ibarra Corretgé
a7ad4f5218
2015.09.12, Version 1.7.4 (Stable)
...
Changes since version 1.7.3:
* doc: uv_read_start and uv_read_cb clarifications (Ben Trask)
* freebsd: obtain true uptime through clock_gettime() (Jianghua Yang)
* win, tty: do not convert \r to \r\n (Colin Snover)
* build,gyp: add DragonFly to the list of OSes (Michael Neumann)
* fs: fix bug in sendfile for DragonFly (Michael Neumann)
* doc: add uv_dlsym() return type (Brian White)
* tests: fix fs tests run w/o full getdents support (Jeremy Whitlock)
* doc: fix typo (Devchandra Meetei Leishangthem)
* doc: fix uv-unix.h location (Sakthipriyan Vairamani)
* unix: fix error check when closing process pipe fd (Ben Noordhuis)
* test,freebsd: fix ipc_listen_xx_write tests (Santiago Gimeno)
* win: fix unsavory rwlock fallback implementation (Bert Belder)
* doc: clarify repeat timer behavior (Eli Skeggs)
2015-09-11 17:44:02 +02:00
Bert Belder
3eb6764acd
win: fix unsavory rwlock fallback implementation
...
Before this patch an uv_mutex_t (backed by a critical section) could be
released by a tread different from the thread that acquired it, which is
not allowed. This is fixed by using a semaphore instead.
Note that the affected code paths were used on Windows XP and Windows
Server 2003 only.
Fixes: https://github.com/libuv/libuv/issues/515
PR-URL: https://github.com/libuv/libuv/pull/516
Reviewed-By: Ben Noordhuis <info@bnoordhuis.nl>
Reviewed-By: Saúl Ibarra Corretgé <saghul@gmail.com>
2015-09-11 06:05:32 +02:00
Saúl Ibarra Corretgé
93877b11c8
2015.08.28, Version 1.7.3 (Stable)
...
Changes since version 1.7.2:
* threadpool: fix thread starvation bug (Ben Noordhuis)
2015-08-27 23:42:36 +02:00
Saúl Ibarra Corretgé
4d13a013fc
2015.08.25, Version 1.7.2 (Stable)
...
Changes since version 1.7.1:
* unix, win: make uv_loop_init return on error (Willem Thiart)
* win: reset pipe handle for pipe servers (Saúl Ibarra Corretgé)
* win: fix replacing pipe handle for pipe servers (Saúl Ibarra Corretgé)
* win: fix setting pipe pending instances after bind (Saúl Ibarra
Corretgé)
2015-08-24 23:26:27 +02:00
Saúl Ibarra Corretgé
44f4b6bd82
2015.08.20, Version 1.7.1 (Stable)
...
Changes since version 1.7.0:
* doc: document the procedure for verifying releases (Saúl Ibarra
Corretgé)
* doc: add note about Windows binaries to the README (Saúl Ibarra
Corretgé)
* doc: use long GPG IDs in MAINTAINERS.md (Saúl Ibarra Corretgé)
* Revert "stream: squelch ECONNRESET error if already closed" (Saúl
Ibarra Corretgé)
* doc: clarify uv_read_stop() is idempotent (Corbin Simpson)
* unix: OpenBSD's setsockopt needs an unsigned char for multicast
(Zachary Hamm)
* test: Fix two memory leaks (Karl Skomski)
* unix,win: return EINVAL on nullptr args in uv_fs_{read,write} (Karl
Skomski)
* win: set accepted TCP sockets as non-inheritable (Saúl Ibarra
Corretgé)
* unix: remove superfluous parentheses in fs macros (Ben Noordhuis)
* unix: don't copy arguments for sync fs requests (Ben Noordhuis)
* test: plug small memory leak in unix test runner (Ben Noordhuis)
* unix,windows: allow NULL loop for sync fs requests (Ben Noordhuis)
* unix,windows: don't assert on unknown error code (Ben Noordhuis)
* stream: retry write on EPROTOTYPE on OSX (Brian White)
* common: fix use of snprintf on Windows (Saúl Ibarra Corretgé)
* tests: refactored fs watch_dir tests for stability (Jeremy Whitlock)
2015-08-19 22:45:07 +02:00
Saúl Ibarra Corretgé
415a865d63
2015.08.06, Version 1.7.0 (Stable)
...
Changes since version 1.6.1:
* win,stream: add slot to remember CRT fd (Bert Belder)
* win,pipe: properly close when created from CRT fd (Bert Belder)
* win,pipe: don't close fd 0-2 (Bert Belder)
* win,tty: convert fd -> handle safely (Bert Belder)
* win,tty: properly close when created from CRT fd (Bert Belder)
* win,tty: don't close fd 0-2 (Bert Belder)
* win,fs: don't close fd 0-2 (Bert Belder)
* win: include "malloc.h" (Cheng Zhao)
* windows: MSVC 2015 has C99 inline (Jason Williams)
* dragonflybsd: fixes for nonblocking and cloexec (Michael Neumann)
* dragonflybsd: use sendfile(2) for uv_fs_sendfile (Michael Neumann)
* dragonflybsd: fix uv_exepath (Michael Neumann)
* win,fs: Fixes align(8) directive on mingw (Stefano Cristiano)
* unix, win: prevent replacing fd in uv_{udp,tcp,pipe}_t (Saúl Ibarra
Corretgé)
* win: move logic to set socket non-inheritable to uv_tcp_set_socket
(Saúl Ibarra Corretgé)
* unix, win: add ability to create tcp/udp sockets early (Saúl Ibarra
Corretgé)
* test: retry select() on EINTR, honor milliseconds (Ben Noordhuis)
* unix: consolidate tcp and udp bind error (Saúl Ibarra Corretgé)
* test: conditionally skip udp_ipv6_multicast_join6 (heshamsafi)
* core: add UV_VERSION_HEX macro (Saúl Ibarra Corretgé)
* doc: add section with version-checking macros and functions (Saúl
Ibarra Corretgé)
* tty: cleanup handle if uv_tty_init fails (Saúl Ibarra Corretgé)
* darwin: save a fd when FSEvents is used (Saúl Ibarra Corretgé)
* win: fix returning thread id in uv_thread_self (Saúl Ibarra Corretgé)
* common: use offsetof for QUEUE_DATA (Saúl Ibarra Corretgé)
* win: remove UV_HANDLE_CONNECTED (A. Hauptmann)
* docs: add Windows specific note for uv_fs_open (Saúl Ibarra Corretgé)
* doc: add note about uv_fs_scandir (Saúl Ibarra Corretgé)
* test,unix: reduce stack size of watchdog threads (Ben Noordhuis)
* win: add support for recursive file watching (Saúl Ibarra Corretgé)
* win,tty: support consoles with non-default colors (John McNamee)
* doc: add missing variable name (Yosuke Furukawa)
* stream: squelch ECONNRESET error if already closed (Santiago Gimeno)
* build: remove ancient condition from common.gypi (Saúl Ibarra
Corretgé)
* tests: skip some tests when network is unreachable (Luca Bruno)
* build: proper support for android cross compilation (guworks)
* android: add missing include to pthread-fixes.c (RossBencina)
* test: fix compilation warning (Saúl Ibarra Corretgé)
* doc: add a note about uv_dirent_t.type (Saúl Ibarra Corretgé)
* win,test: fix shared library build (Saúl Ibarra Corretgé)
* test: fix compilation warning (Santiago Gimeno)
* build: add experimental Windows installer (Roger A. Light)
* threadpool: send signal only when queue is empty (chenttuuvv)
* aix: fix uv_exepath with relative paths (Richard Lau)
* build: fix version syntax in AppVeyor file (Saúl Ibarra Corretgé)
* unix: allow nbufs > IOV_MAX in uv_fs_{read,write} (ronkorving)
2015-08-05 22:10:09 +02:00
Saúl Ibarra Corretgé
ede94898aa
core: add UV_VERSION_HEX macro
...
PR-URL: https://github.com/libuv/libuv/pull/412
Reviewed-By: Ben Noordhuis <info@bnoordhuis.nl>
2015-06-29 23:08:41 +02:00
Saúl Ibarra Corretgé
f8f59824c4
unix, win: add ability to create tcp/udp sockets early
...
Introduce two new APIs:
int uv_tcp_init_ex(uv_loop_t*, uv_tcp_t* handle, int flags)
int uv_udp_init_ex(uv_loop_t*, uv_udp_t* handle, int flags)
The lower 8 bits of the flags field are used for the socket domain.
AF_INET, AF_INET6 and AF_UNSPEC are supported. If AF_UNSPEC is specified
the socket is created lazily, just like uv_{tcp,udp}_init.
Some Windows notes:
getsockname fails with WSAEINVAL if the socket is not bound. This could
potentially be improved by detecting the socket family and filling
the sockaddr_in/6 struct manually.
bind returns WSAEFAULT if we try to bind a socket to the wrong family.
Unix returns EINVAL.
PR-URL: https://github.com/libuv/libuv/pull/400
Reviewed-By: Ben Noordhuis <info@bnoordhuis.nl>
2015-06-19 09:37:19 +02:00
Bert Belder
b6bf6d2d1f
win,stream: add slot to remember CRT fd
...
Certain types of streams may be opened from a CRT file descriptor (as
opposed to a Windows HANDLE). In order to close the file descriptor
later, libuv must store the file descriptor used to open the stream.
PR-URL: https://github.com/libuv/libuv/pull/396
Reviewed-By: Saúl Ibarra Corretgé <saghul@gmail.com>
2015-06-14 16:22:17 -07:00
Saúl Ibarra Corretgé
30c8be07bb
2015.06.06, Version 1.6.1 (Stable)
...
Changes since version 1.6.0:
* unix: handle invalid _SC_GETPW_R_SIZE_MAX values (cjihrig)
2015-06-05 19:45:58 +02:00
Saúl Ibarra Corretgé
adfccad764
2015.06.04, Version 1.6.0 (Stable)
...
Changes since version 1.5.0:
* aix: fix setsockopt for multicast options (Michael)
* unix: don't block for io if any io handle is primed (Saúl Ibarra
Corretgé)
* windows: MSVC 2015 has snprintf() (Rui Abreu Ferreira)
* windows: Add VS2015 support to vcbuild.bat (Jason Williams)
* doc: fix typo in tcp.rst (Igor Soarez)
* linux: work around epoll bug in kernels < 2.6.37 (Ben Noordhuis)
* unix,win: add uv_os_homedir() (cjihrig)
* stream: fix `select()` race condition (Fedor Indutny)
* unix: prevent infinite loop in uv__run_pending (Saúl Ibarra Corretgé)
* unix: make sure UDP send callbacks are asynchronous (Saúl Ibarra
Corretgé)
* test: fix `platform_output` netmask printing. (Andrew Paprocki)
* aix: add ahafs autoconf detection and README notes (Andrew Paprocki)
* core: add ability to customize memory allocator (Saúl Ibarra Corretgé)
2015-06-03 21:32:57 +02:00
Saúl Ibarra Corretgé
bddd6a8489
core: add ability to customize memory allocator
...
This patch is composed by the work done in
https://github.com/libuv/libuv/pull/231 and
https://github.com/libuv/libuv/pull/287 plus some changes by yours
truly.
Thanks @beevik and @mattsta for their work on this!
PR-URL: https://github.com/libuv/libuv/pull/368
Reviewed-By: Ben Noordhuis <info@bnoordhuis.nl>
2015-06-02 12:05:20 +02:00
cjihrig
a62c2d5928
unix,win: add uv_os_homedir()
...
PR-URL: https://github.com/libuv/libuv/pull/350
Reviewed-By: Ben Noordhuis <info@bnoordhuis.nl>
Reviewed-By: Saúl Ibarra Corretgé <saghul@gmail.com>
2015-05-21 17:31:35 +02:00
Saúl Ibarra Corretgé
4e77f74c7b
2015.05.07, Version 1.5.0 (Stable)
...
Changes since version 1.4.2:
* doc: clarify that the thread pool primites are not thread safe
(Andrius Bentkus)
* aix: always deregister closing fds from epoll (Michael)
* unix: fix glibc-2.20+ macro incompatibility (Massimiliano Torromeo)
* doc: add Sphinx plugin for generating links to man pages (Saúl Ibarra
Corretgé)
* doc: link system and library calls to man pages (Saúl Ibarra Corretgé)
* doc: document uv_getnameinfo_t.{host|service} (Saúl Ibarra Corretgé)
* build: update the location of gyp (Stephen von Takach)
* win: name all anonymous structs and unions (TomCrypto)
* linux: work around epoll bug in kernels 3.10-3.19 (Ben Noordhuis)
* darwin: fix size calculation in select() fallback (Ole André Vadla
Ravnås)
* solaris: fix setsockopt for multicast options (Julien Gilli)
* test: fix race condition in multithreaded test (Ben Noordhuis)
* doc: fix long lines in tty.rst (Ben Noordhuis)
* test: use UV_TTY_MODE_* values in tty test (Ben Noordhuis)
* unix: don't clobber errno in uv_tty_reset_mode() (Ben Noordhuis)
* unix: reject non-tty fds in uv_tty_init() (Ben Noordhuis)
* win: fix pipe blocking writes (Alexis Campailla)
* build: fix cross-compiling for iOS (Steven Kabbes)
* win: remove unnecessary malloc.h
* include: use `extern "c++"` for defining C++ code (Kazuho Oku)
* unix: reap child on execvp() failure (Ryan Phillips)
* windows: fix handle leak on EMFILE (Brian Green)
* test: fix tty_file, close handle if initialized (Saúl Ibarra Corretgé)
* doc: clarify what uv_*_open accepts (Saúl Ibarra Corretgé)
* doc: clarify that we don't maintain external doc resources (Saúl
Ibarra Corretgé)
* build: add documentation for ninja support (Devchandra Meetei
Leishangthem)
* doc: document uv_buf_t members (Corey Farrell)
* linux: fix epoll_pwait() fallback on arm64 (Ben Noordhuis)
* android: fix compilation warning (Saúl Ibarra Corretgé)
* unix: don't close the fds we just setup (Sam Roberts)
* test: spawn child replacing std{out,err} to stderr (Saúl Ibarra
Corretgé)
* unix: fix swapping fds order in uv_spawn (Saúl Ibarra Corretgé)
* unix: fix potential bug if dup2 fails in uv_spawn (Saúl Ibarra
Corretgé)
* test: remove LOG and LOGF variadic macros (Saúl Ibarra Corretgé)
* win: fix uv_fs_access on directories (Saúl Ibarra Corretgé)
* win: fix of double free in uv_uptime (Per Nilsson)
* unix: open "/dev/null" instead of "/" for emfile_fd (Alan Rogers)
* docs: add some missing words (Daryl Haresign)
* unix: clean up uv_fs_open() O_CLOEXEC logic (Ben Noordhuis)
* build: set SONAME for shared library in uv.gyp (Rui Abreu Ferreira)
* windows: define snprintf replacement as inline instead of static (Rui
Abreu Ferreira)
* win: fix unlink of readonly files (João Reis)
* doc: fix uv_run(UV_RUN_DEFAULT) description (Ben Noordhuis)
* linux: intercept syscall when running under memory sanitizer (Keno
Fischer)
* aix: fix uv_interface_addresses return value (farblue68)
* windows: defer reporting TCP write failure until next tick (Saúl
Ibarra Corretgé)
* test: add test for deferred TCP write failure (Saúl Ibarra Corretgé)
2015-05-06 21:48:15 +02:00
Saúl Ibarra Corretgé
1f711e4d6d
Revert "memory: add uv_replace_allocator"
...
This reverts commit c272f1f1bc .
The concept will come back to libuv, but it needs some more work.
2015-04-29 09:37:02 +02:00
Kazuho Oku
252f3624c2
include: use extern "c++" for defining C++ code
...
PR-URL: https://github.com/libuv/libuv/pull/265
Reviewed-By: Ben Noordhuis <info@bnoordhuis.nl>
Reviewed-By: Saúl Ibarra Corretgé <saghul@gmail.com>
2015-03-18 09:40:51 +01:00
Brett Vickers
c272f1f1bc
memory: add uv_replace_allocator
...
With uv_replace_allocator, it's possible to override the default
memory allocator's malloc and free calls with functions of the user's
choosing. This allows libuv to interoperate with projects requiring a
custom memory allocator.
Internally, all calls to malloc and free have been replaced with
uv__malloc and uv__free, respectively. The uv__malloc and uv__free
functions call malloc and free unless they have been overridden by a
previous call to uv_replace_allocator.
As part of this change, the special aligned memory allocations
performed in src/win/fs-event.c have been replaced with standard
allocations. The 4-byte alignment being requested in this file was
unnecessary, since standard allocators already guarantee at least an
8-byte alignment.
PR-URL: https://github.com/libuv/libuv/pull/231
Reviewed-By: Ben Noordhuis <info@bnoordhuis.nl>
Reviewed-By: Saúl Ibarra Corretgé <saghul@gmail.com>
2015-03-05 20:02:16 +01:00
TomCrypto
073323baca
win: name all anonymous structs and unions
...
All the public structs and unions in the private fields in uv-win.h have
been named and all code accessing them updated, to comply to the C89
spec (which were previously causing warnings with the -pedantic flag).
PR-URL: https://github.com/libuv/libuv/pull/239
Reviewed-By: Andrius Bentkus <andrius.bentkus@gmail.com>
Reviewed-By: Ben Noordhuis <info@bnoordhuis.nl>
Reviewed-By: Saúl Ibarra Corretgé <saghul@gmail.com>
2015-03-04 09:35:10 +01:00
Saúl Ibarra Corretgé
8ef34592a9
doc: document uv_getnameinfo_t.{host|service}
...
Fixes: https://github.com/libuv/libuv/issues/182
PR-URL: https://github.com/libuv/libuv/pull/233
Reviewed-By: Tim Caswell <tim@creationix.com>
2015-03-02 16:53:57 +01:00
Saúl Ibarra Corretgé
1a7391348a
2015.02.27, Version 1.4.2 (Stable)
...
Changes since version 1.4.1:
* stream: ignore EINVAL for SO_OOBINLINE on OS X (Fedor Indutny)
2015-02-26 11:20:00 +01:00
Saúl Ibarra Corretgé
e8e3fc5789
2015.02.25, Version 1.4.1 (Stable)
...
Changes since version 1.4.0:
* win: don't use inline keyword in thread.c (Ben Noordhuis)
* windows: fix setting dirent types on uv_fs_scandir_next (Saúl Ibarra
Corretgé)
* unix,windows: make uv_thread_create() return errno (Ben Noordhuis)
* tty: fix build for SmartOS (Julien Gilli)
* unix: fix for uv_async data race (Michael Penick)
* unix, windows: map EHOSTDOWN errno (Ben Noordhuis)
* stream: use SO_OOBINLINE on OS X (Fedor Indutny)
2015-02-24 20:45:46 +01:00
Ben Noordhuis
3f910a0196
unix, windows: map EHOSTDOWN errno
...
Fixes: https://github.com/libuv/libuv/issues/195
PR-URL: https://github.com/libuv/libuv/pull/212
Reviewed-By: Saúl Ibarra Corretgé <saghul@gmail.com>
2015-02-19 15:38:12 +01:00
Saúl Ibarra Corretgé
3ddfb4a9cc
windows: fix setting dirent types on uv_fs_scandir_next
...
Also make the tests more strict.
PR-URL: https://github.com/libuv/libuv/pull/201
Reviewed-By: Tim Caswell <tim@creationix.com>
Reviewed-By: Bert Belder <bertbelder@gmail.com>
2015-02-12 09:05:48 +01:00
Saúl Ibarra Corretgé
19fb8a9064
2015.02.10, Version 1.4.0 (Stable)
...
Changes since version 1.3.0:
* unix: check Android support for pthread_cond_timedwait_monotonic_np
(Leith Bade)
* test: use modified path in test (cjihrig)
* unix: implement uv_stream_set_blocking() (Ben Noordhuis)
2015-02-09 21:06:37 +01:00
Saúl Ibarra Corretgé
165685b2a9
2015.01.29, Version 1.3.0 (Stable)
...
Changes since version 1.2.1:
* unix, windows: set non-block mode in uv_poll_init (Saúl Ibarra
Corretgé)
* doc: clarify which flags are supported in uv_fs_event_start (Saúl
Ibarra Corretgé)
* win,unix: move loop functions which have identical implementations
(Andrius Bentkus)
* doc: explain how the threadpool is allocated (Alex Mo)
* doc: clarify uv_default_loop (Saúl Ibarra Corretgé)
* unix: fix implicit declaration compiler warning (Ben Noordhuis)
* unix: fix long line introduced in commit 94e628fa (Ben Noordhuis)
* unix, win: add synchronous uv_get{addr,name}info (Saúl Ibarra
Corretgé)
* linux: fix epoll_pwait() regression with < 2.6.19 (Ben Noordhuis)
* build: compile -D_GNU_SOURCE on linux (Ben Noordhuis)
* build: use -fvisibility=hidden in autotools build (Ben Noordhuis)
* fs, pipe: no trailing terminator in exact sized buffers (Andrius
Bentkus)
* style: rename buf to buffer and len to size for consistency (Andrius
Bentkus)
* test: fix test-spawn on MinGW32 (Luis Martinez de Bartolome)
* win, pipe: fix assertion when destroying timer (Andrius Bentkus)
* win, unix: add pipe_peername implementation (Andrius Bentkus)
2015-01-28 21:54:27 +01:00
Andrius Bentkus
39a0936fec
win, unix: add pipe_peername implementation
...
PR-URL: https://github.com/libuv/libuv/pull/166
Reviewed-By: Saúl Ibarra Corretgé <saghul@gmail.com>
2015-01-28 21:40:32 +01:00
Andrius Bentkus
2bfa2e5e22
style: rename buf to buffer and len to size for consistency
...
PR-URL: https://github.com/libuv/libuv/pull/159
Reviewed-By: Saúl Ibarra Corretgé <saghul@gmail.com>
2015-01-27 11:31:16 +01:00
Saúl Ibarra Corretgé
f2bb8d394c
unix, win: add synchronous uv_get{addr,name}info
...
PR-URL: https://github.com/libuv/libuv/pull/156
Reviewed-By: Ben Noordhuis <info@bnoordhuis.nl>
Reviewed-By: Bert Belder <bertbelder@gmail.com>
2015-01-23 01:12:05 +01:00
Saúl Ibarra Corretgé
4ca78e9890
2015.01.15, Version 1.2.1 (Stable)
...
Changes since version 1.2.0:
* unix: remove unused dtrace file (Saúl Ibarra Corretgé)
* test: skip TTY select test if /dev/tty can't be opened (Saúl Ibarra
Corretgé)
* doc: clarify the behavior of uv_tty_init (Saúl Ibarra Corretgé)
* doc: clarify how uv_async_send behaves (Saúl Ibarra Corretgé)
* build: make dist now generates a full tarball (Johan Bergström)
* freebsd: make uv_exepath more resilient (Saúl Ibarra Corretgé)
* unix: make setting the tty mode to the same value a no-op (Saúl Ibarra
Corretgé)
* win,tcp: support uv_try_write (Bert Belder)
* test: enable test-tcp-try-write on windows (Bert Belder)
* win,tty: support uv_try_write (Bert Belder)
* unix: set non-block mode in uv_{pipe,tcp,udp}_open (Ben Noordhuis)
2015-01-14 19:52:26 +01:00
Saúl Ibarra Corretgé
09f25b13cd
2015.01.06, Version 1.2.0 (Stable)
...
Changes since version 1.1.0:
* linux: fix epoll_pwait() sigmask size calculation (Ben Noordhuis)
* tty: implement binary I/O terminal mode (Yuri D'Elia)
* test: fix spawn test with autotools build (Ben Noordhuis)
* test: skip ipv6 tests when ipv6 is not supported (Ben Noordhuis)
* common: move STATIC_ASSERT to uv-common.h (Alexey Melnichuk)
* win/thread: store thread handle in a TLS slot (Alexey Melnichuk)
* unix: fix ttl, multicast ttl and loop options on IPv6 (Saúl Ibarra
Corretgé)
* linux: fix support for preadv/pwritev-less kernels (Ben Noordhuis)
* unix: make uv_exepath(size=0) return UV_EINVAL (Ben Noordhuis)
* darwin: fix uv_exepath(smallbuf) UV_EPERM error (Ben Noordhuis)
* openbsd: fix uv_exepath(smallbuf) UV_EINVAL error (Ben Noordhuis)
* linux: fix uv_exepath(size=1) UV_EINVAL error (Ben Noordhuis)
* sunos: preemptively fix uv_exepath(size=1) (Ben Noordhuis)
* win: fix and clarify comments in winapi.h (Bert Belder)
* win: make available NtQueryDirectoryFile (Bert Belder)
* win: add definitions for directory information types (Bert Belder)
* win: use NtQueryDirectoryFile to implement uv_fs_scandir (Bert Belder)
* unix: don't unlink unix socket on bind error (Ben Noordhuis)
* build: fix bad comment in autogen.sh (Ben Noordhuis)
* build: add AC_PROG_LIBTOOL to configure.ac (Ben Noordhuis)
* test: skip udp_options6 if there no IPv6 support (Saúl Ibarra
Corretgé)
* win: add definitions for MUI errors mingw lacks (Bert Belder)
* build: enable warnings in autotools build (Ben Noordhuis)
* build: remove -Wno-dollar-in-identifier-extension (Ben Noordhuis)
* build: move flags from Makefile.am to configure.ac (Ben Noordhuis)
2015-01-05 20:28:35 +01:00
Yuri D'Elia
025602da13
tty: implement binary I/O terminal mode
...
Introduce a uv_tty_mode_t enum for uv_tty_set_mode(), with backward
compatible values. Add a new mode UV_TTY_MODE_IO, which uses
cfmakeraw() internally.
PR-URL: https://github.com/libuv/libuv/pull/86
Reviewed-By: Ben Noordhuis <info@bnoordhuis.nl>
Reviewed-By: Saúl Ibarra Corretgé <saghul@gmail.com>
2014-12-27 18:18:24 +01:00
Saúl Ibarra Corretgé
a6d3d5a0f5
2014.12.25, Version 1.1.0 (Stable)
...
Changes since version 1.0.2:
* test: test that closing a poll handle doesn't corrupt the stack (Bert
Belder)
* win: fix compilation of tests (Marc Schlaich)
* Revert "win: keep a reference to AFD_POLL_INFO in cancel poll" (Bert
Belder)
* win: avoid stack corruption when closing a poll handle (Bert Belder)
* test: fix test-fs-file-loop on Windows (Bert Belder)
* test: fix test-cwd-and-chdir (Bert Belder)
* doc: indicate what version uv_loop_configure was added on (Saúl Ibarra
Corretgé)
* doc: fix sphinx warning (Saúl Ibarra Corretgé)
* test: skip spawn_setuid_setgid if we get EACCES (Saúl Ibarra Corretgé)
* test: silence some Clang warnings (Saúl Ibarra Corretgé)
* test: relax osx_select_many_fds (Saúl Ibarra Corretgé)
* test: fix compilation warnings when building with Clang (Saúl Ibarra
Corretgé)
* win: fix autotools build of tests (Luis Lavena)
* gitignore: ignore Visual Studio files (Marc Schlaich)
* win: set fallback message if FormatMessage fails (Marc Schlaich)
* win: fall back to default language in uv_dlerror (Marc Schlaich)
* test: improve compatibility for dlerror test (Marc Schlaich)
* test: check dlerror is "no error" in no error case (Marc Schlaich)
* unix: change uv_cwd not to return a trailing slash (Saúl Ibarra
Corretgé)
* test: fix cwd_and_chdir test on Unix (Saúl Ibarra Corretgé)
* test: add uv_cwd output to platform_output test (Saúl Ibarra Corretgé)
* build: fix dragonflybsd autotools build (John Marino)
* win: scandir use 'ls' for formatting long strings (Kenneth Perry)
* build: remove clang and gcc_version gyp defines (Ben Noordhuis)
* unix, windows: don't treat uv_run_mode as a bitmask (Saúl Ibarra
Corretgé)
* unix, windows: fix UV_RUN_ONCE mode if progress was made (Saúl Ibarra
Corretgé)
2014-12-24 09:03:51 +01:00
Bert Belder
9f3fa71cfa
Merge branch 'v0.10' into v1.x
...
Conflicts:
src/win/poll.c
test/test-poll-close-doesnt-corrupt-stack.c
2014-12-10 16:58:01 +01:00
Bert Belder
152c35d54d
Revert "win: keep a reference to AFD_POLL_INFO in cancel poll"
...
The offending patch doesn't completely fix the issue, it just trades
stack corruption for heap corruption which is less likely.
In addition there is a much simpler solution for this problem.
This reverts commit cd894521dd .
PR-URL: https://github.com/libuv/libuv/pull/49
Reviewed-By: Ben Noordhuis <info@bnoordhuis.nl>
Reviewed-By: Marc Schlaich <marc.schlaich@gmail.com>
Reviewed-By: Saúl Ibarra Corretgé <saghul@gmail.com>
2014-12-10 16:44:28 +01:00