Skip to content

Commit e961cb9

Browse files
committed
deps: update libuv to upstream 1.44.1
Updated as described in doc/contributing/maintaining-libuv.md. Fixes: #42290
1 parent 9af9725 commit e961cb9

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

66 files changed

+1836
-1231
lines changed

deps/uv/AUTHORS

+12
Original file line numberDiff line numberDiff line change
@@ -496,3 +496,15 @@ Jesper Storm Bache <[email protected]>
496496
Campbell He <[email protected]>
497497
Andrey Hohutkin <[email protected]>
498498
499+
David Machaj <[email protected]>
500+
Jessica Clarke <[email protected]>
501+
Jeremy Rose <[email protected]>
502+
503+
Luca Adrian L <[email protected]>
504+
WenTao Ou <[email protected]>
505+
jonilaitinen <[email protected]>
506+
507+
Paul Evans <[email protected]>
508+
509+
Vittore F. Scolari <[email protected]>
510+
roflcopter4 <[email protected]>

deps/uv/ChangeLog

+153-31
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,125 @@
1+
2022.03.09, Version 1.44.1 (Stable), e8b7eb6908a847ffbe6ab2eec7428e43a0aa53a2
2+
3+
Changes since version 1.44.0:
4+
5+
* process: simplify uv__write_int calls (Jameson Nash)
6+
7+
* macos: don't use thread-unsafe strtok() (Ben Noordhuis)
8+
9+
* process: fix hang after NOTE_EXIT (Jameson Nash)
10+
11+
12+
2022.03.07, Version 1.44.0 (Stable), d2bff508457336d808ba7148b33088f6acbfe0a6
13+
14+
Changes since version 1.43.0:
15+
16+
* darwin: remove EPROTOTYPE error workaround (Ben Noordhuis)
17+
18+
* doc: fix v1.43.0 changelog entries (cjihrig)
19+
20+
* win: replace CRITICAL_SECTION+Semaphore with SRWLock (David Machaj)
21+
22+
* darwin: translate EPROTOTYPE to ECONNRESET (Ben Noordhuis)
23+
24+
* android: use libc getifaddrs() (Ben Noordhuis)
25+
26+
* unix: fix STATIC_ASSERT to check what it means to check (Jessica Clarke)
27+
28+
* unix: ensure struct msghdr is zeroed in recvmmsg (Ondřej Surý)
29+
30+
* test: test with maximum recvmmsg buffer (Ondřej Surý)
31+
32+
* unix: don't allow too small thread stack size (Ben Noordhuis)
33+
34+
* bsd: ensure mutex is initialized (Ben Noordhuis)
35+
36+
* doc: add gengjiawen as maintainer (gengjiawen)
37+
38+
* process: monitor for exit with kqueue on BSDs (Jeremy Rose)
39+
40+
* test: fix flaky uv_fs_lutime test (Momtchil Momtchev)
41+
42+
* build: fix cmake install locations (Jameson Nash)
43+
44+
* thread,win: fix C90 style nit (ssrlive)
45+
46+
* build: rename CFLAGS to AM_CFLAGS (Jameson Nash)
47+
48+
* doc/guide: update content and sample code (woclass)
49+
50+
* process,bsd: handle kevent NOTE_EXIT failure (Jameson Nash)
51+
52+
* test: remove flaky test ipc_closed_handle (Ben Noordhuis)
53+
54+
* darwin: bump minimum supported version to 10.15 (Ben Noordhuis)
55+
56+
* win: return fractional seconds in uv_uptime() (Luca Adrian L)
57+
58+
* build: export uv_a for cmake (WenTao Ou)
59+
60+
* loop: add pending work to loop-alive check (Jameson Nash)
61+
62+
* win: use GetTickCount64 for uptime again (Jameson Nash)
63+
64+
* win: restrict system DLL load paths (jonilaitinen)
65+
66+
* win,errors: remap ERROR_ACCESS_DENIED to UV_EACCES (Darshan Sen)
67+
68+
* bench: add `uv_queue_work` ping-pong measurement (Momtchil Momtchev)
69+
70+
* build: fix error C4146 on MSVC (UMU)
71+
72+
* test: fix benchmark-ping-udp (Ryan Liptak)
73+
74+
* win,fs: consider broken pipe error a normal EOF (Momtchil Momtchev)
75+
76+
* document the values of enum uv_stdio_flags (Paul Evans)
77+
78+
* win,loop: add missing uv_update_time (twosee)
79+
80+
* win,fs: avoid closing an invalid handle (Jameson Nash)
81+
82+
* fix oopsie from
83+
84+
* doc: clarify android api level (Ben Noordhuis)
85+
86+
* win: fix style nits [NFC] (Jameson Nash)
87+
88+
* test: fix flaky udp_mmsg test (Santiago Gimeno)
89+
90+
* test: fix ipc_send_recv_pipe flakiness (Ben Noordhuis)
91+
92+
* doc: checkout -> check out (wyckster)
93+
94+
* core: change uv_get_password uid/gid to unsigned (Jameson Nash)
95+
96+
* hurd: unbreak build on GNU/Hurd (Vittore F. Scolari)
97+
98+
* freebsd: use copy_file_range() in uv_fs_sendfile() (David Carlier)
99+
100+
* test: use closefd in runner-unix.c (Guilherme Íscaro)
101+
102+
* Reland "macos: use posix_spawn instead of fork" (Jameson Nash)
103+
104+
* android: fix build error when no ifaddrs.h (ssrlive)
105+
106+
* unix,win: add uv_available_parallelism() (Ben Noordhuis)
107+
108+
* process: remove OpenBSD from kevent list (Jameson Nash)
109+
110+
* zos: fix build breakage (Ben Noordhuis)
111+
112+
* process: only use F_DUPFD_CLOEXEC if it is defined (Jameson Nash)
113+
114+
* win,poll: add the MSAFD GUID for AF_UNIX (roflcopter4)
115+
116+
* unix: simplify uv__cloexec_fcntl() (Ben Noordhuis)
117+
118+
* doc: add secondary GPG ID for vtjnash (Jameson Nash)
119+
120+
* unix: remove uv__cloexec_ioctl() (Jameson Nash)
121+
122+
1123
2022.01.05, Version 1.43.0 (Stable), 988f2bfc4defb9a85a536a3e645834c161143ee0
2124

3125
Changes since version 1.42.0:
@@ -18,73 +140,73 @@ Changes since version 1.42.0:
18140

19141
* win,fsevent: fix uv_fs_event_stop() assert (Ben Noordhuis)
20142

21-
* unix: remove redundant include in unix.h (
143+
* unix: remove redundant include in unix.h (Juan José Arboleda)
22144

23-
* doc: mark SmartOS as Tier 3 support (
145+
* doc: mark SmartOS as Tier 3 support (Ben Noordhuis)
24146

25-
* doc: fix broken links for netbsd's sysctl manpage (
147+
* doc: fix broken links for netbsd's sysctl manpage (YAKSH BARIYA)
26148

27-
* misc: adjust stalebot deadline (
149+
* misc: adjust stalebot deadline (Ben Noordhuis)
28150

29-
* test: remove `dns-server.c` as it is not used anywhere (
151+
* test: remove `dns-server.c` as it is not used anywhere (Darshan Sen)
30152

31-
* build: fix non-cmake android builds (
153+
* build: fix non-cmake android builds (YAKSH BARIYA)
32154

33-
* doc: replace pyuv with uvloop (
155+
* doc: replace pyuv with uvloop (Ofek Lev)
34156

35-
* asan: fix some tests (
157+
* asan: fix some tests (Jameson Nash)
36158

37-
* build: add experimental TSAN configuration (
159+
* build: add experimental TSAN configuration (Jameson Nash)
38160

39-
* pipe: remove useless assertion (
161+
* pipe: remove useless assertion (~locpyl-tidnyd)
40162

41-
* bsd: destroy mutex in uv__process_title_cleanup() (
163+
* bsd: destroy mutex in uv__process_title_cleanup() (Darshan Sen)
42164

43-
* build: add windows build to CI (
165+
* build: add windows build to CI (Darshan Sen)
44166

45-
* win,fs: fix error code in uv_fs_read() and uv_fs_write() ( Sen)
167+
* win,fs: fix error code in uv_fs_read() and uv_fs_write() (Darshan Sen)
46168

47-
* build: add macos-latest to ci matrix (
169+
* build: add macos-latest to ci matrix (Ben Noordhuis)
48170

49-
* udp: fix &/&& typo in macro condition (
171+
* udp: fix &/&& typo in macro condition (Evan Miller)
50172

51173
* build: install cmake package module (Petr Menšík)
52174

53-
* win: fix build for mingw32 (
175+
* win: fix build for mingw32 (Nicolas Noble)
54176

55177
* build: fix build failures with MinGW new headers (erw7)
56178

57-
* build: fix win build with cmake versions before v3.14 (
179+
* build: fix win build with cmake versions before v3.14 (AJ Heller)
58180

59-
* unix: support aarch64 in uv_cpu_info() (
181+
* unix: support aarch64 in uv_cpu_info() (Juan José Arboleda)
60182

61-
* linux: work around CIFS EPERM bug (
183+
* linux: work around CIFS EPERM bug (Ben Noordhuis)
62184

63-
* sunos: Oracle Developer Studio support (
185+
* sunos: Oracle Developer Studio support (Stacey Marshall)
64186

65-
* Revert "sunos: Oracle Developer Studio support (
187+
* Revert "sunos: Oracle Developer Studio support (cjihrig)
66188

67-
* sunos: Oracle Developer Studio support (
189+
* sunos: Oracle Developer Studio support (Stacey Marshall)
68190

69-
* stream: permit read after seeing EOF (
191+
* stream: permit read after seeing EOF (Jameson Nash)
70192

71-
* thread: initialize uv_thread_self for all threads (
193+
* thread: initialize uv_thread_self for all threads (Jameson Nash)
72194

73-
* kqueue: ignore write-end closed notifications (
195+
* kqueue: ignore write-end closed notifications (Jameson Nash)
74196

75-
* macos: fix the cfdata length in uv__get_cpu_speed ( Bache)
197+
* macos: fix the cfdata length in uv__get_cpu_speed (Jesper Storm Bache)
76198

77-
* unix,win: add uv_ip_name to get name from sockaddr (
199+
* unix,win: add uv_ip_name to get name from sockaddr (Campbell He)
78200

79201
* win,test: fix a few typos (AJ Heller)
80202

81-
* zos: use destructor for uv__threadpool_cleanup() ( Zhang)
203+
* zos: use destructor for uv__threadpool_cleanup() (Wayne Zhang)
82204

83-
* linux: use MemAvailable instead of MemFree (
205+
* linux: use MemAvailable instead of MemFree (Andrey Hohutkin)
84206

85-
* freebsd: call dlerror() only if necessary (
207+
* freebsd: call dlerror() only if necessary (Jameson Nash)
86208

87-
* bsd,windows,zos: fix udp disconnect EINVAL (
209+
* bsd,windows,zos: fix udp disconnect EINVAL (deal)
88210

89211

90212
2021.07.21, Version 1.42.0 (Stable), 6ce14710da7079eb248868171f6343bc409ea3a4

deps/uv/LICENSE

-4
Original file line numberDiff line numberDiff line change
@@ -64,7 +64,3 @@ The externally maintained libraries used by libuv are:
6464

6565
- pthread-fixes.c, copyright Google Inc. and Sony Mobile Communications AB.
6666
Three clause BSD license.
67-
68-
- android-ifaddrs.h, android-ifaddrs.c, copyright Berkeley Software Design
69-
Inc, Kenneth MacKay and Emergya (Cloud4all, FP7/2007-2013, grant agreement
70-
n° 289016). Three clause BSD license.

deps/uv/Makefile.am

+10-9
Original file line numberDiff line numberDiff line change
@@ -27,8 +27,8 @@ uvinclude_HEADERS = include/uv/errno.h \
2727
CLEANFILES =
2828

2929
lib_LTLIBRARIES = libuv.la
30-
libuv_la_CFLAGS = @CFLAGS@
31-
libuv_la_LDFLAGS = -no-undefined -version-info 1:0:0
30+
libuv_la_CFLAGS = $(AM_CFLAGS)
31+
libuv_la_LDFLAGS = $(AM_LDFLAGS) -no-undefined -version-info 1:0:0
3232
libuv_la_SOURCES = src/fs-poll.c \
3333
src/heap-inl.h \
3434
src/idna.c \
@@ -131,15 +131,15 @@ EXTRA_DIST = test/fixtures/empty_file \
131131

132132
TESTS = test/run-tests
133133
check_PROGRAMS = test/run-tests
134-
test_run_tests_CFLAGS =
134+
test_run_tests_CFLAGS = $(AM_CFLAGS)
135135

136136
if SUNOS
137137
# Can't be turned into a CC_CHECK_CFLAGS in configure.ac, it makes compilers
138138
# on other platforms complain that the argument is unused during compilation.
139139
test_run_tests_CFLAGS += -pthreads
140140
endif
141141

142-
test_run_tests_LDFLAGS =
142+
test_run_tests_LDFLAGS = $(AM_LDFLAGS)
143143
test_run_tests_SOURCES = test/blackhole-server.c \
144144
test/echo-server.c \
145145
test/run-tests.c \
@@ -388,10 +388,8 @@ libuv_la_SOURCES += src/unix/aix-common.c \
388388
endif
389389

390390
if ANDROID
391-
uvinclude_HEADERS += include/uv/android-ifaddrs.h
392391
libuv_la_CFLAGS += -D_GNU_SOURCE
393-
libuv_la_SOURCES += src/unix/android-ifaddrs.c \
394-
src/unix/pthread-fixes.c
392+
libuv_la_SOURCES += src/unix/pthread-fixes.c
395393
endif
396394

397395
if CYGWIN
@@ -457,9 +455,12 @@ endif
457455

458456
if HURD
459457
uvinclude_HEADERS += include/uv/posix.h
460-
libuv_la_SOURCES += src/unix/no-fsevents.c \
458+
libuv_la_SOURCES += src/unix/bsd-ifaddrs.c \
459+
src/unix/no-fsevents.c \
460+
src/unix/no-proctitle.c \
461461
src/unix/posix-hrtime.c \
462-
src/unix/posix-poll.c
462+
src/unix/posix-poll.c \
463+
src/unix/hurd.c
463464
endif
464465

465466
if LINUX

deps/uv/configure.ac

+1-1
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,7 @@
1313
# OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
1414

1515
AC_PREREQ(2.57)
16-
AC_INIT([libuv], [1.43.0], [https://github.com/libuv/libuv/issues])
16+
AC_INIT([libuv], [1.44.1], [https://github.com/libuv/libuv/issues])
1717
AC_CONFIG_MACRO_DIR([m4])
1818
m4_include([m4/libuv-extra-automake-flags.m4])
1919
m4_include([m4/as_case.m4])

deps/uv/docs/src/design.rst

+1-1
Original file line numberDiff line numberDiff line change
@@ -125,7 +125,7 @@ File I/O
125125
Unlike network I/O, there are no platform-specific file I/O primitives libuv could rely on,
126126
so the current approach is to run blocking file I/O operations in a thread pool.
127127

128-
For a thorough explanation of the cross-platform file I/O landscape, checkout
128+
For a thorough explanation of the cross-platform file I/O landscape, check out
129129
`this post <https://blog.libtorrent.org/2012/10/asynchronous-disk-io/>`_.
130130

131131
libuv currently uses a global thread pool on which all loops can queue work. 3 types of

deps/uv/docs/src/misc.rst

+20-1
Original file line numberDiff line numberDiff line change
@@ -312,7 +312,7 @@ API
312312
313313
.. c:function:: int uv_uptime(double* uptime)
314314
315-
Gets the current system uptime.
315+
Gets the current system uptime. Depending on the system full or fractional seconds are returned.
316316
317317
.. c:function:: int uv_getrusage(uv_rusage_t* rusage)
318318
@@ -334,11 +334,30 @@ API
334334
335335
.. versionadded:: 1.16.0
336336
337+
.. c:function:: unsigned int uv_available_parallelism(void)
338+
339+
Returns an estimate of the default amount of parallelism a program should
340+
use. Always returns a non-zero value.
341+
342+
On Linux, inspects the calling thread's CPU affinity mask to determine if
343+
it has been pinned to specific CPUs.
344+
345+
On Windows, the available parallelism may be underreported on systems with
346+
more than 64 logical CPUs.
347+
348+
On other platforms, reports the number of CPUs that the operating system
349+
considers to be online.
350+
351+
.. versionadded:: 1.44.0
352+
337353
.. c:function:: int uv_cpu_info(uv_cpu_info_t** cpu_infos, int* count)
338354
339355
Gets information about the CPUs on the system. The `cpu_infos` array will
340356
have `count` elements and needs to be freed with :c:func:`uv_free_cpu_info`.
341357
358+
Use :c:func:`uv_available_parallelism` if you need to know how many CPUs
359+
are available for threads or child processes.
360+
342361
.. c:function:: void uv_free_cpu_info(uv_cpu_info_t* cpu_infos, int count)
343362
344363
Frees the `cpu_infos` array previously allocated with :c:func:`uv_cpu_info`.

0 commit comments

Comments
 (0)