Releases: libuv/libuv
v1.52.1: 2026.03.06, Version 1.52.1 (Stable)
Dist files at https://dist.libuv.org/dist/v1.52.1/
Changes since version 1.52.0:
* misc: add simple clang-tidy setup (Jameson Nash)
* unix: check RLIMIT_AS and RLIMIT_DATA in uv_get_constrained_memory
(Jameson Nash)
* win: add fs-fd-hash-inl.h to tarball (tobil4sk)
* unix,win: support NULL loop for sync uv_getaddrinfo (SaΓΊl Ibarra
CorretgΓ©)
* Fix const-correctness warning in linux.c (Quaylyn Rimer)
* build(deps): bump actions/upload-artifact from 6 to 7
(dependabot[bot])
* build(deps): bump actions/download-artifact from 7 to 8
(dependabot[bot])
* unix: fix compilation warnings with GCC 15 (SaΓΊl Ibarra CorretgΓ©)
* test: remove conditionals from `uv_thread_self` usage (Yasser
Nascimento)
* unix: fix discard const (Rudi Heitbaum)
* unix: do not cast to char variables that are const char (Rudi
Heitbaum)
* linux: fix crash if poll callback closes handle before `POLLERR` (Juan
JosΓ© Arboleda)
v1.52.0: 2026.02.11, Version 1.52.0 (Stable)
Dist files at https://dist.libuv.org/dist/v1.52.0/
Changes since version 1.51.0:
-
src: remove unused include of <assert.h> in timer.c (Juan JosΓ©
Arboleda) -
test: skip
udp_multicast_joinif not system-wide available (Juan
JosΓ© Arboleda) -
test: remove unused include of <limits.h> in runner.h (Juan JosΓ©
Arboleda) -
doc: don't mention UV_LOOP_ENABLE_IO_URING_SQPOLL (Poul T Lomholt)
-
unix: fix uv_thread_{get,set}priority error codes (Ryan Liptak)
-
build: dedup sanitizer jobs using matrix strategy (Juan JosΓ© Arboleda)
-
doc: update ncurses link (SaΓΊl Ibarra CorretgΓ©)
-
tcp: support customizing TCP_KEEPINTVL and TCP_KEEPCNT (Andy Pan)
-
linux: fix -Wformat-truncation warning (Ben Noordhuis)
-
src: fix nullptr dereference in uv__print_handles (jhnh204)
-
build: make automake link libm on bsd-likes (Juan JosΓ© Arboleda)
-
include: remove unused macro undefs from uv.h (Juan JosΓ© Arboleda)
-
win: handle empty string in uv_get_process_title (Ben Noordhuis)
-
win: use WSA_FLAG_NO_HANDLE_INHERIT in WSASocketW (chemodax)
-
unix: handle possible
ENOMEMinuv__tcp_listen(Juan JosΓ©
Arboleda) -
win: replace GetModuleHandleA with GetModuleHandleW (chemodax)
-
qnx: add qnx 8 support (Deep C)
-
mailmap: update email address for Richard Lau (Richard Lau)
-
win: remove obsolete comment (Ben Noordhuis)
-
unix: handle possible
ENOMEMinuv__pipe_listen(Juan JosΓ©
Arboleda) -
unix: deduplicate uv_free_interface_addresses (Juan JosΓ© Arboleda)
-
test: pass correct string type to GetModuleHandleW (Ben Noordhuis)
-
win: remove unnecessary inlining from fs.c (Ben Noordhuis)
-
win: move uv__process_reqs to core.c (Ben Noordhuis)
-
win: remove unnecessary inlining from header file (Ben Noordhuis)
-
test: skip slow process title test on asan+macos (Ben Noordhuis)
-
win: dissolve atomicops-inl.h (Ben Noordhuis)
-
win: move uv__process_endgames to core.c (Ben Noordhuis)
-
win: move uv__insert_pending_req to core.c (Ben Noordhuis)
-
win: replace inline asm with compiler intrinsic (Ben Noordhuis)
-
win,pipe: minimal fix to uv_read_cb->uv_read_start recursion bug
(Jameson Nash) -
doc: make requirements work with newer python (Luca Saccarola)
-
win: fix -Wcast-function-type warnings in winapi.c (Ben Noordhuis)
-
win: fix -Wsign-compare warnings (Ben Noordhuis)
-
test: simplify ASSERT_OK macro for static analysis (Jameson Nash)
-
win: add arm64 machine type to uv_os_uname (wisemanny)
-
win: use ProcessPrng (Ben Noordhuis)
-
win: work around wine bug in uv_fs_{unlink,rmdir} (Keno Fischer)
-
doc: fix return value for uv_pipe_connect2 (Sean Dewar)
-
unix: fix udp sendmmsg fallback path (Ben Noordhuis)
-
doc: add binding
C frameworkuv_coroutine to LINKS.md (Lawrence
Stubbs) -
linux: handle cgroups cpu.max with limit < period (Ben Noordhuis)
-
doc: update link, repo name change to c-asio (Lawrence Stubbs)
-
build(deps): bump actions/download-artifact from 4 to 5
(dependabot[bot]) -
doc: remove nodeuv from LINKS.md (Ben Noordhuis)
-
test: use relative paths for pipes and unix sockets (Emily)
-
build(deps): bump actions/checkout from 4 to 5 (dependabot[bot])
-
unix: improve uv__cpu_relax() on arm (Anton Kirilov)
-
win: fix compiler warnings (Savas Sahin)
-
unix: replace uv__io_t callback pointer with enum (Ben Noordhuis)
-
test,win: fix -Wunused-function warnings (Ben Noordhuis)
-
test,win: fix -Wcast-function-type warnings (Ben Noordhuis)
-
test,win: fix -Wattributes warnings (Ben Noordhuis)
-
win: shrink fd hash table from 2592k to 162k (Ben Noordhuis)
-
unix: fix build on the bsds (Ben Noordhuis)
-
netbsd: fix thread affinity compilation error (Santiago Gimeno)
-
unix: remove UV__SIGNAL_EVENT dispatch from uv__io_cb (Juan JosΓ©
Arboleda) -
build: add -Werror when testing -Wflags (Jameson Nash)
-
win: fix path size calculation (Ben Noordhuis)
-
doc: correct uv_cancel return value (m0cg)
-
unix,win: look up UV_THREADPOOL_SIZE with uv_os_getenv (moe li)
-
build(deps): bump actions/setup-python from 5 to 6 (dependabot[bot])
-
unix: fix uv__signal_loop_cleanup call in init (Jameson Nash)
-
aix: fix nullptr check in uv__skip_lines (Ben Noordhuis)
-
unix: add neoverse-v2 cpu identifier (green-br)
-
test: make
thread_priorityrobust against system default nice levels
(Juan JosΓ© Arboleda)
-
unix,win: implement
uv_udp_open_ex(Juan JosΓ© Arboleda) -
aix: add stub function to satisfy linker (Ben Noordhuis)
-
linux: add MSG_ERRQUEUE ipv4/ipv6 udp support (Juan JosΓ© Arboleda)
-
ibmi: add stub function to satisfy linker (Ben Noordhuis)
-
darwin: better heuristic for available memory (Christian Guinard)
-
build(deps): bump actions/download-artifact from 5 to 6
(dependabot[bot]) -
build(deps): bump actions/upload-artifact from 4 to 5
(dependabot[bot]) -
unix: fix use of uninitialized variable (Ben Noordhuis)
-
doc: fix documentation for uv_utf16_to_wtf8() function (Gang Zhuo)
-
win: rename minimal_windows10_version1709() for libuv's convention
(Andy Pan) -
build(deps): bump actions/checkout from 5 to 6 (dependabot[bot])
-
win: fix race in uv_fs_event_start() (Ben Noordhuis)
-
unix: support nanosecond resolution in uv__fs_to_timespec (Ayush
Kumar) -
win: handle sshfs-win quirk in uv_fs_readdir() (Ben Noordhuis)
-
unix,win: fix leak in uv_os_environ error path (Ambuj Vashistha)
-
test: add macros to run fs tests with io_uring (Santiago Gimeno)
-
linux: fix uv_fs_ftruncate io_uring implementation (Santiago Gimeno)
-
Update OS X reference to macOS in README (Bart Louwers)
-
ci: update macos runner images (Ben Noordhuis)
-
doc: add example usage for uv_sleep (Kartik Puri)
-
ci: add macos-15-intel to matrix (Ben Noordhuis)
-
win: Optimize file/directory delete. (chemodax)
-
build(deps): bump actions/download-artifact from 6 to 7
(dependabot[bot]) -
build(deps): bump actions/upload-artifact from 5 to 6
(dependabot[bot]) -
test: run more fs tests using io_uring too (Santiago Gimeno)
-
doc: add handle and request usage guidelines (Ben Noordhuis)
-
unix: remove handle from queue on uv_spawn() error (Oblivionsage)
-
doc: remove hp-ux from supported platforms list (Ben Noordhuis)
-
unix,win: add f_frsize field to uv_statfs_t (Ben Noordhuis)
-
test: fix -Wuninitialized-const-pointer warning (Ben Noordhuis)
-
test: fix -Wstringop-overread warning (Ben Noordhuis)
-
test: make pty test work under asan (Ben Noordhuis)
-
win: readlink support for IO_REPARSE_TAG_LX_SYMLINK (Cody Tapscott)
-
unix: fix partial read handling after POLLHUP (Ben Noordhuis)
-
unix: factor out common i/o poll code (Ben Noordhuis)
-
test: disable udp_reuseport test under qemu (Ben Noordhuis)
-
test: disable tcp_reuseport test under qemu (Ben Noordhuis)
-
unix,win: check nbufs argument is reasonable (Ben Noordhuis)
-
win: refactor to support large statfs blocks (Santiago Gimeno)
-
unix: remove sunpro references (Ben Noordhuis)
-
idna: fix assert in wtf8_to_utf16 conversion (tobil4sk)
-
aix,ibmi: fix test suite build breakage (Ben Noordhuis)
-
unix: implement cpu_relax() for riscv64 (Han Gao)
-
doc: add setuid warning to uv_exepath (Ben Noordhuis)
-
unix: make OpenBSD uv_exepath work (mischief)
-
win: fix uv_get_process_title (StefanStojanovic)
-
unix,udp: fix -Wgnu-folding-constant warning (SaΓΊl Ibarra CorretgΓ©)
-
cmake: add libuvConfigVersion.cmake file (PrzemysΕaw Sobala)
v1.51.0: 2025.04.25, Version 1.51.0 (Stable)
Dist files at https://dist.libuv.org/dist/v1.51.0/
Notable Changes
- unix,win: accept NAN/INFINITY as file timestamps #4702
- win: add ENABLE_VIRTUAL_TERMINAL_INPUT raw tty mode #4688
- linux: align CPU quota calculation with Rust #4746
Important Bugs Fixed
v1.50.0: 2025.01.15, Version 1.50.0 (Stable)
Dist files at https://dist.libuv.org/dist/v1.50.0/
Notable Changes
- win: drop support for windows 8 #4624
- unix,win: add uv_udp_try_send2 #4644
- win: drop support for the legacy MinGW #4645
- misc: implement uv_getrusage_thread #4666
- linux: always use io_uring for epoll batching #4638
Important Bugs Fixed
v1.49.2: 2024.10.18, Version 1.49.2 (Stable)
Dist files at https://dist.libuv.org/dist/v1.49.2/
Important Bugs Fixed
v1.49.1: 2024.10.11, Version 1.49.1 (Stable)
v1.49.0: 2024.09.25, Version 1.49.0 (Stable)
See #4468 for details.
Dist files at https://dist.libuv.org/dist/v1.49.0/
Notable Changes
- linux: disable SQPOLL io_uring by default #4492
- unix: reinstate preadv/pwritev fallback code #4345
- win,fs: use the new Windows fast stat API #4327
Important Bugs Fixed
v1.48.0: 2024.02.07, Version 1.48.0 (Stable)
See #4248 for details.
Dist files at https://dist.libuv.org/dist/v1.48.0/
Vulnerabilities fixed
- CVE-2024-24806 / GHSA-f74f-cvh7-c6q6 0f2d7e7, 3530bcc and e0327e1
Notable Changes
- linux: disable io_uring on ppc64 and ppc64le #4285
- linux: disable io_uring on hppa below kernel 6.1.51 #4224
- win/spawn: optionally run executable paths with no file extension #4292 (We recommend that most users consider setting this by default)
Important Bugs Fixed
v1.47.0: 2023.11.06, Version 1.47.0 (Stable)
See #4186 for details.
Dist files at https://dist.libuv.org/dist/v1.47.0/
Notable Changes
- linux: don't use io_uring on pre-5.10.186 kernels #4093
- linux: disable io_uring on 32 bits arm systems #4187
- unix: disable io_uring close on selected kernels #4141
- unix: TCP_KEEPINTVL and TCP_KEEPCNT are available on OS X 10.8+ #3908
- unix: add missing syscall numbers for RISC-V arch #4127
- unix: get mainline kernel version in Ubuntu #4131
- win,process: avoid kernel bug with starting Windows Store apps #4152