Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
917 commits
Select commit Hold shift + click to select a range
3d78d12
test: fix flaky flaky udp_mmsg test (#4652)
juanarbol Dec 15, 2024
a94f2ad
build: enable fdsan in Android
juanarbol Nov 23, 2024
beebf02
test: fix udp-multicast-join for FreeBSD (#4655)
juanarbol Dec 16, 2024
ec5a4b5
win: fix leak processing fs event
saghul Dec 16, 2024
e59e2a9
src: set a default thread name for workers (#4664)
RafaelGSS Jan 8, 2025
be8eec8
misc: implement uv_getrusage_thread (#4666)
juanarbol Jan 14, 2025
8fb9cb9
2025.01.15, Version 1.50.0 (Stable)
santigimeno Jan 15, 2025
a2ba04f
Add SHA to ChangeLog
santigimeno Jan 15, 2025
0f31978
Now working on version 1.50.1
santigimeno Jan 15, 2025
f15c602
win: fix leak in uv_os_tmpdir
saghul Jan 24, 2025
bc19bea
docs: fix RTD build
saghul Jan 24, 2025
8235116
win: lazy-load [GS]etThreadDescription symbols (#4679)
bnoordhuis Jan 24, 2025
a6ddf41
linux: try preadv64/pwritev64 before preadv/pwritev (#4683)
bnoordhuis Jan 28, 2025
23632e9
win: check cwd length before spawning a child process
xoriath Jan 29, 2025
51477bc
macos,bsd: handle missing /dev/null in chroot env (#4689)
BOPOHOP Feb 4, 2025
e399e00
doc: fix README link text (#4693)
juliojordan Feb 8, 2025
abe59d6
win: fix order of FILE_STAT_BASIC_INFORMATION struct fields
huseyinacacak-janea Feb 10, 2025
7894072
macos: increase child process stdio buffer size (#4694)
verycosy Feb 10, 2025
378edb2
doc: add C3 bindings to LINKS.md (#4699)
velikoss Feb 15, 2025
dcace2a
unix: remove unnecessary errno.h include in poll.c
juanarbol Feb 16, 2025
82cdfb7
win: fix the inconsistency in volume serial number
huseyinacacak-janea Feb 14, 2025
b807450
unix: add thread affinity support on openharmony (#4705)
rainlow Feb 21, 2025
8a94b7b
unix: enable getrusage for SunOS (#4707)
ShogunPanda Feb 21, 2025
85b526f
unix,win: accept NAN/INFINITY as file timestamps (#4702)
bnoordhuis Feb 21, 2025
843b64f
win: add ENABLE_VIRTUAL_TERMINAL_INPUT raw tty mode (#4688)
addaleax Feb 21, 2025
f61f9c2
test: handle UV_ENOTSUP in platform_output (#4714)
cjihrig Feb 25, 2025
feddddb
doc: fix rendering of threading.html (#4716)
tniessen Feb 26, 2025
436c040
unix,sunos: enable use of sendmmsg on Solaris and Illumos (#4717)
alls0rts Feb 27, 2025
16d6a0b
unix: handle out of memory in iface name copy (#4724)
bnoordhuis Feb 27, 2025
545ecf5
openbsd: do not error out if cpuspeed is not available (#4727)
rnagy Mar 3, 2025
92eacd1
test: skip thread_name_threadpool on AIX/IBMi (#4731)
abmusse Mar 3, 2025
352d992
aix,ibmi: fix undeclared identifiers (#4730)
richardlau Mar 3, 2025
98a4bab
unix,sunos: prefer SO_REUSEPORT for load balancing (#4733)
alls0rts Mar 7, 2025
c727be4
doc: free lib pointer before function return (#4720)
mugitya03 Mar 9, 2025
4681d5d
test: link with libm (#4735)
juanarbol Mar 11, 2025
ea1cf03
style: rename parameter to match definition
VoltrexKeyva Mar 10, 2025
2b96e47
test: support partial output lines in test runner (#4744)
cjihrig Mar 24, 2025
bb706f5
build: switch from c90 to c11 (#4743)
bnoordhuis Mar 24, 2025
c1a9f01
linux: allow nul bytes in abstract socket address (#4737)
ibookstein Mar 27, 2025
745c68d
sunos: use pipe2 on solaris and illumos (#4747)
panjf2000 Apr 7, 2025
fc29c12
unix: remove TOCTOU issues from uv_pipe_chmod (#4749)
bnoordhuis Apr 7, 2025
bcc799a
unix: use pipe_fname if getsockname returns nothing (#4748)
crupest Apr 8, 2025
bf6c887
haiku: use uint32 instead of uint32_t (#4754)
AE1020 Apr 16, 2025
11ecfba
doc: update thread pool stack size comment (#4756)
bnoordhuis Apr 17, 2025
942e141
unix: improve uv_loop_init OOM handling (#4757)
bnoordhuis Apr 18, 2025
086da2c
test: merge uv_tcp_connect callbacks (#4761)
juanarbol Apr 20, 2025
47a5c85
test: skip multievent tests on macOS with TSAN enabled (#4763)
juanarbol Apr 22, 2025
69d2dfe
linux: align CPU quota calculation with Rust (#4746)
juanarbol Apr 22, 2025
414a5e7
kqueue: improve fs event watcher OOM handling (#4758)
juanarbol Apr 23, 2025
e6c0007
sunos: improve fs event watcher OOM handling (#4759)
juanarbol Apr 23, 2025
eacd6e3
build: shorten instructions for cmake build (#4762)
juanarbol Apr 24, 2025
5152db2
2025.04.25, Version 1.51.0 (Stable)
santigimeno Apr 25, 2025
6c1f9b2
Add SHA to ChangeLog
santigimeno Apr 25, 2025
76fb3b7
Now working on version 1.51.1
santigimeno Apr 25, 2025
a1692f7
src: remove unused include of <assert.h> in timer.c (#4774)
juanarbol May 2, 2025
e4ed92a
test: skip `udp_multicast_join` if not system-wide available (#4779)
juanarbol May 8, 2025
8d4218d
test: remove unused include of <limits.h> in runner.h (#4780)
juanarbol May 10, 2025
a3b8cb9
doc: don't mention UV_LOOP_ENABLE_IO_URING_SQPOLL (#4786)
ptlomholt May 15, 2025
2b76a4f
unix: fix uv_thread_{get,set}priority error codes (#4782)
squeek502 May 15, 2025
29edf31
build: dedup sanitizer jobs using matrix strategy (#4776)
juanarbol May 15, 2025
71ec5c0
doc: update ncurses link (#4788)
saghul May 16, 2025
3a9a6e3
tcp: support customizing TCP_KEEPINTVL and TCP_KEEPCNT
panjf2000 May 21, 2025
b00c5d1
linux: fix -Wformat-truncation warning (#4793)
bnoordhuis May 29, 2025
6a0945b
src: fix nullptr dereference in uv__print_handles (#4805)
jhnh204 Jun 14, 2025
1fbf4f7
build: make automake link libm on bsd-likes (#4795)
juanarbol Jun 14, 2025
e13e80b
include: remove unused macro undefs from uv.h (#4790)
juanarbol Jun 14, 2025
0d4f54f
win: handle empty string in uv_get_process_title (#4807)
bnoordhuis Jun 15, 2025
5f3c0d3
win: use WSA_FLAG_NO_HANDLE_INHERIT in WSASocketW (#4810)
chemodax Jun 22, 2025
513751e
unix: handle possible `ENOMEM` in `uv__tcp_listen`
juanarbol Jun 15, 2025
2545ffe
win: replace GetModuleHandleA with GetModuleHandleW (#4812)
chemodax Jun 29, 2025
04fc158
qnx: add qnx 8 support (#4801)
dchordia Jun 30, 2025
49b6e4d
mailmap: update email address for Richard Lau
richardlau Jul 1, 2025
8e51d38
win: remove obsolete comment (#4816)
bnoordhuis Jul 2, 2025
db3d0ff
unix: handle possible `ENOMEM` in `uv__pipe_listen` (#4817)
juanarbol Jul 3, 2025
55f5fce
unix: deduplicate uv_free_interface_addresses (#4818)
juanarbol Jul 5, 2025
aad8540
test: pass correct string type to GetModuleHandleW (#4820)
bnoordhuis Jul 6, 2025
25f6f84
win: remove unnecessary inlining from fs.c (#4822)
bnoordhuis Jul 6, 2025
d67ef2e
win: move uv__process_reqs to core.c (#4821)
bnoordhuis Jul 6, 2025
3d12a59
win: remove unnecessary inlining from header file (#4824)
bnoordhuis Jul 6, 2025
aac866f
test: skip slow process title test on asan+macos (#4825)
bnoordhuis Jul 6, 2025
dc117c7
win: dissolve atomicops-inl.h (#4826)
bnoordhuis Jul 7, 2025
b36dc71
win: move uv__process_endgames to core.c (#4827)
bnoordhuis Jul 7, 2025
0070322
win: move uv__insert_pending_req to core.c (#4828)
bnoordhuis Jul 8, 2025
4546374
win: replace inline asm with compiler intrinsic (#4829)
bnoordhuis Jul 8, 2025
7026ae0
win,pipe: minimal fix to uv_read_cb->uv_read_start recursion bug (#4784)
vtjnash Jul 10, 2025
9424da3
doc: make requirements work with newer python (#4745)
saccarosium Jul 10, 2025
6f3199d
win: fix -Wcast-function-type warnings in winapi.c (#4834)
bnoordhuis Jul 15, 2025
4887c09
win: fix -Wsign-compare warnings (#4835)
bnoordhuis Jul 15, 2025
a21e7cf
test: simplify ASSERT_OK macro for static analysis (#4830)
vtjnash Jul 16, 2025
917c1ad
win: add arm64 machine type to uv_os_uname (#4840)
wisemanny Jul 16, 2025
7484ab2
win: use ProcessPrng (#4836)
bnoordhuis Jul 16, 2025
6cf854c
win: work around wine bug in uv_fs_{unlink,rmdir} (#4833)
Keno Jul 24, 2025
aee30bd
doc: fix return value for uv_pipe_connect2
seandewar Jul 28, 2025
33b192c
unix: fix udp sendmmsg fallback path (#4849)
bnoordhuis Jul 28, 2025
e70d5e8
doc: add binding `C framework` uv_coroutine to LINKS.md
TheTechsTech Jul 31, 2025
2e7c07f
linux: handle cgroups cpu.max with limit < period (#4853)
bnoordhuis Jul 31, 2025
056e180
doc: update link, repo name change to c-asio (#4855)
TheTechsTech Aug 3, 2025
173b763
build(deps): bump actions/download-artifact from 4 to 5
dependabot[bot] Aug 11, 2025
b161b1f
doc: remove nodeuv from LINKS.md (#4859)
bnoordhuis Aug 13, 2025
8aad181
test: use relative paths for pipes and unix sockets (#4850)
emilazy Aug 16, 2025
07c8a3c
build(deps): bump actions/checkout from 4 to 5
dependabot[bot] Aug 18, 2025
3d9d7c7
unix: improve uv__cpu_relax() on arm (#4863)
akirilov-arm Aug 20, 2025
3b1ac02
win: fix compiler warnings (#4860)
savashn Aug 20, 2025
3813460
unix: replace uv__io_t callback pointer with enum (#4854)
bnoordhuis Aug 23, 2025
385896c
test,win: fix -Wunused-function warnings (#4866)
bnoordhuis Aug 24, 2025
9a8d9c6
test,win: fix -Wcast-function-type warnings (#4867)
bnoordhuis Aug 24, 2025
a9c8da7
test,win: fix -Wattributes warnings (#4868)
bnoordhuis Aug 24, 2025
12fbd34
win: shrink fd hash table from 2592k to 162k (#4869)
bnoordhuis Aug 24, 2025
36d6a17
unix: fix build on the bsds (#4870)
bnoordhuis Aug 25, 2025
9ba8078
netbsd: fix thread affinity compilation error (#4787)
santigimeno Aug 25, 2025
64dd229
unix: remove UV__SIGNAL_EVENT dispatch from uv__io_cb (#4871)
juanarbol Aug 25, 2025
c6330d9
build: add -Werror when testing -Wflags (#4831)
vtjnash Aug 27, 2025
2e86f6b
win: fix path size calculation (#4878)
bnoordhuis Sep 3, 2025
47611f7
doc: correct uv_cancel return value (#4886)
m0cg Sep 11, 2025
271d173
unix,win: look up UV_THREADPOOL_SIZE with uv_os_getenv (#4888)
konakona418 Sep 14, 2025
392590a
build(deps): bump actions/setup-python from 5 to 6 (#4884)
dependabot[bot] Sep 25, 2025
cfdce92
unix: fix uv__signal_loop_cleanup call in init (#4876)
vtjnash Sep 25, 2025
553bb98
aix: fix nullptr check in uv__skip_lines (#4892)
bnoordhuis Sep 25, 2025
74079a8
unix: add neoverse-v2 cpu identifier (#4897)
green-br Oct 1, 2025
50f281c
test: make `thread_priority` robust against system default nice level…
juanarbol Oct 3, 2025
ee67f3d
unix,win: implement `uv_udp_open_ex` (#4896)
juanarbol Oct 4, 2025
87943b0
aix: add stub function to satisfy linker (#4903)
bnoordhuis Oct 5, 2025
80a5e3b
linux: add MSG_ERRQUEUE ipv4/ipv6 udp support (#4902)
juanarbol Oct 6, 2025
f3ce527
ibmi: add stub function to satisfy linker (#4905)
bnoordhuis Oct 7, 2025
a944c42
darwin: better heuristic for available memory (#4908)
christiangnrd Oct 15, 2025
300fc32
build(deps): bump actions/download-artifact from 5 to 6 (#4914)
dependabot[bot] Oct 27, 2025
12d1ed1
build(deps): bump actions/upload-artifact from 4 to 5
dependabot[bot] Oct 27, 2025
b33162d
unix: fix use of uninitialized variable (#4924)
bnoordhuis Nov 6, 2025
0125043
doc: fix documentation for uv_utf16_to_wtf8() function (#4935)
GangZhuo Nov 18, 2025
f6e19be
win: rename minimal_windows10_version1709() for libuv's convention
panjf2000 Sep 6, 2025
8e02462
build(deps): bump actions/checkout from 5 to 6
dependabot[bot] Nov 24, 2025
8fc7034
win: fix race in uv_fs_event_start() (#4948)
bnoordhuis Nov 29, 2025
bf44c3f
unix: support nanosecond resolution in uv__fs_to_timespec (#4951)
AyushCodes160 Dec 2, 2025
d7dda9e
win: handle sshfs-win quirk in uv_fs_readdir() (#4953)
bnoordhuis Dec 2, 2025
9640bc6
unix,win: fix leak in uv_os_environ error path (#4960)
ambujvashistha Dec 6, 2025
e522b27
test: add macros to run fs tests with io_uring (#4963 1/2)
santigimeno Dec 7, 2025
fd89e63
linux: fix uv_fs_ftruncate io_uring implementation (#4963 2/2)
santigimeno Dec 7, 2025
3c1e701
Update OS X reference to macOS in README (#4964)
louwers Dec 9, 2025
4eefcbe
ci: update macos runner images (#4967)
bnoordhuis Dec 9, 2025
504887a
doc: add example usage for uv_sleep (#4955)
BOXER78 Dec 10, 2025
ac59150
ci: add macos-15-intel to matrix (#4968)
bnoordhuis Dec 10, 2025
ada5131
win: Optimize file/directory delete.
chemodax Dec 11, 2025
5c91d49
build(deps): bump actions/download-artifact from 6 to 7 (#4974)
dependabot[bot] Dec 15, 2025
ec7ec98
build(deps): bump actions/upload-artifact from 5 to 6 (#4975)
dependabot[bot] Dec 15, 2025
9c876b2
test: run more fs tests using io_uring too (#4970)
santigimeno Dec 20, 2025
309b28b
doc: add handle and request usage guidelines (#4978)
bnoordhuis Dec 21, 2025
3e9ae1b
unix: remove handle from queue on uv_spawn() error (#4980)
Oblivionsage Dec 26, 2025
8b870da
doc: remove hp-ux from supported platforms list (#4985)
bnoordhuis Jan 1, 2026
91ae02a
unix,win: add f_frsize field to uv_statfs_t (#4984)
bnoordhuis Jan 1, 2026
f420c2b
test: fix -Wuninitialized-const-pointer warning (#4990)
bnoordhuis Jan 7, 2026
d67f9d2
test: fix -Wstringop-overread warning (#4993)
bnoordhuis Jan 13, 2026
3908e54
test: make pty test work under asan (#4996)
bnoordhuis Jan 15, 2026
588ea9b
win: readlink support for IO_REPARSE_TAG_LX_SYMLINK (#4994)
topolarity Jan 16, 2026
2e2114e
unix: fix partial read handling after POLLHUP (#4997)
bnoordhuis Jan 18, 2026
4cb6a2d
unix: factor out common i/o poll code (#5000)
bnoordhuis Jan 18, 2026
0405e12
test: disable udp_reuseport test under qemu (#5002)
bnoordhuis Jan 21, 2026
4839e28
test: disable tcp_reuseport test under qemu (#5005)
bnoordhuis Jan 23, 2026
91dc238
unix,win: check nbufs argument is reasonable (#5014)
bnoordhuis Feb 1, 2026
c68ca44
win: refactor to support large statfs blocks (#5016)
santigimeno Feb 2, 2026
fc90bb9
unix: remove sunpro references (#5017)
bnoordhuis Feb 2, 2026
73bfbb9
idna: fix assert in wtf8_to_utf16 conversion (#5021)
tobil4sk Feb 4, 2026
885613f
aix,ibmi: fix test suite build breakage (#5020)
bnoordhuis Feb 4, 2026
e50d4e6
unix: implement cpu_relax() for riscv64 (#5019)
RevySR Feb 4, 2026
0db25a9
doc: add setuid warning to uv_exepath
bnoordhuis Feb 4, 2026
7180157
unix: make OpenBSD uv_exepath work
mischief Feb 4, 2026
01f4f89
win: fix uv_get_process_title
StefanStojanovic Feb 4, 2026
26a97ad
unix,udp: fix -Wgnu-folding-constant warning
saghul Feb 5, 2026
0dc33b9
cmake: add libuvConfigVersion.cmake file
pszemus Feb 6, 2026
b556c06
2026.02.11, Version 1.52.0 (Stable)
cjihrig Feb 11, 2026
bcad447
Add SHA to ChangeLog
cjihrig Feb 11, 2026
8fa3434
Now working on version 1.52.1
cjihrig Feb 11, 2026
276f6ac
misc: add simple clang-tidy setup (#4874)
vtjnash Feb 14, 2026
1eacb13
unix: check RLIMIT_AS and RLIMIT_DATA in uv_get_constrained_memory (#…
vtjnash Feb 14, 2026
7e381d0
win: add fs-fd-hash-inl.h to tarball (#5031)
tobil4sk Feb 16, 2026
edfc95d
unix,win: support NULL loop for sync uv_getaddrinfo
saghul Feb 17, 2026
12d0dd4
Fix const-correctness warning in linux.c (#4843)
killerdevildog Feb 21, 2026
651e05e
build(deps): bump actions/upload-artifact from 6 to 7
dependabot[bot] Mar 2, 2026
f44e6be
build(deps): bump actions/download-artifact from 7 to 8
dependabot[bot] Mar 2, 2026
50ed2fd
unix: fix compilation warnings with GCC 15
saghul Mar 2, 2026
568470a
test: remove conditionals from `uv_thread_self` usage
yassernasc Mar 4, 2026
5243d19
unix: fix discard const
heitbaum Mar 5, 2026
e62ccbf
unix: do not cast to char variables that are const char
heitbaum Mar 5, 2026
b030b02
linux: fix crash if poll callback closes handle before `POLLERR` (#5039)
juanarbol Mar 6, 2026
1cfa32f
2026.03.06, Version 1.52.1 (Stable)
santigimeno Mar 6, 2026
a36131d
Add SHA to ChangeLog
santigimeno Mar 6, 2026
a19ceeb
Now working on version 1.52.2
santigimeno Mar 6, 2026
a43e543
unix: fix pedantic compiler warnings (#5052)
bnoordhuis Mar 11, 2026
6cdf71d
win: fix const correctness compiler error (#5049)
apocelipes Mar 11, 2026
d357575
doc: clarify handle close behavior of uv_spawn (#5055)
bnoordhuis Mar 11, 2026
52891c8
doc: name function crosslinks consistently (#5056)
bnoordhuis Mar 11, 2026
d2a45ce
win: fix const correctness warning (#5057)
bnoordhuis Mar 11, 2026
ec0ab5d
win: fix off-by-one in utf-16 to wtf-8 conversion (#5050)
locus-x64 Mar 13, 2026
88d6d36
udp: validate nbufs in send functions
orenyomtov Mar 14, 2026
10902ab
unix: improve handling of uv_async_send mistakes (#5058)
vtjnash Mar 15, 2026
40c800e
unix,stream: verify uv_try_write2 handle (#5035)
cuiweixie Mar 15, 2026
651f2fc
test,win: fix race in test runner (#5066)
vtjnash Mar 16, 2026
b84a067
unix,tty: don't drain when setting the TTY mode (#4945)
gbaraldi Mar 17, 2026
fe89c7d
inet: prefer sizeof with parenthesis (#4789)
juanarbol Mar 17, 2026
f4363ae
test: remove unused headers and use newer ASSERT macros (#4760)
juanarbol Mar 17, 2026
f600f71
doc: Add textual images into libuv man page (#4709)
alls0rts Mar 17, 2026
6f096c9
darwin: replace EV_OOBAND handling with EVFILT_EXCEPT + NOTE_OOB (#4906)
juanarbol Mar 17, 2026
a1f10d9
docs: add copybutton sphinx extension (#4958)
karma4O4 Mar 17, 2026
048acb5
doc: fix threading bugs in progress example (#4956)
Bitshifter-9 Mar 17, 2026
919b92d
unix: support long path names in pipe.c (#5047)
geeksilva97 Mar 17, 2026
fa38eb4
win: fix some compiler warnings (#5070)
bgilbert Mar 17, 2026
ea4667b
docs: fix broken and redirected links (#5074)
vtjnash Mar 18, 2026
1899789
doc: remove random reference to libev (#5075)
bnoordhuis Mar 18, 2026
58418d5
process: better validation for process->pid usage (#3539)
vtjnash Mar 19, 2026
1f56978
unix: check return value of fcntl call (#5089)
bnoordhuis Mar 21, 2026
14f6c4c
test: fix -Wunused-function warning (#5090)
bnoordhuis Mar 21, 2026
9f0101d
linux: close streams without an extra read (#3250)
vtjnash Mar 21, 2026
8877568
unix: enforce recvmmsg buffer size requirements (#5095)
bnoordhuis Mar 23, 2026
e3a27e0
android: fix termux build (#5093)
BarryLhm Mar 24, 2026
fa0ac9e
io: make libuv 64-bit safe (#5076)
vtjnash Mar 24, 2026
046aebe
win,pipe: skip IOCP for pipe handles (#5071)
vtjnash Mar 24, 2026
d19855c
win: use WSA_FLAG_NO_HANDLE_INHERIT in all WSASocketW (#5097)
vtjnash Mar 26, 2026
40d45ef
unix: use posix_spawn instead of fork (#3520)
vtjnash Mar 26, 2026
901e283
test: use correct type for uv_fileno arguments (#4673)
saghul Mar 26, 2026
84816e0
misc: revise security vulnerability reporting instructions
vtjnash Mar 29, 2026
44125af
win: fix watch loop logic (#5013)
StefanStojanovic Mar 31, 2026
aabb765
win: properly initialize OSVERSIONINFOW (#5107)
santigimeno Apr 2, 2026
428f2c4
misc: fix error code returned from uv_wtf8_length_as_utf16
squeek502 Apr 13, 2026
d185607
stream: fix server stop accepting after uv_accept() error
devizi0 Mar 30, 2026
40178b9
unix,ibmi: abort on process_title_mutex init failure
juanarbol Mar 27, 2026
1c1dada
unix,stream: fix getsockopt error handling in connect
juanarbol Mar 28, 2026
439a54b
unix: treat futimens() as best-effort in copyfile
skooch Mar 11, 2026
c2a4488
unix: free statxbuf on iouring statx fallback (#5132)
santigimeno Apr 26, 2026
79b923e
aix,ibmi: fix undeclared identifiers (#5123)
sravani1510 Apr 28, 2026
cafbb1a
unix: fix uv__udp_recvmsg crash (#5131)
theanarkh May 3, 2026
9f5306f
win: use PROC_THREAD_ATTRIBUTE_HANDLE_LIST in uv_spawn (#5100)
vtjnash May 13, 2026
2e13123
unix: avoid duplicate recvmmsg terminal callback (#5133)
script3r May 14, 2026
e8575ba
win: fix spawn process with no argument (#5109)
sturcotte06 May 14, 2026
3d09fed
unix: handle cloexec failure in kqueue init (#5102)
juanarbol May 14, 2026
5098fa2
unix: remove UV_HANDLE_READING flag (#5048)
geeksilva97 May 14, 2026
6179e7a
src: use INET6_ADDRSTRLEN for IPv6 address buffer (#5135)
orbisai0security May 15, 2026
2879da6
test: include pty.h for GNU Hurd
kapouer May 26, 2026
c96cdf0
test: skip recvmsg unreachable test when no ipv6 (#5144)
santigimeno May 26, 2026
ea493f1
win: fix race condition in uv_async_send (#5079)
vtjnash May 29, 2026
c4769c1
unix,fs: fix busyloop in big copyfile (#5151)
vtjnash Jun 3, 2026
4522bfb
process,unix: avoid off-by-one in uv__spawn_resolve_and_spawn (#5150)
vtjnash Jun 3, 2026
28a057f
test: check that sizeof is constant (#5139)
vtjnash Jun 3, 2026
cdc632c
async: make seq_cst the default (#5149)
vtjnash Jun 3, 2026
076df9f
Reland "linux: eliminate a read on eventfd per wakeup" (#4589)
vtjnash Jun 8, 2026
f6b7133
win,process: skip dump silently if no valid folder can be determined …
vtjnash Jun 9, 2026
e640dc9
win: handle short path mismatch with a fallback in fs events (#5152)
joyeecheung Jun 10, 2026
895cd04
unix,udp: handle msg_hdr.msg_namelen=0 on recvmmsg (#5163)
santigimeno Jun 14, 2026
5d0acac
ci: lock down permissions and pin action SHAs
Alb3e3 Jun 11, 2026
a310d9f
docs: ignore unstable ncurses linkcheck URL
Alb3e3 Jun 11, 2026
972e78f
unix: handle EINTR in uv_resident_set_memory
Nandann018-ux Feb 22, 2026
5e7d51a
build(deps): bump reactivecircus/android-emulator-runner
dependabot[bot] Jun 15, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
47 changes: 47 additions & 0 deletions .clang-tidy
Original file line number Diff line number Diff line change
@@ -0,0 +1,47 @@
---
# Configuration file for clang-tidy
# This configuration is tailored for the libuv C library project

# Use default checks with minimal necessary disables
Checks:
# don't suggest reordering struct definitions
- -clang-analyzer-optin.performance.Padding
# allow memcpy (instead of memcpy_s)
- -clang-analyzer-security.insecureAPI.DeprecatedOrUnsafeBufferHandling
# allow strcpy
- -clang-analyzer-security.insecureAPI.strcpy
# allow TBAA
- -clang-analyzer-unix.MallocSizeof
# always allow `if () statement;` instead of `if () { statement; }`
- -readability-braces-around-statements
# allow any use of case and _ conventions in names
- -readability-identifier-naming
# allow defining a function prototype without naming all arguments
- -readability-named-parameter
# allow 1u instead of 1U constants
- -readability-uppercase-literal-suffix

# Configure specific check options
CheckOptions:
- key: performance-unnecessary-value-param.AllowedTypes
value: 'uv_.*_t'
- key: readability-braces-around-statements.ShortStatementLines
value: '2'
- key: readability-function-size.LineThreshold
value: '150'
- key: readability-function-size.StatementThreshold
value: '80'
- key: misc-non-private-member-variables-in-classes.IgnoreClassesWithAllMemberVariablesBeingPublic
value: 'true'

# Header filter - only analyze project files, not system headers
HeaderFilterRegex: '^.*/(src|include|test)/.*\.(h|c)$'

# Format style for fix suggestions
FormatStyle: file

# Treat warnings as errors
WarningsAsErrors: false

# Use color, even when run through a program like ninja
UseColor: true
2 changes: 1 addition & 1 deletion .github/ISSUE_TEMPLATE.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
If you want to report a bug, you are in the right place!

If you need help or have a question, go here:
https://github.com/libuv/help/issues/new
https://github.com/libuv/libuv/discussions

If you are reporting a libuv test failure, please ensure that you are not
running the test as root.
Expand Down
7 changes: 7 additions & 0 deletions .github/dependabot.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
# https://docs.github.com/github/administering-a-repository/configuration-options-for-dependency-updates
version: 2
updates:
- package-ecosystem: "github-actions"
directory: "/" # Location of package manifests
schedule:
interval: "weekly"
24 changes: 0 additions & 24 deletions .github/stale.yml

This file was deleted.

27 changes: 27 additions & 0 deletions .github/workflows/CI-docs.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,27 @@
name: CI-docs

on:
pull_request:
paths:
- 'docs/**'
- '!docs/code/**'
- '.github/workflows/CI-docs.yml'

permissions: read-all

jobs:
docs-src:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@df4cb1c069e1874edd31b4311f1884172cec0e10 # v6.0.3
- uses: actions/setup-python@a309ff8b426b58ec0e2a45f0f869d46889d02405 # v6
with:
python-version: '3.9'
cache: 'pip' # caching pip dependencies
- run: pip install -r docs/requirements.txt
- name: html
run: |
make -C docs html
- name: linkcheck
run: |
make -C docs linkcheck
35 changes: 35 additions & 0 deletions .github/workflows/CI-sample.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,35 @@
name: ci-sample

on:
pull_request:
paths:
- '**'
- '!docs/**'
- '!.**'
- 'docs/code/**'
- '.github/workflows/CI-sample.yml'
push:
branches:
- v[0-9].*
- master

permissions: read-all

jobs:
build:
strategy:
fail-fast: false
matrix:
os: [macos-latest, ubuntu-latest, windows-latest]
runs-on: ${{matrix.os}}
steps:
- uses: actions/checkout@df4cb1c069e1874edd31b4311f1884172cec0e10 # v6.0.3
- name: setup
run: cmake -E make_directory ${{runner.workspace}}/libuv/docs/code/build
- name: configure
# you may like use Ninja on unix-like OS, but for windows, the only easy way is to use Visual Studio if you want Ninja
run: cmake ..
working-directory: ${{runner.workspace}}/libuv/docs/code/build
- name: build
run: cmake --build .
working-directory: ${{runner.workspace}}/libuv/docs/code/build
183 changes: 183 additions & 0 deletions .github/workflows/CI-unix.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,183 @@
name: CI-unix

on:
pull_request:
paths:
- '**'
- '!docs/**'
- '!src/win/**'
- '!.**'
- '.github/workflows/CI-unix.yml'
push:
branches:
- v[0-9].*
- master

permissions: read-all

jobs:
build-linux:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@df4cb1c069e1874edd31b4311f1884172cec0e10 # v6.0.3
- name: configure
run: |
./autogen.sh
mkdir build
(cd build && ../configure)
- name: distcheck
run: |
make -C build distcheck

build-android:
runs-on: ubuntu-latest
env:
ANDROID_AVD_HOME: /root/.android/avd
steps:
- uses: actions/checkout@df4cb1c069e1874edd31b4311f1884172cec0e10 # v6.0.3
- name: Envinfo
run: npx envinfo
- name: Enable KVM
run: |
echo 'KERNEL=="kvm", GROUP="kvm", MODE="0666", OPTIONS+="static_node=kvm"' | sudo tee /etc/udev/rules.d/99-kvm4all.rules
sudo udevadm control --reload-rules
sudo udevadm trigger --name-match=kvm
- name: Build and Test
uses: reactivecircus/android-emulator-runner@e89f39f1abbbd05b1113a29cf4db69e7540cae5a # v2
with:
api-level: 30
arch: x86_64
target: google_apis
ram-size: 2048M
emulator-options: -no-audio -no-window -gpu off -no-boot-anim -netdelay none -netspeed full -writable-system -no-snapshot-save -no-snapshot-load -no-snapshot
disable-animations: true
script: |
echo "::group::Configure"
cmake -B build -DCMAKE_TOOLCHAIN_FILE=$ANDROID_NDK/build/cmake/android.toolchain.cmake -DCMAKE_BUILD_TYPE=Release -DANDROID_ABI="x86_64" -DANDROID_PLATFORM=android-30
echo "::endgroup::"

echo "::group::Build"
cmake --build build

## Correct some ld bugs that cause problems with libuv tests
wget "https://github.com/termux/termux-elf-cleaner/releases/download/v2.2.1/termux-elf-cleaner" -P build
chmod a+x build/termux-elf-cleaner
build/termux-elf-cleaner --api-level 30 ./build/uv_run_tests
build/termux-elf-cleaner --api-level 30 ./build/uv_run_tests_a

adb shell "su 0 setenforce 0" # to allow some syscalls like link, chmod, etc.

## Push the build and test fixtures to the device
adb push build /data/local/tmp
adb shell mkdir /data/local/tmp/build/test
adb push test/fixtures /data/local/tmp/build/test
echo "::endgroup::"

## Run the tests
file build/uv_run_tests_a
adb shell "cd /data/local/tmp/build && env UV_TEST_TIMEOUT_MULTIPLIER=5 ./uv_run_tests_a"

build-macos:
runs-on: ${{ matrix.os }}
strategy:
fail-fast: false
matrix:
os: [macos-14, macos-15, macos-15-intel]
steps:
- uses: actions/checkout@df4cb1c069e1874edd31b4311f1884172cec0e10 # v6.0.3
- name: Envinfo
run: npx envinfo
- name: Disable Firewall
run: |
/usr/libexec/ApplicationFirewall/socketfilterfw --getglobalstate
sudo defaults write /Library/Preferences/com.apple.alf globalstate -int 0
/usr/libexec/ApplicationFirewall/socketfilterfw --getglobalstate
- name: Setup
run: |
brew install ninja automake libtool
- name: Configure
run: |
cmake -B build -DBUILD_TESTING=ON -G Ninja
- name: Build
run: |
cmake --build build
ls -lh
- name: platform_output
run: |
./build/uv_run_tests platform_output
- name: platform_output_a
run: |
./build/uv_run_tests_a platform_output
- name: Test
if: ${{ matrix.os == 'macos-15' || matrix.os == 'macos-15-intel' }}
run: |
cd build && sudo UV_RUN_AS_ROOT=1 ctest -V
- name: Test
if: ${{ matrix.os != 'macos-15' && matrix.os != 'macos-15-intel' }}
run: |
cd build && ctest -V
- name: Autotools configure
if: always()
run: |
./autogen.sh
mkdir build-auto
(cd build-auto && ../configure)
make -C build-auto -j4

build-ios:
runs-on: ${{ matrix.os }}
strategy:
fail-fast: false
matrix:
os: [macos-14, macos-15]
steps:
- uses: actions/checkout@df4cb1c069e1874edd31b4311f1884172cec0e10 # v6.0.3
- name: Configure
run: |
cmake -B build-ios -GXcode -DCMAKE_SYSTEM_NAME:STRING=iOS -DCMAKE_XCODE_ATTRIBUTE_CODE_SIGNING_ALLOWED:BOOL=NO -DCMAKE_CONFIGURATION_TYPES:STRING=Release
- name: Build
run: |
cmake --build build-ios
ls -lh build-ios

build-cross-qemu:
runs-on: ubuntu-24.04
name: build-cross-qemu-${{ matrix.config.target }}

strategy:
fail-fast: false
matrix:
config:
- {target: arm, toolchain: gcc-arm-linux-gnueabi, cc: arm-linux-gnueabi-gcc, qemu: qemu-arm }
- {target: armhf, toolchain: gcc-arm-linux-gnueabihf, cc: arm-linux-gnueabihf-gcc, qemu: qemu-arm }
- {target: aarch64, toolchain: gcc-aarch64-linux-gnu, cc: aarch64-linux-gnu-gcc, qemu: qemu-aarch64 }
- {target: riscv64, toolchain: gcc-riscv64-linux-gnu, cc: riscv64-linux-gnu-gcc, qemu: qemu-riscv64 }
- {target: ppc, toolchain: gcc-powerpc-linux-gnu, cc: powerpc-linux-gnu-gcc, qemu: qemu-ppc }
- {target: ppc64, toolchain: gcc-powerpc64-linux-gnu, cc: powerpc64-linux-gnu-gcc, qemu: qemu-ppc64 }
- {target: ppc64le, toolchain: gcc-powerpc64le-linux-gnu, cc: powerpc64le-linux-gnu-gcc, qemu: qemu-ppc64le }
- {target: s390x, toolchain: gcc-s390x-linux-gnu, cc: s390x-linux-gnu-gcc, qemu: qemu-s390x }
- {target: mips, toolchain: gcc-mips-linux-gnu, cc: mips-linux-gnu-gcc, qemu: qemu-mips }
- {target: mips64, toolchain: gcc-mips64-linux-gnuabi64, cc: mips64-linux-gnuabi64-gcc, qemu: qemu-mips64 }
- {target: mipsel, toolchain: gcc-mipsel-linux-gnu, cc: mipsel-linux-gnu-gcc, qemu: qemu-mipsel }
- {target: mips64el, toolchain: gcc-mips64el-linux-gnuabi64, cc: mips64el-linux-gnuabi64-gcc,qemu: qemu-mips64el }
- {target: arm (u64 slots), toolchain: gcc-arm-linux-gnueabi, cc: arm-linux-gnueabi-gcc, qemu: qemu-arm }
- {target: aarch64 (u64 slots), toolchain: gcc-aarch64-linux-gnu, cc: aarch64-linux-gnu-gcc, qemu: qemu-aarch64 }
- {target: ppc (u64 slots), toolchain: gcc-powerpc-linux-gnu, cc: powerpc-linux-gnu-gcc, qemu: qemu-ppc }
- {target: ppc64 (u64 slots), toolchain: gcc-powerpc64-linux-gnu, cc: powerpc64-linux-gnu-gcc, qemu: qemu-ppc64 }

steps:
- uses: actions/checkout@df4cb1c069e1874edd31b4311f1884172cec0e10 # v6.0.3
- name: Install qemu and ${{ matrix.config.toolchain }}
run: |
sudo apt update
sudo apt install qemu-user qemu-user-binfmt ${{ matrix.config.toolchain }} -y
- name: Configure with ${{ matrix.config.cc }}
run: |
cmake -B build -DBUILD_TESTING=ON -DQEMU=ON -DCMAKE_C_COMPILER=${{ matrix.config.cc }}
- name: Build
run: |
cmake --build build
ls -lh build
- name: Test
run: |
${{ matrix.config.qemu }} build/uv_run_tests_a
Loading