Skip to content

Commit b38190e

Browse files
cjihrigMylesBorins
authored andcommitted
deps: upgrade to libuv 1.23.1
Backport-PR-URL: #24103 PR-URL: #22997 Reviewed-By: Anna Henningsen <[email protected]> Reviewed-By: Matteo Collina <[email protected]> Reviewed-By: James M Snell <[email protected]> Reviewed-By: Ruben Bridgewater <[email protected]>
1 parent d9d541c commit b38190e

Some content is hidden

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

43 files changed

+587
-366
lines changed

deps/uv/AUTHORS

+5
Original file line numberDiff line numberDiff line change
@@ -346,3 +346,8 @@ Paolo Greppi <[email protected]>
346346
Shelley Vohr <[email protected]>
347347
Ujjwal Sharma <[email protected]>
348348
Michał Kozakiewicz <[email protected]>
349+
350+
Jeremiah Senkpiel <[email protected]>
351+
Andy Zhang <[email protected]>
352+
353+
Ryan Liptak <[email protected]>

deps/uv/ChangeLog

+46
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,49 @@
1+
2018.09.22, Version 1.23.1 (Stable), d2282b3d67821dc53c907c2155fa8c5c6ce25180
2+
3+
Changes since version 1.23.0:
4+
5+
* unix,win: limit concurrent DNS calls to nthreads/2 (Anna Henningsen)
6+
7+
* doc: add addaleax to maintainers (Anna Henningsen)
8+
9+
* doc: add missing slash in stream.rst (Emil Bay)
10+
11+
* unix,fs: use utimes & friends for uv_fs_utime (Jeremiah Senkpiel)
12+
13+
* unix,fs: remove linux fallback from utimesat() (Jeremiah Senkpiel)
14+
15+
* unix,fs: remove uv__utimesat() syscall fallback (Jeremiah Senkpiel)
16+
17+
* doc: fix argument name in tcp.rts (Emil Bay)
18+
19+
* doc: notes on running tests, benchmarks, tools (Jamie Davis)
20+
21+
* linux: remove epoll syscall wrappers (Ben Noordhuis)
22+
23+
* linux: drop code path for epoll_pwait-less kernels (Ben Noordhuis)
24+
25+
* Partially revert "win,code: remove GetQueuedCompletionStatus-based poller"
26+
(Jameson Nash)
27+
28+
* build: add compile for android arm64/x86/x86-64 (Andy Zhang)
29+
30+
* doc: clarify that some remarks apply to windows (Bert Belder)
31+
32+
* test: fix compiler warnings (Jamie Davis)
33+
34+
* ibmi: return 0 from uv_resident_set_memory() (dmabupt)
35+
36+
* win: fix uv_udp_recv_start() error translation (Ryan Liptak)
37+
38+
* win,doc: improve uv_os_setpriority() documentation (Bartosz Sosnowski)
39+
40+
* test: increase upper bound in condvar_5 (Jamie Davis)
41+
42+
* win,tty: remove deadcode (Jameson Nash)
43+
44+
* stream: autodetect direction (Jameson Nash)
45+
46+
147
2018.08.18, Version 1.23.0 (Stable), 7ebb26225f2eaae6db22f4ef34ce76fa16ff89ec
248

349
Changes since version 1.22.0:

deps/uv/MAINTAINERS.md

+1
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,7 @@
33

44
libuv is currently managed by the following individuals:
55

6+
* **Anna Henningsen** ([@addaleax](https://github.com/addaleax))
67
* **Bartosz Sosnowski** ([@bzoz](https://github.com/bzoz))
78
* **Ben Noordhuis** ([@bnoordhuis](https://github.com/bnoordhuis))
89
- GPG key: D77B 1E34 243F BAF0 5F8E 9CC3 4F55 C8C8 46AB 89B9 (pubkey-bnoordhuis)

deps/uv/README.md

+77-2
Original file line numberDiff line numberDiff line change
@@ -282,8 +282,31 @@ Make sure that you specify the architecture you wish to build for in the
282282

283283
Run:
284284

285+
For arm
286+
287+
```bash
288+
$ source ./android-configure-arm NDK_PATH gyp [API_LEVEL]
289+
$ make -C out
290+
```
291+
292+
or for arm64
293+
294+
```bash
295+
$ source ./android-configure-arm64 NDK_PATH gyp [API_LEVEL]
296+
$ make -C out
297+
```
298+
299+
or for x86
300+
301+
```bash
302+
$ source ./android-configure-x86 NDK_PATH gyp [API_LEVEL]
303+
$ make -C out
304+
```
305+
306+
or for x86_64
307+
285308
```bash
286-
$ source ./android-configure NDK_PATH gyp [API_LEVEL]
309+
$ source ./android-configure-x86_64 NDK_PATH gyp [API_LEVEL]
287310
$ make -C out
288311
```
289312

@@ -310,14 +333,66 @@ $ ninja -C out/Release
310333

311334
### Running tests
312335

313-
Run:
336+
#### Build
337+
338+
Build (includes tests):
314339

315340
```bash
316341
$ ./gyp_uv.py -f make
317342
$ make -C out
343+
```
344+
345+
#### Run all tests
346+
347+
```bash
318348
$ ./out/Debug/run-tests
319349
```
320350

351+
#### Run one test
352+
353+
The list of all tests is in `test/test-list.h`.
354+
355+
This invocation will cause the `run-tests` driver to fork and execute `TEST_NAME` in a child process:
356+
357+
```bash
358+
$ ./out/Debug/run-tests TEST_NAME
359+
```
360+
361+
This invocation will cause the `run-tests` driver to execute the test within the `run-tests` process:
362+
363+
```bash
364+
$ ./out/Debug/run-tests TEST_NAME TEST_NAME
365+
```
366+
367+
#### Debugging tools
368+
369+
When running the test from within the `run-tests` process (`run-tests TEST_NAME TEST_NAME`), tools like gdb and valgrind work normally.
370+
When running the test from a child of the `run-tests` process (`run-tests TEST_NAME`), use these tools in a fork-aware manner.
371+
372+
##### Fork-aware gdb
373+
374+
Use the [follow-fork-mode](https://sourceware.org/gdb/onlinedocs/gdb/Forks.html) setting:
375+
376+
```
377+
$ gdb --args out/Debug/run-tests TEST_NAME
378+
379+
(gdb) set follow-fork-mode child
380+
...
381+
```
382+
383+
##### Fork-aware valgrind
384+
385+
Use the `--trace-children=yes` parameter:
386+
387+
```bash
388+
$ valgrind --trace-children=yes -v --tool=memcheck --leak-check=full --track-origins=yes --leak-resolution=high --show-reachable=yes --log-file=memcheck.log out/Debug/run-tests TEST_NAME
389+
```
390+
391+
### Running benchmarks
392+
393+
See the section on running tests.
394+
The benchmark driver is `out/Debug/run-benchmarks` and the benchmarks are listed in `test/benchmark-list.h`.
395+
321396
## Supported Platforms
322397

323398
Check the [SUPPORTED_PLATFORMS file](SUPPORTED_PLATFORMS.md).

deps/uv/android-configure deps/uv/android-configure-arm

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
#!/bin/bash
22

3-
export TOOLCHAIN=$PWD/android-toolchain
3+
export TOOLCHAIN=$PWD/android-toolchain-arm
44
mkdir -p $TOOLCHAIN
55
API=${3:-24}
66
$1/build/tools/make-standalone-toolchain.sh \

deps/uv/android-configure-arm64

+23
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,23 @@
1+
#!/bin/bash
2+
3+
export TOOLCHAIN=$PWD/android-toolchain-arm64
4+
mkdir -p $TOOLCHAIN
5+
API=${3:-24}
6+
$1/build/tools/make-standalone-toolchain.sh \
7+
--toolchain=aarch64-linux-android-4.9 \
8+
--arch=arm64 \
9+
--install-dir=$TOOLCHAIN \
10+
--platform=android-$API \
11+
--force
12+
export PATH=$TOOLCHAIN/bin:$PATH
13+
export AR=aarch64-linux-android-ar
14+
export CC=aarch64-linux-android-gcc
15+
export CXX=aarch64-linux-android-g++
16+
export LINK=aarch64-linux-android-g++
17+
export PLATFORM=android
18+
export CFLAGS="-D__ANDROID_API__=$API"
19+
20+
if [[ $2 == 'gyp' ]]
21+
then
22+
./gyp_uv.py -Dtarget_arch=arm64 -DOS=android -f make-android
23+
fi

deps/uv/android-configure-x86

+23
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,23 @@
1+
#!/bin/bash
2+
3+
export TOOLCHAIN=$PWD/android-toolchain-x86
4+
mkdir -p $TOOLCHAIN
5+
API=${3:-24}
6+
$1/build/tools/make-standalone-toolchain.sh \
7+
--toolchain=x86-4.9 \
8+
--arch=x86 \
9+
--install-dir=$TOOLCHAIN \
10+
--platform=android-$API \
11+
--force
12+
export PATH=$TOOLCHAIN/bin:$PATH
13+
export AR=i686-linux-android-ar
14+
export CC=i686-linux-android-gcc
15+
export CXX=i686-linux-android-g++
16+
export LINK=i686-linux-android-g++
17+
export PLATFORM=android
18+
export CFLAGS="-D__ANDROID_API__=$API"
19+
20+
if [[ $2 == 'gyp' ]]
21+
then
22+
./gyp_uv.py -Dtarget_arch=x86 -DOS=android -f make-android
23+
fi

deps/uv/android-configure-x86_64

+25
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,25 @@
1+
#!/bin/bash
2+
3+
export TOOLCHAIN=$PWD/android-toolchain-x86_64
4+
mkdir -p $TOOLCHAIN
5+
API=${3:-24}
6+
$1/build/tools/make-standalone-toolchain.sh \
7+
--toolchain=x86_64-4.9 \
8+
--arch=x86_64 \
9+
--install-dir=$TOOLCHAIN \
10+
--platform=android-$API \
11+
--force
12+
export PATH=$TOOLCHAIN/bin:$PATH
13+
export AR=x86_64-linux-android-ar
14+
export CC=x86_64-linux-android-gcc
15+
export CXX=x86_64-linux-android-g++
16+
export LINK=x86_64-linux-android-g++
17+
export PLATFORM=android
18+
export CFLAGS="-D__ANDROID_API__=$API -fPIC"
19+
export CXXFLAGS="-D__ANDROID_API__=$API -fPIC"
20+
export LDFLAGS="-fPIC"
21+
22+
if [[ $2 == 'gyp' ]]
23+
then
24+
./gyp_uv.py -Dtarget_arch=x86_64 -DOS=android -f make-android
25+
fi

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.23.0], [https://github.com/libuv/libuv/issues])
16+
AC_INIT([libuv], [1.23.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/misc.rst

+4
Original file line numberDiff line numberDiff line change
@@ -544,4 +544,8 @@ API
544544
process priority, the result will equal one of the `UV_PRIORITY`
545545
constants, and not necessarily the exact value of `priority`.
546546
547+
.. note::
548+
On Windows, setting `PRIORITY_HIGHEST` will only work for elevated user,
549+
for others it will be silently reduced to `PRIORITY_HIGH`.
550+
547551
.. versionadded:: 1.23.0

deps/uv/docs/src/signal.rst

+5-5
Original file line numberDiff line numberDiff line change
@@ -17,12 +17,12 @@ Reception of some signals is emulated on Windows:
1717
program is given approximately 10 seconds to perform cleanup. After that
1818
Windows will unconditionally terminate it.
1919

20-
Watchers for other signals can be successfully created, but these signals
21-
are never received. These signals are: `SIGILL`, `SIGABRT`, `SIGFPE`, `SIGSEGV`,
22-
`SIGTERM` and `SIGKILL.`
20+
* Watchers for other signals can be successfully created, but these signals
21+
are never received. These signals are: `SIGILL`, `SIGABRT`, `SIGFPE`, `SIGSEGV`,
22+
`SIGTERM` and `SIGKILL.`
2323

24-
Calls to raise() or abort() to programmatically raise a signal are
25-
not detected by libuv; these will not trigger a signal watcher.
24+
* Calls to raise() or abort() to programmatically raise a signal are
25+
not detected by libuv; these will not trigger a signal watcher.
2626

2727
.. note::
2828
On Linux SIGRT0 and SIGRT1 (signals 32 and 33) are used by the NPTL pthreads library to

deps/uv/docs/src/stream.rst

+1-1
Original file line numberDiff line numberDiff line change
@@ -45,7 +45,7 @@ Data types
4545
`nread` might be 0, which does *not* indicate an error or EOF. This
4646
is equivalent to ``EAGAIN`` or ``EWOULDBLOCK`` under ``read(2)``.
4747

48-
The callee is responsible for stopping closing the stream when an error happens
48+
The callee is responsible for stopping/closing the stream when an error happens
4949
by calling :c:func:`uv_read_stop` or :c:func:`uv_close`. Trying to read
5050
from the stream again is undefined.
5151

deps/uv/docs/src/tcp.rst

+2-2
Original file line numberDiff line numberDiff line change
@@ -86,13 +86,13 @@ API
8686
8787
.. c:function:: int uv_tcp_getsockname(const uv_tcp_t* handle, struct sockaddr* name, int* namelen)
8888
89-
Get the current address to which the handle is bound. `addr` must point to
89+
Get the current address to which the handle is bound. `name` must point to
9090
a valid and big enough chunk of memory, ``struct sockaddr_storage`` is
9191
recommended for IPv4 and IPv6 support.
9292
9393
.. c:function:: int uv_tcp_getpeername(const uv_tcp_t* handle, struct sockaddr* name, int* namelen)
9494
95-
Get the address of the peer connected to the handle. `addr` must point to
95+
Get the address of the peer connected to the handle. `name` must point to
9696
a valid and big enough chunk of memory, ``struct sockaddr_storage`` is
9797
recommended for IPv4 and IPv6 support.
9898

deps/uv/docs/src/tty.rst

+5-6
Original file line numberDiff line numberDiff line change
@@ -46,7 +46,7 @@ N/A
4646
API
4747
---
4848

49-
.. c:function:: int uv_tty_init(uv_loop_t* loop, uv_tty_t* handle, uv_file fd, int readable)
49+
.. c:function:: int uv_tty_init(uv_loop_t* loop, uv_tty_t* handle, uv_file fd, int unused)
5050
5151
Initialize a new TTY stream with the given file descriptor. Usually the
5252
file descriptor will be:
@@ -55,9 +55,6 @@ API
5555
* 1 = stdout
5656
* 2 = stderr
5757
58-
`readable`, specifies if you plan on calling :c:func:`uv_read_start` with
59-
this stream. stdin is readable, stdout is not.
60-
6158
On Unix this function will determine the path of the fd of the terminal
6259
using :man:`ttyname_r(3)`, open it, and use it if the passed file descriptor
6360
refers to a TTY. This lets libuv put the tty in non-blocking mode without
@@ -67,8 +64,10 @@ API
6764
ioctl TIOCGPTN or TIOCPTYGNAME, for instance OpenBSD and Solaris.
6865
6966
.. note::
70-
If reopening the TTY fails, libuv falls back to blocking writes for
71-
non-readable TTY streams.
67+
If reopening the TTY fails, libuv falls back to blocking writes.
68+
69+
.. versionchanged:: 1.23.1: the `readable` parameter is now unused and ignored.
70+
The correct value will now be auto-detected from the kernel.
7271
7372
.. versionchanged:: 1.9.0: the path of the TTY is determined by
7473
:man:`ttyname_r(3)`. In earlier versions libuv opened

deps/uv/include/uv/version.h

+1-1
Original file line numberDiff line numberDiff line change
@@ -32,7 +32,7 @@
3232

3333
#define UV_VERSION_MAJOR 1
3434
#define UV_VERSION_MINOR 23
35-
#define UV_VERSION_PATCH 0
35+
#define UV_VERSION_PATCH 1
3636
#define UV_VERSION_IS_RELEASE 1
3737
#define UV_VERSION_SUFFIX ""
3838

0 commit comments

Comments
 (0)