Skip to content

Commit 3b1e4bd

Browse files
nodejs-github-bottargos
authored andcommitted
deps: update libuv to 1.51.0
PR-URL: #58124 Reviewed-By: Anna Henningsen <[email protected]> Reviewed-By: Colin Ihrig <[email protected]> Reviewed-By: Rafael Gonzaga <[email protected]> Reviewed-By: Santiago Gimeno <[email protected]> Reviewed-By: Juan José Arboleda <[email protected]> Reviewed-By: Antoine du Hamel <[email protected]>
1 parent 72f2a22 commit 3b1e4bd

Some content is hidden

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

59 files changed

+1081
-390
lines changed

deps/uv/.readthedocs.yaml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@ version: 2
22

33
sphinx:
44
builder: html
5-
configuration: null
5+
configuration: docs/src/conf.py
66
fail_on_warning: false
77

88
build:

deps/uv/AUTHORS

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -592,3 +592,15 @@ Thad House <[email protected]>
592592
Julian A Avar C <[email protected]>
593593
amcgoogan <[email protected]>
594594
Rafael Gonzaga <[email protected]>
595+
Morten Engelhardt Olsen <[email protected]>
596+
597+
Julio Jordán <[email protected]>
598+
Jinho Jang <[email protected]>
599+
Velikiy Kirill <[email protected]>
600+
601+
Paolo Insogna <[email protected]>
602+
Robert Nagy <[email protected]>
603+
mugitya03 <[email protected]>
604+
Itay Bookstein <[email protected]>
605+
606+

deps/uv/CMakeLists.txt

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,7 @@ include(CTest)
2020
set(CMAKE_C_VISIBILITY_PRESET hidden)
2121
set(CMAKE_C_STANDARD_REQUIRED ON)
2222
set(CMAKE_C_EXTENSIONS ON)
23-
set(CMAKE_C_STANDARD 90)
23+
set(CMAKE_C_STANDARD 11)
2424

2525
set(CMAKE_EXPORT_COMPILE_COMMANDS ON)
2626

@@ -434,6 +434,7 @@ endif()
434434

435435
if(APPLE OR CMAKE_SYSTEM_NAME MATCHES "DragonFly|FreeBSD|Linux|NetBSD|OpenBSD")
436436
list(APPEND uv_test_libraries util)
437+
list(APPEND uv_libraries m)
437438
endif()
438439

439440
if(CYGWIN OR MSYS)
@@ -583,6 +584,7 @@ if(LIBUV_BUILD_TESTS)
583584
test/test-loop-close.c
584585
test/test-loop-configure.c
585586
test/test-loop-handles.c
587+
test/test-loop-oom.c
586588
test/test-loop-stop.c
587589
test/test-loop-time.c
588590
test/test-metrics.c

deps/uv/ChangeLog

Lines changed: 91 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,94 @@
1-
2025.01.15, Version 1.50.0 (Stable)
1+
2025.04.25, Version 1.51.0 (Stable)
2+
3+
Changes since version 1.50.0:
4+
5+
* win: fix leak in uv_os_tmpdir (Saúl Ibarra Corretgé)
6+
7+
* docs: fix RTD build (Saúl Ibarra Corretgé)
8+
9+
* win: lazy-load [GS]etThreadDescription symbols (Ben Noordhuis)
10+
11+
* linux: try preadv64/pwritev64 before preadv/pwritev (Ben Noordhuis)
12+
13+
* win: check cwd length before spawning a child process (Morten Engelhardt
14+
Olsen)
15+
16+
* macos,bsd: handle missing /dev/null in chroot env (Andrey)
17+
18+
* doc: fix README link text (Julio Jordán)
19+
20+
* win: fix order of FILE_STAT_BASIC_INFORMATION struct fields (Hüseyin Açacak)
21+
22+
* macos: increase child process stdio buffer size (Jinho Jang)
23+
24+
* doc: add C3 bindings to LINKS.md (Velikiy Kirill)
25+
26+
* unix: remove unnecessary errno.h include in poll.c (Juan José Arboleda)
27+
28+
* win: fix the inconsistency in volume serial number (Hüseyin Açacak)
29+
30+
* unix: add thread affinity support on openharmony (rainlow)
31+
32+
* unix: enable getrusage for SunOS (Paolo Insogna)
33+
34+
* unix,win: accept NAN/INFINITY as file timestamps (Ben Noordhuis)
35+
36+
* win: add ENABLE_VIRTUAL_TERMINAL_INPUT raw tty mode (Anna Henningsen)
37+
38+
* test: handle UV_ENOTSUP in platform_output (cjihrig)
39+
40+
* doc: fix rendering of threading.html (Tobias Nießen)
41+
42+
* unix,sunos: enable use of sendmmsg on Solaris and Illumos (Stacey Marshall)
43+
44+
* unix: handle out of memory in iface name copy (Ben Noordhuis)
45+
46+
* openbsd: do not error out if cpuspeed is not available (Robert Nagy)
47+
48+
* test: skip thread_name_threadpool on AIX/IBMi (Abdirahim Musse)
49+
50+
* aix,ibmi: fix undeclared identifiers (Richard Lau)
51+
52+
* unix,sunos: prefer SO_REUSEPORT for load balancing (Stacey Marshall)
53+
54+
* doc: free lib pointer before function return (mugitya03)
55+
56+
* test: link with libm (Juan José Arboleda)
57+
58+
* style: rename parameter to match definition (Mohammed Keyvanzadeh)
59+
60+
* test: support partial output lines in test runner (cjihrig)
61+
62+
* build: switch from c90 to c11 (Ben Noordhuis)
63+
64+
* linux: allow nul bytes in abstract socket address (Itay Bookstein)
65+
66+
* sunos: use pipe2 on solaris and illumos (Andy Pan)
67+
68+
* unix: remove TOCTOU issues from uv_pipe_chmod (Ben Noordhuis)
69+
70+
* unix: use pipe_fname if getsockname returns nothing (crupest)
71+
72+
* haiku: use uint32 instead of uint32_t (AE1020)
73+
74+
* doc: update thread pool stack size comment (Ben Noordhuis)
75+
76+
* unix: improve uv_loop_init OOM handling (Ben Noordhuis)
77+
78+
* test: merge uv_tcp_connect callbacks (Juan José Arboleda)
79+
80+
* test: skip multievent tests on macOS with TSAN enabled (Juan José Arboleda)
81+
82+
* linux: align CPU quota calculation with Rust (Juan José Arboleda)
83+
84+
* kqueue: improve fs event watcher OOM handling (Juan José Arboleda)
85+
86+
* sunos: improve fs event watcher OOM handling (Juan José Arboleda)
87+
88+
* build: shorten instructions for cmake build (Juan José Arboleda)
89+
90+
91+
2025.01.15, Version 1.50.0 (Stable), 8fb9cb919489a48880680a56efecff6a7dfb4504
292

393
Changes since version 1.49.2:
494

deps/uv/LINKS.md

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -108,3 +108,5 @@
108108
* [node.pas](https://github.com/vovach777/node.pas) NodeJS-like ecosystem
109109
* Haskell
110110
* [Z.Haskell](https://z.haskell.world)
111+
* C3
112+
* [libuv.c3l](https://github.com/velikoss/libuv.c3l)

deps/uv/Makefile.am

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -206,12 +206,13 @@ test_run_tests_SOURCES = test/blackhole-server.c \
206206
test/test-ipc-send-recv.c \
207207
test/test-ipc.c \
208208
test/test-list.h \
209-
test/test-loop-handles.c \
210209
test/test-loop-alive.c \
211210
test/test-loop-close.c \
211+
test/test-loop-configure.c \
212+
test/test-loop-handles.c \
213+
test/test-loop-oom.c \
212214
test/test-loop-stop.c \
213215
test/test-loop-time.c \
214-
test/test-loop-configure.c \
215216
test/test-metrics.c \
216217
test/test-multiple-listen.c \
217218
test/test-mutexes.c \

deps/uv/README.md

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -189,9 +189,7 @@ $ make install
189189
To build with [CMake][]:
190190

191191
```bash
192-
$ mkdir -p build
193-
194-
$ (cd build && cmake .. -DBUILD_TESTING=ON) # generate project with tests
192+
$ cmake -B build -DBUILD_TESTING=ON # generate project with tests
195193
$ cmake --build build # add `-j <n>` with cmake >= 3.12
196194

197195
# Run tests:

deps/uv/SUPPORTED_PLATFORMS.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@
44
|---|---|---|---|
55
| GNU/Linux | Tier 1 | Linux >= 3.10 with glibc >= 2.17 | |
66
| macOS | Tier 1 | macOS >= 11 | Currently supported macOS releases |
7-
| Windows | Tier 1 | >= Windows 10 | VS 2015 and later are supported |
7+
| Windows | Tier 1 | >= Windows 10 | VS 2017 and later are supported |
88
| FreeBSD | Tier 2 | >= 12 | |
99
| AIX | Tier 2 | >= 6 | Maintainers: @libuv/aix |
1010
| IBM i | Tier 2 | >= IBM i 7.2 | Maintainers: @libuv/ibmi |

deps/uv/configure.ac

Lines changed: 2 additions & 2 deletions
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.50.0], [https://github.com/libuv/libuv/issues])
16+
AC_INIT([libuv], [1.51.0], [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])
@@ -33,7 +33,7 @@ CC_ATTRIBUTE_VISIBILITY([default], [
3333
# we exclude -fno-strict-aliasing for xlc
3434
CC_CHECK_FLAG_SUPPORTED_APPEND([-fno-strict-aliasing])
3535
CC_CHECK_CFLAGS_APPEND([-g])
36-
CC_CHECK_CFLAGS_APPEND([-std=gnu89])
36+
CC_CHECK_CFLAGS_APPEND([-std=gnu11])
3737
CC_CHECK_CFLAGS_APPEND([-Wall])
3838
CC_CHECK_CFLAGS_APPEND([-Wextra])
3939
CC_CHECK_CFLAGS_APPEND([-Wno-long-long])

deps/uv/docs/src/fs.rst

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -430,6 +430,12 @@ API
430430
431431
Equivalent to :man:`utime(2)`, :man:`futimes(3)` and :man:`lutimes(3)` respectively.
432432
433+
Passing `UV_FS_UTIME_NOW` as the atime or mtime sets the timestamp to the
434+
current time.
435+
436+
Passing `UV_FS_UTIME_OMIT` as the atime or mtime leaves the timestamp
437+
untouched.
438+
433439
.. note::
434440
z/OS: `uv_fs_lutime()` is not implemented for z/OS. It can still be called but will return
435441
``UV_ENOSYS``.

deps/uv/docs/src/index.rst

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -58,5 +58,5 @@ libuv can be downloaded from `here <https://dist.libuv.org/dist/>`_.
5858
Installation
5959
------------
6060

61-
Installation instructions can be found in `the README <https://github.com/libuv/libuv/blob/master/README.md>`_.
61+
Installation instructions can be found in the `README <https://github.com/libuv/libuv/blob/master/README.md>`_.
6262

deps/uv/docs/src/threading.rst

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -146,6 +146,8 @@ Threads
146146
a thread name can be: Linux, IBM i (16), macOS (64), Windows (32767), and NetBSD (32), etc. `uv_thread_setname()`
147147
will truncate it in case `name` is larger than the limit of the platform.
148148
149+
Not supported on Windows Server 2016, returns `UV_ENOSYS`.
150+
149151
.. versionadded:: 1.50.0
150152
151153
.. c:function:: int uv_thread_getname(uv_thread_t* tid, char* name, size_t* size)
@@ -155,17 +157,22 @@ Threads
155157
The buffer should be large enough to hold the name of the thread plus the trailing NUL, or it will be truncated to fit
156158
with the trailing NUL.
157159
160+
Not supported on Windows Server 2016, returns `UV_ENOSYS`.
161+
158162
.. versionadded:: 1.50.0
159163
160164
.. c:function:: int uv_thread_setpriority(uv_thread_t tid, int priority)
165+
161166
If the function succeeds, the return value is 0.
162167
If the function fails, the return value is less than zero.
163168
Sets the scheduling priority of the thread specified by tid. It requires elevated
164169
privilege to set specific priorities on some platforms.
165170
The priority can be set to the following constants. UV_THREAD_PRIORITY_HIGHEST,
166171
UV_THREAD_PRIORITY_ABOVE_NORMAL, UV_THREAD_PRIORITY_NORMAL,
167172
UV_THREAD_PRIORITY_BELOW_NORMAL, UV_THREAD_PRIORITY_LOWEST.
173+
168174
.. c:function:: int uv_thread_getpriority(uv_thread_t tid, int* priority)
175+
169176
If the function succeeds, the return value is 0.
170177
If the function fails, the return value is less than zero.
171178
Retrieves the scheduling priority of the thread specified by tid. The value in the

deps/uv/docs/src/threadpool.rst

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -20,10 +20,10 @@ is 1024).
2020
.. versionchanged:: 1.50.0 threads now have a default name of libuv-worker.
2121

2222
The threadpool is global and shared across all event loops. When a particular
23-
function makes use of the threadpool (i.e. when using :c:func:`uv_queue_work`)
23+
function makes use of the threadpool (e.g. when using :c:func:`uv_queue_work`)
2424
libuv preallocates and initializes the maximum number of threads allowed by
25-
``UV_THREADPOOL_SIZE``. This causes a relatively minor memory overhead
26-
(~1MB for 128 threads) but increases the performance of threading at runtime.
25+
``UV_THREADPOOL_SIZE``. More threads usually means more throughput but a higher
26+
memory footprint. Thread stacks grow lazily on most platforms though.
2727

2828
.. note::
2929
Note that even though a global thread pool which is shared across all events

deps/uv/docs/src/tty.rst

Lines changed: 7 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -27,10 +27,15 @@ Data types
2727
typedef enum {
2828
/* Initial/normal terminal mode */
2929
UV_TTY_MODE_NORMAL,
30-
/* Raw input mode (On Windows, ENABLE_WINDOW_INPUT is also enabled) */
30+
/*
31+
* Raw input mode (On Windows, ENABLE_WINDOW_INPUT is also enabled).
32+
* May become equivalent to UV_TTY_MODE_RAW_VT in future libuv versions.
33+
*/
3134
UV_TTY_MODE_RAW,
3235
/* Binary-safe I/O mode for IPC (Unix-only) */
33-
UV_TTY_MODE_IO
36+
UV_TTY_MODE_IO,
37+
/* Raw input mode. On Windows ENABLE_VIRTUAL_TERMINAL_INPUT is also set. */
38+
UV_TTY_MODE_RAW_VT
3439
} uv_tty_mode_t;
3540

3641
.. c:enum:: uv_tty_vtermstate_t

deps/uv/include/uv.h

Lines changed: 10 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -58,6 +58,7 @@ extern "C" {
5858
#include <stddef.h>
5959
#include <stdio.h>
6060
#include <stdint.h>
61+
#include <math.h>
6162

6263
/* Internal type, do not use. */
6364
struct uv__queue {
@@ -805,10 +806,15 @@ struct uv_tty_s {
805806
typedef enum {
806807
/* Initial/normal terminal mode */
807808
UV_TTY_MODE_NORMAL,
808-
/* Raw input mode (On Windows, ENABLE_WINDOW_INPUT is also enabled) */
809+
/*
810+
* Raw input mode (On Windows, ENABLE_WINDOW_INPUT is also enabled).
811+
* May become equivalent to UV_TTY_MODE_RAW_VT in future libuv versions.
812+
*/
809813
UV_TTY_MODE_RAW,
810814
/* Binary-safe I/O mode for IPC (Unix-only) */
811-
UV_TTY_MODE_IO
815+
UV_TTY_MODE_IO,
816+
/* Raw input mode. On Windows ENABLE_VIRTUAL_TERMINAL_INPUT is also set. */
817+
UV_TTY_MODE_RAW_VT
812818
} uv_tty_mode_t;
813819

814820
typedef enum {
@@ -1585,6 +1591,8 @@ UV_EXTERN int uv_fs_chmod(uv_loop_t* loop,
15851591
const char* path,
15861592
int mode,
15871593
uv_fs_cb cb);
1594+
#define UV_FS_UTIME_NOW (INFINITY)
1595+
#define UV_FS_UTIME_OMIT (NAN)
15881596
UV_EXTERN int uv_fs_utime(uv_loop_t* loop,
15891597
uv_fs_t* req,
15901598
const char* path,

deps/uv/include/uv/version.h

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -31,7 +31,7 @@
3131
*/
3232

3333
#define UV_VERSION_MAJOR 1
34-
#define UV_VERSION_MINOR 50
34+
#define UV_VERSION_MINOR 51
3535
#define UV_VERSION_PATCH 0
3636
#define UV_VERSION_IS_RELEASE 1
3737
#define UV_VERSION_SUFFIX ""

deps/uv/include/uv/win.h

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -499,8 +499,11 @@ typedef struct {
499499
union { \
500500
struct { \
501501
/* Used for readable TTY handles */ \
502-
/* TODO: remove me in v2.x. */ \
503-
HANDLE unused_; \
502+
union { \
503+
/* TODO: remove me in v2.x. */ \
504+
HANDLE unused_; \
505+
int mode; \
506+
} mode; \
504507
uv_buf_t read_line_buffer; \
505508
HANDLE read_raw_wait; \
506509
/* Fields used for translating win keystrokes into vt100 characters */ \

deps/uv/src/fs-poll.c

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -51,7 +51,7 @@ struct poll_ctx {
5151
static int statbuf_eq(const uv_stat_t* a, const uv_stat_t* b);
5252
static void poll_cb(uv_fs_t* req);
5353
static void timer_cb(uv_timer_t* timer);
54-
static void timer_close_cb(uv_handle_t* handle);
54+
static void timer_close_cb(uv_handle_t* timer);
5555

5656
static uv_stat_t zero_statbuf;
5757

0 commit comments

Comments
 (0)