Jameson Nash
964f79f7c8
barrier: wait for prior out before next in ( #3905 )
...
This code would previously get confused between rounds of the barrier
being called and a thread might incorrectly get stuck (deadlock) if the
next round started before that thread had exited the current round.
Avoid that by not starting the next round in++ before out-- has reached
zero indicating that all threads have left the prior round.
And fix it that on Windows by replacing the implementation with the one
from unix. There are some awkward platform-specific redirection here
with an extra malloc that is not needed on Win32, but that will be fixed
in libuv v2.
Fixes: https://github.com/libuv/libuv/issue/3872
2023-03-06 17:57:25 -05:00
Santiago Gimeno
75d9411e80
win: move child_stdio_buffer out of uv_process_t ( #3850 )
2022-12-09 13:27:52 +01:00
Stefan Stojanovic
c17bd99f1c
win: fix fstat for pipes and character files ( #3811 )
...
Calling uv_fs_fstat for file types other then disk type was resulting in
error on Windows while it was retrieving data on Linux. This change
enables getting fstat for pipes and character files on Windows with data
fetched being as reasonable as possible.
A simple test is also added to check this behavior on all platforms. It
uses stdin, stdout and stderr. uv_fs_fstat needs to pass with disk files
pipes and character files (eg. console).
Refs: https://github.com/nodejs/node/issues/40006
Co-authored-by: Jameson Nash <vtjnash@gmail.com>
2022-11-29 17:46:09 -05:00
Ben Noordhuis
5102b2c093
unix: drop kfreebsd support ( #3835 )
...
Because kFreeBSD is dead. RIP.
Fixes: https://github.com/libuv/libuv/issues/3833
2022-11-28 22:45:28 +01:00
Santiago Gimeno
3706c4f855
win,pipe: fixes in uv_pipe_connect()
...
Make unices and windows consistent when closing a pipe while it's
connecting so they all return `UV_ECANCELED`.
Avoid race condition between `pipe_connect_thread_proc()` and `uv_close()` when
accessing `handle->name`.
Fixes: https://github.com/libuv/libuv/issues/3578
2022-11-11 10:44:34 +01:00
Saúl Ibarra Corretgé
2b4b293ebb
win,tcp,udp: remove "active streams" optimization
...
It has been disabled for 11 years, I guess it should remain that way.
2022-11-04 22:11:21 +01:00
Ben Noordhuis
c83b9bd9c6
include: map ENODATA error code ( #3802 )
...
Fixes: https://github.com/libuv/libuv/issues/3795
2022-10-25 13:00:45 +02:00
Ben Noordhuis
495ffca2c2
win: remove stdint-msvc2008.h ( #3673 )
...
Support for VS 2008 was removed two years ago in commit a779fccfd so
this file can safely be deleted.
2022-07-15 10:39:14 +02:00
Jameson Nash
e81cc74ca2
Now working on version 1.44.3
...
Fixes: https://github.com/libuv/libuv/issues/3586
2022-07-12 12:22:04 -04:00
Jameson Nash
0c1fa696aa
2022.07.12, Version 1.44.2 (Stable)
...
Changes since version 1.44.1:
* Add SHA to ChangeLog (Jameson Nash)
* aix, ibmi: handle server hang when remote sends TCP RST (V-for-Vasili)
* build: make CI a bit noisier (Jameson Nash)
* process: reset the signal mask if the fork fails (Jameson Nash)
* zos: implement cmpxchgi() using assembly (Shuowang (Wayne) Zhang)
* build: AC_SUBST for AM_CFLAGS (Claes Nästén)
* ibmi: Implement UDP disconnect (V-for-Vasili)
* doc: update active maintainers list (Ben Noordhuis)
* build: fix kFreeBSD build (James McCoy)
* build: remove Windows 2016 workflows (Darshan Sen)
* Revert "win,errors: remap ERROR_ACCESS_DENIED to UV_EACCES" (Darshan
Sen)
* unix: simplify getpwuid call (Jameson Nash)
* build: filter CI by paths and branches (Jameson Nash)
* build: add iOS to macos CI (Jameson Nash)
* build: re-enable CI for windows changes (Jameson Nash)
* process,iOS: fix build breakage in process.c (Denny C. Dai)
* test: remove unused declarations in tcp_rst test (V-for-Vasili)
* core: add thread-safe strtok implementation (Guilherme Íscaro)
* win: fix incompatible-types warning (twosee)
* test: fix flaky file watcher test (Ben Noordhuis)
* build: fix AIX xlc autotools build (V-for-Vasili)
* unix,win: fix UV_RUN_ONCE + uv_idle_stop loop hang (Ben Noordhuis)
* win: fix unexpected ECONNRESET error on TCP socket (twosee)
* doc: make sample cross-platform build (gengjiawen)
* test: separate some static variables by test cases (Hannah Shi)
* sunos: fs-event callback can be called after uv_close() (Andy
Fiddaman)
* uv: re-register interest in a file after change (Shuowang (Wayne)
Zhang)
* uv: register UV_RENAME event for _RFIM_UNLINK (Shuowang (Wayne) Zhang)
* uv: register __rfim_event 156 as UV_RENAME (Shuowang (Wayne) Zhang)
* doc: remove smartos from supported platforms (Ben Noordhuis)
* macos: avoid posix_spawnp() cwd bug (Jameson Nash)
* release: check versions of autogen scripts are newer (Jameson Nash)
* test: rewrite embed test (Ben Noordhuis)
* openbsd: use utimensat instead of lutimes (tuftedocelot)
* doc: fix link to uvwget example main() function (blogdaren)
* unix: use MSG_CMSG_CLOEXEC where supported (Ben Noordhuis)
* test: remove disabled callback_order test (Ben Noordhuis)
* win,pipe: fix bugs with pipe resource lifetime management (Jameson
Nash)
* loop: better align order-of-events behavior between platforms (Jameson
Nash)
* aix,test: uv_backend_fd is not supported by poll (V-for-Vasili)
* kqueue: skip EVFILT_PROC when invalidating fds (chucksilvers)
* darwin: fix atomic-ops.h ppc64 build (Sergey Fedorov)
* zos: don't err when killing a zombie process (Shuowang (Wayne) Zhang)
* zos: avoid fs event callbacks after uv_close() (Shuowang (Wayne)
Zhang)
* zos: correctly format interface addresses names (Shuowang (Wayne)
Zhang)
* zos: add uv_interface_addresses() netmask support (Shuowang (Wayne)
Zhang)
* zos: improve memory management of ip addresses (Shuowang (Wayne)
Zhang)
* tcp,pipe: fail `bind` or `listen` after `close` (theanarkh)
* zos: implement uv_available_parallelism() (Shuowang (Wayne) Zhang)
* udp,win: fix UDP compiler warning (Jameson Nash)
* zos: fix early exit of epoll_wait() (Shuowang (Wayne) Zhang)
* unix,tcp: fix errno handling in uv__tcp_bind() (Samuel Cabrero)
* shutdown,unix: reduce code duplication (Jameson Nash)
* unix: fix c99 comments (Ben Noordhuis)
* unix: retry tcgetattr/tcsetattr() on EINTR (Ben Noordhuis)
* docs: update introduction.rst (Ikko Ashimine)
* unix,stream: optimize uv_shutdown() codepath (Jameson Nash)
* zos: delay signal handling until after normal i/o (Shuowang (Wayne)
Zhang)
* stream: uv__drain() always needs to stop POLLOUT (Jameson Nash)
* unix,tcp: allow EINVAL errno from setsockopt in uv_tcp_close_reset()
(Stacey Marshall)
* win,shutdown: improve how shutdown is dispatched (Jameson Nash)
2022-07-12 12:16:33 -04:00
Jameson Nash
ec67735412
win,pipe: fix bugs with pipe resource lifetime management ( #3611 )
...
If `uv_close` was called while a connect was pending, we would fail to
release the resources for the connection, since we had not yet set the
type of the struct.
Fix a thread data-race on slow connect path code: only permitted to
write to `req` on threads, as anything else causes data race
corruption.
There seemed be a small variety of other resource management bugs in
edge cases, which turned out to make this a lot larger than initially
expected.
Refs: https://github.com/libuv/libuv/pull/3598#issuecomment-1111513567
2022-05-13 12:40:02 +02:00
Jameson Nash
df63ee1a1d
Now working on version 1.44.2
...
Fixes: https://github.com/libuv/libuv/issues/3522
2022-03-09 12:58:37 -05:00
Jameson Nash
e8b7eb6908
2022.03.09, Version 1.44.1 (Stable)
...
Changes since version 1.44.0:
* process: simplify uv__write_int calls (Jameson Nash)
* macos: don't use thread-unsafe strtok() (Ben Noordhuis)
* process: fix hang after NOTE_EXIT (Jameson Nash)
2022-03-09 12:54:54 -05:00
Jameson Nash
761de533b2
Now working on version 1.44.1
...
Fixes: https://github.com/libuv/libuv/issues/3452
2022-03-07 12:18:03 -05:00
Jameson Nash
d2bff50845
2022.03.07, Version 1.44.0 (Stable)
...
Changes since version 1.43.0:
* darwin: remove EPROTOTYPE error workaround (Ben Noordhuis)
* doc: fix v1.43.0 changelog entries (cjihrig)
* win: replace CRITICAL_SECTION+Semaphore with SRWLock (David Machaj)
* darwin: translate EPROTOTYPE to ECONNRESET (Ben Noordhuis)
* android: use libc getifaddrs() (Ben Noordhuis)
* unix: fix STATIC_ASSERT to check what it means to check (Jessica
Clarke)
* unix: ensure struct msghdr is zeroed in recvmmsg (Ondřej Surý)
* test: test with maximum recvmmsg buffer (Ondřej Surý)
* unix: don't allow too small thread stack size (Ben Noordhuis)
* bsd: ensure mutex is initialized (Ben Noordhuis)
* doc: add gengjiawen as maintainer (gengjiawen)
* process: monitor for exit with kqueue on BSDs (Jeremy Rose)
* test: fix flaky uv_fs_lutime test (Momtchil Momtchev)
* build: fix cmake install locations (Jameson Nash)
* thread,win: fix C90 style nit (ssrlive)
* build: rename CFLAGS to AM_CFLAGS (Jameson Nash)
* doc/guide: update content and sample code (woclass)
* process,bsd: handle kevent NOTE_EXIT failure (Jameson Nash)
* test: remove flaky test ipc_closed_handle (Ben Noordhuis)
* darwin: bump minimum supported version to 10.15 (Ben Noordhuis)
* win: return fractional seconds in uv_uptime() (Luca Adrian L)
* build: export uv_a for cmake (WenTao Ou)
* loop: add pending work to loop-alive check (Jameson Nash)
* win: use GetTickCount64 for uptime again (Jameson Nash)
* win: restrict system DLL load paths (jonilaitinen)
* win,errors: remap ERROR_ACCESS_DENIED to UV_EACCES (Darshan Sen)
* bench: add `uv_queue_work` ping-pong measurement (Momtchil Momtchev)
* build: fix error C4146 on MSVC (UMU)
* test: fix benchmark-ping-udp (Ryan Liptak)
* win,fs: consider broken pipe error a normal EOF (Momtchil Momtchev)
* document the values of enum uv_stdio_flags (Paul Evans)
* win,loop: add missing uv_update_time (twosee)
* win,fs: avoid closing an invalid handle (Jameson Nash)
* fix oopsie from
* doc: clarify android api level (Ben Noordhuis)
* win: fix style nits [NFC] (Jameson Nash)
* test: fix flaky udp_mmsg test (Santiago Gimeno)
* test: fix ipc_send_recv_pipe flakiness (Ben Noordhuis)
* doc: checkout -> check out (wyckster)
* core: change uv_get_password uid/gid to unsigned (Jameson Nash)
* hurd: unbreak build on GNU/Hurd (Vittore F. Scolari)
* freebsd: use copy_file_range() in uv_fs_sendfile() (David Carlier)
* test: use closefd in runner-unix.c (Guilherme Íscaro)
* Reland "macos: use posix_spawn instead of fork" (Jameson Nash)
* android: fix build error when no ifaddrs.h (ssrlive)
* unix,win: add uv_available_parallelism() (Ben Noordhuis)
* process: remove OpenBSD from kevent list (Jameson Nash)
* zos: fix build breakage (Ben Noordhuis)
* process: only use F_DUPFD_CLOEXEC if it is defined (Jameson Nash)
* win,poll: add the MSAFD GUID for AF_UNIX (roflcopter4)
* unix: simplify uv__cloexec_fcntl() (Ben Noordhuis)
* doc: add secondary GPG ID for vtjnash (Jameson Nash)
* unix: remove uv__cloexec_ioctl() (Jameson Nash)
2022-03-07 11:39:08 -05:00
roflcopter4
8e67d8b364
win,poll: add the MSAFD GUID for AF_UNIX ( #3511 )
...
Enables the "fast poll" mechanism for the new(ish) Unix sockets in
Windows 10.
2022-03-05 12:54:41 -05:00
Ben Noordhuis
c8cbdbd2c4
android: use libc getifaddrs() ( #3412 )
...
Fixes: https://github.com/libuv/libuv/issues/3411
2022-01-13 05:55:25 +01:00
David Machaj
a3e02e5e4a
win: replace CRITICAL_SECTION+Semaphore with SRWLock ( #3383 )
...
Fixes: https://github.com/libuv/libuv/issues/3382
2022-01-12 16:07:17 +01:00
cjihrig
bb6248bca4
Now working on version 1.43.1
...
Fixes: https://github.com/libuv/libuv/issues/3397
2022-01-04 09:27:20 -05:00
cjihrig
988f2bfc4d
2022.01.05, Version 1.43.0 (Stable)
...
Changes since version 1.42.0:
* run test named ip6_sin6_len (Jameson Nash)
* docs: fix wrong information about scheduling (Mohamed Edrah)
* unix: protect fork in uv_spawn from signals (Jameson Nash)
* drop only successfully sent packets post sendmmsg (Supragya Raj)
* test: fix typo in test-tty-escape-sequence-processing.c (Ikko
Ashimine)
* cmake: use standard installation layout always (Sylvain Corlay)
* win,spawn: allow UNC path with forward slash (earnal)
* win,fsevent: fix uv_fs_event_stop() assert (Ben Noordhuis)
* unix: remove redundant include in unix.h (
* doc: mark SmartOS as Tier 3 support (
* doc: fix broken links for netbsd's sysctl manpage (
* misc: adjust stalebot deadline (
* test: remove `dns-server.c` as it is not used anywhere (
* build: fix non-cmake android builds (
* doc: replace pyuv with uvloop (
* asan: fix some tests (
* build: add experimental TSAN configuration (
* pipe: remove useless assertion (
* bsd: destroy mutex in uv__process_title_cleanup() (
* build: add windows build to CI (
* win,fs: fix error code in uv_fs_read() and uv_fs_write() ( Sen)
* build: add macos-latest to ci matrix (
* udp: fix &/&& typo in macro condition (
* build: install cmake package module (Petr Menšík)
* win: fix build for mingw32 (
* build: fix build failures with MinGW new headers (erw7)
* build: fix win build with cmake versions before v3.14 (
* unix: support aarch64 in uv_cpu_info() (
* linux: work around CIFS EPERM bug (
* sunos: Oracle Developer Studio support (
* Revert "sunos: Oracle Developer Studio support (
* sunos: Oracle Developer Studio support (
* stream: permit read after seeing EOF (
* thread: initialize uv_thread_self for all threads (
* kqueue: ignore write-end closed notifications (
* macos: fix the cfdata length in uv__get_cpu_speed ( Bache)
* unix,win: add uv_ip_name to get name from sockaddr (
* win,test: fix a few typos (AJ Heller)
* zos: use destructor for uv__threadpool_cleanup() ( Zhang)
* linux: use MemAvailable instead of MemFree (
* freebsd: call dlerror() only if necessary (
* bsd,windows,zos: fix udp disconnect EINVAL (
2022-01-04 09:18:00 -05:00
erw7
3e90bc76b0
build: fix build failures with MinGW new headers
...
A structure definition was added to mstcpip.h in
mingw-w64-x86_64-headers-git 9.0.0.6327.f29c1101f,
which causes a conflict and the build fails. Fix this by
changing the name in the definition in mstcpip.h.
PR-URL: https://github.com/libuv/libuv/pull/3345
2021-11-02 11:28:42 -04:00
Juan José
f6dfbcec76
unix: remove redundant include in unix.h ( #3319 )
2021-10-05 13:01:25 +02:00
Jameson Nash
574c49f07f
Now working on version 1.42.1
...
Fixes: https://github.com/libuv/libuv/issues/3202
2021-07-20 00:48:41 -04:00
Jameson Nash
6ce14710da
2021.07.21, Version 1.42.0 (Stable)
...
Changes since version 1.41.0:
* doc: fix code highlighting (Darshan Sen)
* test: move to ASSERT_NULL and ASSERT_NOT_NULL test macros (tjarlama)
* zos: build in ascii code page (Shuowang (Wayne) Zhang)
* zos: don't use nanosecond timestamp fields (Shuowang (Wayne) Zhang)
* zos: introduce zoslib (Shuowang (Wayne) Zhang)
* zos: use strnlen() from zoslib (Shuowang (Wayne) Zhang)
* zos: use nanosleep() from zoslib (Shuowang (Wayne) Zhang)
* zos: use __getargv() from zoslib to get exe path (Shuowang (Wayne)
Zhang)
* zos: treat __rfim_utok as binary (Shuowang (Wayne) Zhang)
* zos: use execvpe() to set environ explictly (Shuowang (Wayne) Zhang)
* zos: use custom proctitle implementation (Shuowang (Wayne) Zhang)
* doc: add instructions for building on z/OS (Shuowang (Wayne) Zhang)
* linux,udp: enable full ICMP error reporting (Ondřej Surý)
* test: fix test-udp-send-unreachable (Ondřej Surý)
* include: fix typo in documentation (Tobias Nießen)
* chore: use for(;;) instead of while (Yash Ladha)
* test: remove string + int warning on udp-pummel (Juan José Arboleda)
* cmake: fix linker flags (Zhao Zhili)
* test: fix stack-use-after-scope (Zhao Zhili)
* unix: expose thread_stack_size() internally (Brandon Cheng)
* darwin: use RLIMIT_STACK for fsevents pthread (Brandon Cheng)
* darwin: abort on pthread_attr_init fail (Brandon Cheng)
* benchmark: remove unreachable code (Matvii Hodovaniuk)
* macos: fix memleaks in uv__get_cpu_speed (George Zhao)
* Make Thread Sanitizer aware of file descriptor close in uv__close()
(Ondřej Surý)
* darwin: fix iOS compilation and functionality (Hayden)
* linux: work around copy_file_range() cephfs bug (Ben Noordhuis)
* zos: implement uv_get_constrained_memory() (Shuowang (Wayne) Zhang)
* zos: fix uv_get_free_memory() (Shuowang (Wayne) Zhang)
* zos: use CVTRLSTG to get total memory accurately (Shuowang (Wayne)
Zhang)
* ibmi: Handle interface names longer than 10 chars (Kevin Adler)
* docs: update read-the-docs version of sphinx (Jameson Nash)
* unix: refactor uv_try_write (twosee)
* linux-core: add proper divide by zero assert (yiyuaner)
* misc: remove unnecessary _GNU_SOURCE macros (Darshan Sen)
* test: log to stdout to conform TAP spec (bbara)
* win,fs: fix C4090 warning with MSVC (SeverinLeonhardt)
* build: some systems provide dlopen() in libc (Andy Fiddaman)
* include: add EOVERFLOW status code mapping (Darshan Sen)
* unix,fs: use uv__load_relaxed and uv__store_relaxed (Darshan Sen)
* win: fix string encoding issue of uv_os_gethostname (Eagle Liang)
* unix,process: add uv__write_errno helper function (Ricky Zhou)
* Re-merge "unix,stream: clear read/write states on close/eof" (Jameson
Nash)
* unix,core: fix errno handling in uv__getpwuid_r (Darshan Sen)
* errors: map ESOCKTNOSUPPORT errno (Ryan Liptak)
* doc: uv_read_stop always succeeds (Simon Kissane)
* inet: fix inconsistent return value of inet_ntop6 (twosee)
* darwin: fix -Wsometimes-uninitialized warning (twosee)
* stream: introduce uv_try_write2 function (twosee)
* poll,win: UV_PRIORITIZED option should not assert (twosee)
* src: DragonFlyBSD has mmsghdr struct too (David Carlier)
* cleanup,win: Remove _WIN32 guards on threadpool (James M Snell)
* freebsd: fix an incompatible pointer type warning (Darshan Sen)
* core: Correct the conditionals for {cloexec,nonblock}_ioctl (Ali
Mohammad Pur)
* win,tcp: make uv_close work more like unix (Jameson Nash)
* doc: more accurate list of valid send_handle's (twosee)
* win,tcp: translate system errors correctly (twosee)
* unix: implement cpu_relax() on ppc64 (Ben Noordhuis)
* docs: move list of project links under PR control (Jameson Nash)
* test: wrong pointer arithmetic multiplier (Erkhes N)
* doc: switch discussion forum to github (Jameson Nash)
* idna: fix OOB read in punycode decoder (Ben Noordhuis)
* build: make sure -fvisibility=hidden is set (Santiago Gimeno)
* illumos: event ports to epoll (tjarlama)
* illumos,tty: UV_TTY_MODE_IO waits for 4 bytes (Joshua M. Clulow)
* doc: add vtjnash GPG ID (Jameson Nash)
* linux: read CPU model information on ppc (Richard Lau)
* darwin: fix uv_barrier race condition (Guilherme Íscaro)
* unix,stream: fix loop hang after uv_shutdown (Jameson Nash)
* doc,udp: note that suggested_size is 1 max-sized dgram (Ryan Liptak)
* mingw: fix building for ARM/AArch64 (Martin Storsjö)
* unix: strnlen is not available on Solaris 10 (Claes Nästén)
* sunos: restore use of event ports (Andy Fiddaman)
* sunos,cmake: use thread-safe errno (Andy Fiddaman)
2021-07-19 22:44:04 -04:00
Ryan Liptak
46451737e6
errors: map ESOCKTNOSUPPORT errno
...
PR-URL: https://github.com/libuv/libuv/pull/3151
Reviewed-By: Jameson Nash <vtjnash@gmail.com>
Reviewed-By: Colin Ihrig <cjihrig@gmail.com>
2021-05-21 16:34:31 -04:00
Darshan Sen
9739400d41
include: add EOVERFLOW status code mapping
...
Refs: https://github.com/nodejs/node/pull/38159#discussion_r610288214
PR-URL: https://github.com/libuv/libuv/pull/3145
Reviewed-By: Richard Lau <riclau@uk.ibm.com>
Reviewed-By: Colin Ihrig <cjihrig@gmail.com>
Reviewed-By: Jameson Nash <vtjnash@gmail.com>
2021-05-13 11:01:14 -04:00
Yash Ladha
97709e185f
chore: use for(;;) instead of while
...
In the codebase we have used empty for loop for infinite conditions, so
to bring consistency replaced other occurrences of while in the codebase
with for loop.
PR-URL: https://github.com/libuv/libuv/pull/3128
Reviewed-By: Ben Noordhuis <info@bnoordhuis.nl>
Reviewed-By: Colin Ihrig <cjihrig@gmail.com>
Reviewed-By: Santiago Gimeno <santiago.gimeno@gmail.com>
2021-04-04 17:15:35 +02:00
cjihrig
4b0d8b2c93
Now working on version 1.41.1
...
Fixes: https://github.com/libuv/libuv/issues/3086
2021-02-13 12:59:03 -05:00
cjihrig
1dff88e516
2021.02.14, Version 1.41.0 (Stable)
...
Changes since version 1.40.0:
* mailmap: update contact information for richardlau (Richard Lau)
* build: add asan checks (gengjiawen)
* unix: report bind error in uv_tcp_connect() (Ben Noordhuis)
* doc: uv_tcp_bind() never returns UV_EADDRINUSE (Ben Noordhuis)
* test: fix pump and tcp_write_batch benchmarks (Santiago Gimeno)
* doc: mark IBM i as Tier 2 support (Jesse Gorzinski)
* doc,poll: add notes (repeated cb & cancel pending cb) (Elad Nachmias)
* linux: fix -Wincompatible-pointer-types warning (Ben Noordhuis)
* linux: fix -Wsign-compare warning (Ben Noordhuis)
* android: add system call api guards (Ben Noordhuis)
* unix,win: harmonize uv_read_start() error handling (Ben Noordhuis)
* unix,win: more uv_read_start() argument validation (Ben Noordhuis)
* build: turn on -fno-strict-aliasing (Ben Noordhuis)
* stream: add uv_pipe and uv_socketpair to the API (Jameson Nash)
* unix,win: initialize timer `timeout` field (Ben Noordhuis)
* bsd-ifaddrs: improve comments (Darshan Sen)
* test: remove unnecessary uv_fs_stat() calls (Ben Noordhuis)
* fs: fix utime/futime timestamp rounding errors (Ben Noordhuis)
* test: ensure reliable floating point comparison (Jameson Nash)
* unix,fs: fix uv_fs_sendfile() (Santiago Gimeno)
* unix: fix uv_fs_stat when using statx (Simon Kadisch)
* linux,macos: fix uv_set_process_title regression (Momtchil Momtchev)
* doc: clarify UDP errors and recvmmsg (Ethel Weston)
* test-getaddrinfo: use example.invalid (Drew DeVault)
* Revert "build: fix android autotools build" (Bernardo Ramos)
* unix,fs: on DVS fs, statx returns EOPNOTSUPP (Mark Klein)
* win, fs: mkdir really return UV_EINVAL for invalid names (Nicholas
Vavilov)
* tools: migrate tools/make_dist_html.py to python3 (Dominique Dumont)
* unix: fix uv_uptime() on linux (schamberg97)
* unix: check for partial copy_file_range support (Momtchil Momtchev)
* win: bump minimum supported version to windows 8 (Ben Noordhuis)
* poll,unix: ensure safety of rapid fd reuse (Bob Weinand)
* test: fix some warnings (Issam E. Maghni)
* unix: fix uv_uptime() regression (Santiago Gimeno)
* doc: fix versionadded metadata (cjihrig)
* test: fix 'incompatible pointer types' warnings (cjihrig)
* unix: check for EXDEV in uv__fs_sendfile() (Darshan Sen)
2021-02-13 12:57:24 -05:00
cjihrig
b2a45df044
Now working on version 1.40.1
...
Fixes: https://github.com/libuv/libuv/issues/3000
2020-09-24 20:37:01 -04:00
cjihrig
4e69e33325
2020.09.26, Version 1.40.0 (Stable)
...
Changes since version 1.39.0:
* udp: add UV_UDP_MMSG_FREE recv_cb flag (Ryan Liptak)
* include: re-map UV__EPROTO from 4046 to -4046 (YuMeiJie)
* doc: correct UV_UDP_MMSG_FREE version added (cjihrig)
* doc: add uv_metrics_idle_time() version metadata (Ryan Liptak)
* win,tty: pass through utf-16 surrogate pairs (Mustafa M)
* unix: fix DragonFly BSD build (Aleksej Lebedev)
* win,udp: fix error code returned by connect() (Santiago Gimeno)
* src: suppress user_timeout maybe-uninitialized (Daniel Bevenius)
* test: fix compiler warning (Vladimír Čunát)
* build: fix the Haiku cmake build (David Carlier)
* linux: fix i386 sendmmsg/recvmmsg support (Ben Noordhuis)
* build: add libuv-static pkg-config file (Nikolay Mitev)
* unix,win: add uv_timer_get_due_in() (Ulrik Strid)
* build,unix: add QNX support (Elad Lahav)
* include: remove incorrect UV__ERR() for EPROTO (cjihrig)
2020-09-24 20:34:43 -04:00
cjihrig
59d875994d
include: remove incorrect UV__ERR() for EPROTO
...
https://github.com/libuv/libuv/pull/2979 negated the value of
UV__EPROTO on platforms that don't define EPROTO, but it didn't
remove the surrounding UV__ERR() call. This was causing numerous
test failures in Node.js.
Refs: https://github.com/libuv/libuv/issues/3000
PR-URL: https://github.com/libuv/libuv/pull/3003
Reviewed-By: Richard Lau <riclau@uk.ibm.com>
Reviewed-By: Ben Noordhuis <info@bnoordhuis.nl>
2020-09-24 07:05:19 -04:00
Elad Lahav
ed5b42d5b7
build,unix: add QNX support
...
Refs: https://github.com/libuv/libuv/pull/2881
PR-URL: https://github.com/libuv/libuv/pull/2991
Reviewed-By: Ben Noordhuis <info@bnoordhuis.nl>
Reviewed-By: Colin Ihrig <cjihrig@gmail.com>
2020-09-22 23:14:46 -04:00
YuMeiJie
a8bb3b3b2c
include: re-map UV__EPROTO from 4046 to -4046
...
Refs: https://github.com/libuv/libuv/pull/1687
Fixes: https://github.com/libuv/libuv/issues/2977
PR-URL: https://github.com/libuv/libuv/pull/2979
Reviewed-By: Richard Lau <riclau@uk.ibm.com>
Reviewed-By: Colin Ihrig <cjihrig@gmail.com>
Reviewed-By: Santiago Gimeno <santiago.gimeno@gmail.com>
2020-09-02 21:02:43 -04:00
cjihrig
fa8b4f27c0
Now working on version 1.39.1
...
Fixes: https://github.com/libuv/libuv/issues/2943
2020-08-24 20:27:18 -04:00
cjihrig
25f4b8b8a3
2020.08.26, Version 1.39.0 (Stable)
...
Changes since version 1.38.1:
* unix: use relaxed loads/stores for clock id (Ben Noordhuis)
* build,win: link to user32.lib and advapi32.lib (George Zhao)
* unix: squelch harmless valgrind warning (ssrlive)
* include: fx c++ style comments warnings (Turbinya)
* build,cmake: Change installation location on MinGW (erw7)
* linux: use copy_file_range for uv_fs_copyfile when possible (Carter
Li)
* win,tcp: avoid reinserting a pending request (
* docs: improve the descriptions for get memory info (Juan Sebastian
velez Posada)
* test: add udp-mmsg test (Ryan Liptak)
* udp: add uv_udp_using_recvmmsg query (Ryan Liptak)
* doc: add more error constants (TK-one)
* zos: fix potential event loop stall (Trevor Norris)
* include: add internal fields struct to uv_loop_t (Trevor Norris)
* core: add API to measure event loop idle time (Trevor Norris)
* win,fs: use CreateDirectoryW instead of _wmkdir (Mustafa M)
* win,nfc: fix integer comparison signedness (escherstair)
* win,nfc: use
* win,nfc: removed some unused variables (escherstair)
* win,nfc: add missing return statement (escherstair)
* win,nfc: disable clang-format for
* darwin: use IOKit for uv_cpu_info (Evan Lucas)
* test: fix thread race in process_title_threadsafe (Ben Noordhuis)
* win,fs: avoid implicit access to _doserrno (Jameson Nash)
* test: give hrtime test a custom 20s timeout (Jameson Nash)
* build: add more failed test, for qemu version bump (gengjiawen)
* unix: handle src, dest same in uv_fs_copyfile() (cjihrig)
* unix: error when uv_setup_args() is not called (Ryan Liptak)
* aix: protect uv_exepath() from uv_set_process_title() (Richard Lau)
* fs: clobber req->path on uv_fs_mkstemp() error (tjarlama)
* cmake: fix compile error C2001 on Chinese Windows (司徒玟琅)
* test: avoid double evaluation in ASSERT_BASE macro (tjarlama)
* tcp: fail instantly if local port is unbound (Bartosz Sosnowski)
* doc: fix most sphinx warnings (Jameson Nash)
* nfci: address some style nits (Jameson Nash)
* unix: don't use _POSIX_PATH_MAX (Ben Noordhuis)
2020-08-24 20:25:03 -04:00
cjihrig
032f2b1251
Now working on version 1.38.2
...
Fixes: https://github.com/libuv/libuv/issues/2898
2020-07-03 12:53:03 -04:00
cjihrig
e8b989ea1f
2020.07.04, Version 1.38.1 (Stable)
...
Changes since version 1.38.0:
* test: use last matching qemu version (cjihrig)
* win, util: rearrange uv_hrtime (Bartosz Sosnowski)
* test: skip signal_multiple_loops test on QEMU (gengjiawen)
* build: add android build to CI (gengjiawen)
* test: extend fs_event_error_reporting timeout (cjihrig)
* build: link libkvm on netbsd only (Alexander Tokmakov)
* linux: refactor /proc file reader logic (Ben Noordhuis)
* linux: read load average from /proc/loadavg (Ben Noordhuis)
* android: remove patch code for below 21 (gengjiawen)
* win: fix visual studio 2008 build (Arenoros)
* win,tty: fix deadlock caused by inconsistent state (lander0s)
* unix: use relaxed loads/stores for feature checks (Ben Noordhuis)
* build: don't .gitignore m4/ax_pthread.m4 (Ben Noordhuis)
* unix: fix gcc atomics feature check (Ben Noordhuis)
* darwin: work around clock jumping back in time (Ben Noordhuis)
* udp: fix write_queue cleanup on sendmmsg error (Santiago Gimeno)
* src: build fix for Android (David Carlier)
2020-07-03 12:51:27 -04:00
cjihrig
cc51217a31
Now working on version 1.38.1
...
Fixes: https://github.com/libuv/libuv/issues/2844
2020-05-17 11:36:52 -04:00
cjihrig
1ab9ea3790
2020.05.18, Version 1.38.0 (Stable)
...
Changes since version 1.37.0:
* test: skip poll_duplex and poll_unidirectional on PASE (Xu Meng)
* linux: make cpu_times consistently be milliseconds (James Ross)
* win: DRY uv_poll_start() and uv_poll_stop() (Ben Noordhuis)
* win: DRY uv_poll_close() (Ben Noordhuis)
* unix,win: add uv_library_shutdown() (Ben Noordhuis)
* unix: yield cpu when spinlocking on async handle (Ben Noordhuis)
* win: remove dep on GetQueuedCompletionStatusEx (Colin Finck)
* doc: correct source lines (Shohei YOSHIDA)
* build,android: fix typo (twosee)
* doc: uv_cancel() handles uv_random_t requests (Philip Chimento)
* doc: fix unescaped character (Philip Chimento)
* build,cmake: fix compilation on old MinGW (erw7)
* build: remove unnessesary MSVC warnings (Bartosz Sosnowski)
* win: make uv_udp_init_ex() accept UV_UDP_RECVMMSG (Ben Noordhuis)
* unix: simplify uv__udp_init_ex() (Ben Noordhuis)
* win: remove MAX_PATH limitations (Bartosz Sosnowski)
* build, win: add long path aware manifest (Bartosz Sosnowski)
* doc: check/idle/prepare functions always succeed (Ben Noordhuis)
* darwin: fix build with non-apple compilers (Ben Noordhuis)
* win: support environment variables > 32767 chars (Ben Noordhuis)
* unix: fully initialize struct msghdr (Ben Noordhuis)
* doc: add uv_replace_allocator thread safety warning (twosee)
* unix: fix int overflow when copying large files (Michal Artazov)
* fs: report original error (Bartosz Sosnowski)
* win, fs: add IO_REPARSE_TAG_APPEXECLINK support (Bartosz Sosnowski)
* doc: fix formatting (Ben Noordhuis)
* unix: fix memory leak when uv_loop_init() fails (Anna Henningsen)
* unix: shrink uv_udp_set_source_membership() stack (Ben Noordhuis)
* unix,win: fix wrong sizeof argument to memcpy() (Ben Noordhuis)
* build: check for libraries not provided by libc (Jeroen Roovers)
* doc: fix the order of arguments to calloc() (MasterDuke17)
* unix: don't abort when getrlimit() fails (Ben Noordhuis)
* test: support common user profile on IBMi (Xu Meng)
* build: test on more platforms via QEMU in CI (gengjiawen)
2020-05-17 11:34:37 -04:00
cjihrig
0e00e14003
Now working on version 1.37.1
...
Fixes: https://github.com/libuv/libuv/issues/2801
2020-04-19 12:17:40 -04:00
cjihrig
02a9e1be25
2020.04.20, Version 1.37.0 (Stable)
...
Changes since version 1.36.0:
* timer: remove redundant check in heap compare (Yash Ladha)
* udp: add flag to enable recvmmsg(2) explicitly (Saúl Ibarra Corretgé)
2020-04-19 12:15:57 -04:00
cjihrig
80c18ffaf5
Now working on version 1.36.1
...
Fixes: https://github.com/libuv/libuv/issues/2787
2020-04-15 12:33:35 -04:00
cjihrig
533b738838
2020.04.16, Version 1.36.0 (Stable)
...
Changes since version 1.35.0:
* build: add aix-common.c for AIX cmake build (Jesse Gorzinski)
* zos: explicitly mark message queue events (Irek Fakhrutdinov)
* zos: move mq check out of loop to save cpu cycles (Irek Fakhrutdinov)
* zos: add checks to ensure behavior of epoll_wait (Irek Fakhrutdinov)
* src: add uv__reallocf() (Ben Noordhuis)
* build: ibmi support for cmake (Jesse Gorzinski)
* build: fix gyp build for Android API >= 28 (Lin Zhang)
* udp: return recvmmsg-ed datagrams in order (Saúl Ibarra Corretgé)
* zos,test: fix spawn_empty_env for shared library build (Richard Lau)
* zos: fix non-Release builds (Richard Lau)
* zos: fix return value on expired nanosleep() call (Richard Lau)
* build: fix z/OS cmake build (Richard Lau)
* test: add a bunch of ASSERT macros (Santiago Gimeno)
* test: remove unused extern declaration (Ben Noordhuis)
* test: canonicalize argv[0] in exepath test (Ben Noordhuis)
* test: simplify platform_init() (Ben Noordhuis)
* ibmi: Fix isatty EBADF handling and refactor (Kevin Adler)
* test: Test EBADF tty handling (Kevin Adler)
* build: make cmake build benchmarks (Ben Noordhuis)
* win: use RtlGenRandom from advapi32.dll directly (Ben Noordhuis)
* android: fix OOB write in uv_interface_addresses() (Lin Zhang)
* test: pass test when hostname is single character (毛毛)
* ibmi: set the highest process priority to -10 (Xu Meng)
* build: remove support for gyp (Ben Noordhuis)
* doc: add note to README on cross-compiling (Ben Noordhuis)
* fs: add uv_fs_lutime() (Sk Sajidul Kadir)
* unix: implement cpu_relax() for arm (David Carlier)
* linux: fix uv__accept4() (twosee)
* win: handle file paths in uv_fs_statfs() (erw7)
* unix: fix uv_os_environ() null pointer check (Rikard Falkeborn)
* win: fix uv_os_environ() null pointer check (Rikard Falkeborn)
* unix: fix compilation on macOS 32-bit architectures (Brad King)
* win: replace alloca() with stack-based array (Ben Noordhuis)
2020-04-15 12:31:21 -04:00
Ben Noordhuis
53f3c687fc
build: remove support for gyp
...
Upstream GYP has been unmaintained for some time now. The only big
downstream user is Node.js and they already maintain GYP build files
for their other dependencies.
This commit removes vcbuild.bat because:
1. it's entirely built around GYP, and
2. duplicates a lot of functionality that cmake provides out of the box
This commit also removes appveyor.yml. It hasn't been used after we
stopped providing prebuilt binaries for Windows about two years ago.
As if that isn't enough, this commit also removes the Android build
scripts. They were wrappers around GYP. Use CMake.
PR-URL: https://github.com/libuv/libuv/pull/2682
Refs: https://github.com/libuv/libuv/pull/2681
Reviewed-By: Colin Ihrig <cjihrig@gmail.com>
Reviewed-By: Fedor Indutny <fedor.indutny@gmail.com>
Reviewed-By: Richard Lau <riclau@uk.ibm.com>
Reviewed-By: Santiago Gimeno <santiago.gimeno@gmail.com>
Reviewed-By: Saúl Ibarra Corretgé <saghul@gmail.com>
2020-04-07 18:24:13 +02:00
cjihrig
584ba94885
Now working on version 1.35.1
...
Fixes: https://github.com/libuv/libuv/issues/2709
2020-03-11 12:25:36 -04:00
cjihrig
e45f1ec38d
2020.03.12, Version 1.35.0 (Stable)
...
Changes since version 1.34.2:
* src: android build fix (David Carlier)
* build: make code compilable for iOS on Xcode (ssrlive)
* ibmi: skip unsupported fs test cases (Xu Meng)
* ibmi: ensure that pipe backlog is not zero (Xu Meng)
* test,udp6: fix udp_ipv6 test flakiness (Jameson Nash)
* test: fix fs_event_watch_dir_recursive flakiness (Santiago Gimeno)
* pipe: disallow listening on an IPC pipe (Witold Kręcicki)
* build,cmake: improve buil experience (Isabella Muerte)
* unix: remove support for FreeBSD < 10 (Saúl Ibarra Corretgé)
* linux: simplify uv__accept() (Ben Noordhuis)
* linux: assume presence of SOCK_CLOEXEC flag (Ben Noordhuis)
* linux: simplify uv__dup2_cloexec() (Ben Noordhuis)
* freebsd,linux: simplify uv__make_socketpair() (Ben Noordhuis)
* unix: fix error handling in uv__make_socketpair() (Ben Noordhuis)
* freebsd,linux: simplify uv__make_pipe() (Ben Noordhuis)
* unix: fix error handling in uv__make_pipe() (Ben Noordhuis)
* linux: simplify uv__async_eventfd() (Ben Noordhuis)
* linux: assume the presence of inotify system calls (Ben Noordhuis)
* doc: strip ICC profile from 2 jpg files (Dominique Dumont)
* unix: make uv_tcp_keepalive predictable (Manuel BACHMANN)
* docs: uv_setup_args() may take ownership of argv (Ben Noordhuis)
* unix: fix error path in uv_setup_args() (Ben Noordhuis)
* unix: fix size check in uv_get_process_title() (Ben Noordhuis)
* doc: add erw7 to maintainers (erw7)
* test: fixed udp4_echo_server implementation (Marek Vavrusa)
* test: added udp ping benchmark (1,10,100 pingers) (Marek Vavrusa)
* freebsd,linux: add recvmmsg() + sendmmsg() udp implementation (Marek
Vavrusa)
* win,pipe: DRY/simplify some code paths (Jameson Nash)
* win: address some style nits (Jameson Nash)
* win,pipe: ensure `req->event_handle` is defined (Elliot Saba)
* win,pipe: consolidate overlapped initialization (Elliot Saba)
* win,pipe: erase event_handle after deleting pointer (Jameson Nash)
* build: fix android cmake build, build missing file (Ben Noordhuis)
* test: skip some UDP tests on IBMi (Xu Meng)
* test: skip some spawn test cases on IBMi (Xu Meng)
* src: fix wrong method name in comment (TK-one)
* test: add UV_TIMEOUT_MULTIPLIER environment var (Ben Noordhuis)
* unix: fix uv_cpu_info always returning UV_ENOTDIR on OpenBSD (Ben
Davies)
* test: skip the pwd_shell test on IBMi (Xu Meng)
* win,tty: Change to restore cursor shape with uv_tty_reset() (erw7)
* win,tty: Added set cursor style to CSI sequences (erw7)
* test: handle EINTR, fix EOF check in poll test (Ben Noordhuis)
* unix: use socklen_t instead of size_t (Ben Noordhuis)
* doc: fix header file location (TK-one)
* unix: fix signal handle closing deferral (Ben Noordhuis)
* ibmi: set the amount of memory in use to zero (Xu Meng)
* zos: return on realloc failure in scandir() (Milad Farazmand)
* zos: fix scandir() error path NULL pointer deref (Ben Noordhuis)
2020-03-11 12:23:27 -04:00
erw7
288a06727b
win,tty: Added set cursor style to CSI sequences
...
PR-URL: https://github.com/libuv/libuv/pull/1884
Refs: https://github.com/libuv/libuv/issues/1874
Co-authored-by: Bert Belder <bertbelder@gmail.com>
Co-authored-by: Jameson Nash <vtjnash@gmail.com>
Reviewed-By: Jameson Nash <vtjnash@gmail.com>
Reviewed-By: Saúl Ibarra Corretgé <s@saghul.net>
2020-02-29 14:11:36 +09:00
cjihrig
3ac654c8a2
Now working on version 1.34.3
...
Fixes: https://github.com/libuv/libuv/issues/2646
2020-01-23 09:22:55 -05:00
cjihrig
f868c9ab0c
2020.01.24, Version 1.34.2 (Stable)
...
Changes since version 1.34.1:
* misc: adjust stalebot deadlines (Jameson Nash)
* test: fix env-vars flakiness (cjihrig)
* test: avoid truncating output lines (Jameson Nash)
* darwin: stop calling SetApplicationIsDaemon() (Ben Noordhuis)
* ibmi: implement uv_interface_addresses() (Xu Meng)
* osx,fsevent: fix race during uv_loop_close (Jameson Nash)
* osx,fsevent: clear pointer when deleting it [NFCI] (Jameson Nash)
* Revert "aix: replace ECONNRESET with EOF if already closed" (Jameson
Nash)
* unix: handle uv__open_cloexec return value correctly (Anna Henningsen)
2020-01-23 09:20:02 -05:00