Skip to content

Commit

Permalink
deps: upgrade to libuv 1.30.1
Browse files Browse the repository at this point in the history
This upgrade is a small patch release, fixing compilation
errors on Android, Cygwin, and uClibc - none of which are
tested in the CI.

PR-URL: #28511
Backport-PR-URL: #31969
Reviewed-By: Saúl Ibarra Corretgé <[email protected]>
Reviewed-By: Richard Lau <[email protected]>
Reviewed-By: Santiago Gimeno <[email protected]>
Reviewed-By: Ben Noordhuis <[email protected]>
  • Loading branch information
cjihrig authored and BethGriggs committed Mar 2, 2020
1 parent 7cde563 commit ed71f55
Show file tree
Hide file tree
Showing 8 changed files with 39 additions and 11 deletions.
3 changes: 1 addition & 2 deletions deps/uv/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -260,8 +260,7 @@ if(CMAKE_SYSTEM_NAME STREQUAL "Android")
src/unix/linux-syscalls.c
src/unix/procfs-exepath.c
src/unix/pthread-fixes.c
src/unix/sysinfo-loadavg.c
src/unix/sysinfo-memory.c)
src/unix/sysinfo-loadavg.c)
endif()

if(APPLE OR CMAKE_SYSTEM_NAME MATCHES "Android|Linux|OS/390")
Expand Down
17 changes: 17 additions & 0 deletions deps/uv/ChangeLog
Original file line number Diff line number Diff line change
@@ -1,3 +1,20 @@
2019.07.03, Version 1.30.1 (Stable), 1551969c84c2f546a429dac169c7fdac3e38115e

Changes since version 1.30.0:

* doc: fix incorrect versionchanged (cjihrig)

* test: allow UV_ECONNRESET in tcp_try_write_error (cjihrig)

* unix: add uv_get_constrained_memory() cygwin stub (cjihrig)

* build: fix android cmake build (Ben Noordhuis)

* unix: squelch -Wcast-function-type warning (Ben Noordhuis)

* build: fix compile error with uClibc (zlargon)


2019.06.28, Version 1.30.0 (Stable), 365b6f2a0eacda1ff52be8e57ab9381cfddc5dbb

Changes since version 1.29.1:
Expand Down
2 changes: 1 addition & 1 deletion deps/uv/configure.ac
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,7 @@
# OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.

AC_PREREQ(2.57)
AC_INIT([libuv], [1.30.0], [https://github.com/libuv/libuv/issues])
AC_INIT([libuv], [1.30.1], [https://github.com/libuv/libuv/issues])
AC_CONFIG_MACRO_DIR([m4])
m4_include([m4/libuv-extra-automake-flags.m4])
m4_include([m4/as_case.m4])
Expand Down
2 changes: 1 addition & 1 deletion deps/uv/docs/src/threadpool.rst
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,7 @@ Its default size is 4, but it can be changed at startup time by setting the
``UV_THREADPOOL_SIZE`` environment variable to any value (the absolute maximum
is 1024).

.. versionchanged:: 1.29.2 the maximum UV_THREADPOOL_SIZE allowed was increased from 128 to 1024.
.. versionchanged:: 1.30.0 the maximum UV_THREADPOOL_SIZE allowed was increased from 128 to 1024.

The threadpool is global and shared across all event loops. When a particular
function makes use of the threadpool (i.e. when using :c:func:`uv_queue_work`)
Expand Down
2 changes: 1 addition & 1 deletion deps/uv/include/uv/version.h
Original file line number Diff line number Diff line change
Expand Up @@ -32,7 +32,7 @@

#define UV_VERSION_MAJOR 1
#define UV_VERSION_MINOR 30
#define UV_VERSION_PATCH 0
#define UV_VERSION_PATCH 1
#define UV_VERSION_IS_RELEASE 1
#define UV_VERSION_SUFFIX ""

Expand Down
4 changes: 4 additions & 0 deletions deps/uv/src/unix/cygwin.c
Original file line number Diff line number Diff line change
Expand Up @@ -52,3 +52,7 @@ void uv_free_cpu_info(uv_cpu_info_t* cpu_infos, int count) {
(void)cpu_infos;
(void)count;
}

uint64_t uv_get_constrained_memory(void) {
return 0; /* Memory constraints are unknown. */
}
18 changes: 13 additions & 5 deletions deps/uv/src/unix/thread.c
Original file line number Diff line number Diff line change
Expand Up @@ -37,7 +37,7 @@
#include <sys/sem.h>
#endif

#ifdef __GLIBC__
#if defined(__GLIBC__) && !defined(__UCLIBC__)
#include <gnu/libc-version.h> /* gnu_get_libc_version() */
#endif

Expand Down Expand Up @@ -222,6 +222,12 @@ int uv_thread_create_ex(uv_thread_t* tid,
size_t pagesize;
size_t stack_size;

/* Used to squelch a -Wcast-function-type warning. */
union {
void (*in)(void*);
void* (*out)(void*);
} f;

stack_size =
params->flags & UV_THREAD_HAS_STACK_SIZE ? params->stack_size : 0;

Expand All @@ -248,7 +254,8 @@ int uv_thread_create_ex(uv_thread_t* tid,
abort();
}

err = pthread_create(tid, attr, (void*(*)(void*)) entry, arg);
f.in = entry;
err = pthread_create(tid, attr, f.out, arg);

if (attr != NULL)
pthread_attr_destroy(attr);
Expand Down Expand Up @@ -474,7 +481,7 @@ int uv_sem_trywait(uv_sem_t* sem) {

#else /* !(defined(__APPLE__) && defined(__MACH__)) */

#ifdef __GLIBC__
#if defined(__GLIBC__) && !defined(__UCLIBC__)

/* Hack around https://sourceware.org/bugzilla/show_bug.cgi?id=12674
* by providing a custom implementation for glibc < 2.21 in terms of other
Expand Down Expand Up @@ -510,7 +517,8 @@ typedef struct uv_semaphore_s {
unsigned int value;
} uv_semaphore_t;

#if defined(__GLIBC__) || platform_needs_custom_semaphore
#if (defined(__GLIBC__) && !defined(__UCLIBC__)) || \
platform_needs_custom_semaphore
STATIC_ASSERT(sizeof(uv_sem_t) >= sizeof(uv_semaphore_t*));
#endif

Expand Down Expand Up @@ -639,7 +647,7 @@ static int uv__sem_trywait(uv_sem_t* sem) {
}

int uv_sem_init(uv_sem_t* sem, unsigned int value) {
#ifdef __GLIBC__
#if defined(__GLIBC__) && !defined(__UCLIBC__)
uv_once(&glibc_version_check_once, glibc_version_check);
#endif

Expand Down
2 changes: 1 addition & 1 deletion deps/uv/test/test-tcp-try-write-error.c
Original file line number Diff line number Diff line change
Expand Up @@ -48,7 +48,7 @@ static void incoming_close_cb(uv_handle_t* handle) {
while (r > 0)
r = uv_try_write((uv_stream_t*) &client, &buf, 1);
fprintf(stderr, "uv_try_write error: %d %s\n", r, uv_strerror(r));
ASSERT(r == UV_EPIPE || r == UV_ECONNABORTED);
ASSERT(r == UV_EPIPE || r == UV_ECONNABORTED || r == UV_ECONNRESET);
ASSERT(client.write_queue_size == 0);
}

Expand Down

0 comments on commit ed71f55

Please sign in to comment.