https://github.com/python/cpython/commit/35c6779c7b5c4c2e2d9723803996050b711da0dd
commit: 35c6779c7b5c4c2e2d9723803996050b711da0dd
branch: main
author: Hood Chatham <[email protected]>
committer: freakboy3742 <[email protected]>
date: 2026-07-06T23:54:16Z
summary:
gh-145177: Update Emscripten to 6.0.2 (#153235)
Removes the patched `getentropy()` call since it has been included upstream.
files:
M Platforms/emscripten/config.toml
M Python/emscripten_syscalls.c
M configure
M configure.ac
diff --git a/Platforms/emscripten/config.toml b/Platforms/emscripten/config.toml
index 389d2ea66ce948e..0c65a6623c9798a 100644
--- a/Platforms/emscripten/config.toml
+++ b/Platforms/emscripten/config.toml
@@ -1,7 +1,7 @@
# Any data that can vary between Python versions is to be kept in this file.
# This allows for blanket copying of the Emscripten build code between
supported
# Python versions.
-emscripten-version = "6.0.0"
+emscripten-version = "6.0.2"
node-version = "24"
test-args = [
"-m", "test",
diff --git a/Python/emscripten_syscalls.c b/Python/emscripten_syscalls.c
index b0c370ced36cc33..48ca208dedb14bb 100644
--- a/Python/emscripten_syscalls.c
+++ b/Python/emscripten_syscalls.c
@@ -293,26 +293,6 @@ int __syscall_poll(intptr_t fds, int nfds, int timeout) {
return __block_for_int(p);
}
-
-// Workaround for an Emscripten bug: getentropy(buffer, 1) returns the single
-// byte of entropy as the return code. Fixed upstream by
-// emscripten-core/emscripten#27122
-int __real_getentropy(void*, size_t);
-
-int __wrap_getentropy(void *buffer, size_t len) {
- if (len != 1) {
- return __real_getentropy(buffer, len);
- }
- // Length is 1. Workaround is to get two bytes of entropy and write the
- // first one into the original target buffer.
- uint8_t tmp[2];
- int ret = __real_getentropy(tmp, 2);
- if (ret == 0) {
- *(uint8_t *)buffer = tmp[0];
- }
- return ret;
-}
-
#include <sys/ioctl.h>
int syscall_ioctl_orig(int fd, int request, void* varargs)
diff --git a/configure b/configure
index 01faef615a3d5e1..76c58f7c3a463db 100755
--- a/configure
+++ b/configure
@@ -9803,8 +9803,6 @@ fi
as_fn_append LINKFORSHARED " -sSTACK_SIZE=5MB"
as_fn_append LINKFORSHARED " -sTEXTDECODER=2"
- as_fn_append LDFLAGS_NODIST " -Wl,--wrap=getentropy"
-
if test "x$enable_wasm_dynamic_linking" = xyes
then :
diff --git a/configure.ac b/configure.ac
index a9fe5c269618fcd..de7a3abb379e659 100644
--- a/configure.ac
+++ b/configure.ac
@@ -2411,10 +2411,6 @@ AS_CASE([$ac_sys_system],
dnl Avoid bugs in JS fallback string decoding path
AS_VAR_APPEND([LINKFORSHARED], [" -sTEXTDECODER=2"])
- dnl Workaround for a bug in Emscipten libc's getentropy. See
- dnl __wrap_getentropy in Python/emscripten_syscalls.c.
- AS_VAR_APPEND([LDFLAGS_NODIST], [" -Wl,--wrap=getentropy"])
-
AS_VAR_IF([enable_wasm_dynamic_linking], [yes], [
AS_VAR_APPEND([LINKFORSHARED], [" -sMAIN_MODULE"])
])
_______________________________________________
Python-checkins mailing list -- [email protected]
To unsubscribe send an email to [email protected]
https://mail.python.org/mailman3//lists/python-checkins.python.org
Member address: [email protected]