diff --git a/Makefile b/Makefile index f4f10870b40..4b1f6733798 100644 --- a/Makefile +++ b/Makefile @@ -138,11 +138,11 @@ dist/pyodide.asm.js: \ # cat dist/pyodide.asm.js | grep -ohE 'var _{0,5}.' | sort | uniq -c | sort -nr | head -n 20 sed -i -E 's/var __Z[^;]*;//g' dist/pyodide.asm.js sed -i '1i "use strict";' dist/pyodide.asm.js - # Remove last 4 lines of pyodide.asm.js, see issue #2282 + # Remove last 7 lines of pyodide.asm.js, see issue #2282 # Hopefully we will remove this after emscripten fixes it, upstream issue # emscripten-core/emscripten#16518 # Sed nonsense from https://stackoverflow.com/a/13383331 - sed -i -n -e :a -e '1,4!{P;N;D;};N;ba' dist/pyodide.asm.js + sed -i -n -e :a -e '1,7!{P;N;D;};N;ba' dist/pyodide.asm.js echo "globalThis._createPyodideModule = _createPyodideModule;" >> dist/pyodide.asm.js @date +"[%F %T] done building pyodide.asm.js." diff --git a/Makefile.envs b/Makefile.envs index aa1408061f0..75779ec5491 100644 --- a/Makefile.envs +++ b/Makefile.envs @@ -1,5 +1,5 @@ export PYVERSION ?= 3.12.7 -export PYODIDE_EMSCRIPTEN_VERSION ?= 3.1.73 +export PYODIDE_EMSCRIPTEN_VERSION ?= 3.1.74 export PYODIDE_VERSION ?= 0.28.0.dev0 export PYODIDE_ABI_VERSION ?= 2025_0 diff --git a/emsdk/patches/0001-Add-back-fs.findObject-and-fs.readFile-in-loadLibDat.patch b/emsdk/patches/0001-Add-back-fs.findObject-and-fs.readFile-in-loadLibDat.patch index 09f39b75a3a..5c5b0402883 100644 --- a/emsdk/patches/0001-Add-back-fs.findObject-and-fs.readFile-in-loadLibDat.patch +++ b/emsdk/patches/0001-Add-back-fs.findObject-and-fs.readFile-in-loadLibDat.patch @@ -1,4 +1,4 @@ -From 103f41ba386105f3b123e5201a039c1d508edb59 Mon Sep 17 00:00:00 2001 +From 380817b0a87d17670635e7d80b123b904a1ff72d Mon Sep 17 00:00:00 2001 From: Hood Chatham Date: Fri, 2 Jun 2023 11:59:32 -0700 Subject: [PATCH 1/5] Add back fs.findObject and fs.readFile in loadLibData @@ -10,7 +10,7 @@ https://github.com/emscripten-core/emscripten/pull/19513 1 file changed, 11 insertions(+), 2 deletions(-) diff --git a/src/library_dylink.js b/src/library_dylink.js -index dee697661..69542d2b8 100644 +index 748468aae..eca96a1eb 100644 --- a/src/library_dylink.js +++ b/src/library_dylink.js @@ -1013,14 +1013,23 @@ var LibraryDylink = { diff --git a/emsdk/patches/0002-Add-useful-error-when-symbol-resolution-fails.patch b/emsdk/patches/0002-Add-useful-error-when-symbol-resolution-fails.patch index 8ba944c6b9f..a34733c916e 100644 --- a/emsdk/patches/0002-Add-useful-error-when-symbol-resolution-fails.patch +++ b/emsdk/patches/0002-Add-useful-error-when-symbol-resolution-fails.patch @@ -1,4 +1,4 @@ -From 24a5f3ece314cf5bc1074e167f8b549d80a12718 Mon Sep 17 00:00:00 2001 +From 264239a38b6093ee50171ae4c8b648d093ace7a1 Mon Sep 17 00:00:00 2001 From: Hood Chatham Date: Fri, 19 May 2023 12:19:00 -0700 Subject: [PATCH 2/5] Add useful error when symbol resolution fails @@ -19,7 +19,7 @@ symbol. 1 file changed, 3 insertions(+) diff --git a/src/library_dylink.js b/src/library_dylink.js -index 69542d2b8..b3440d9dc 100644 +index eca96a1eb..31ae90318 100644 --- a/src/library_dylink.js +++ b/src/library_dylink.js @@ -723,6 +723,9 @@ var LibraryDylink = { diff --git a/emsdk/patches/0003-Changes-for-JSPI.patch b/emsdk/patches/0003-Changes-for-JSPI.patch index c9d8dc57f84..e748017bdbf 100644 --- a/emsdk/patches/0003-Changes-for-JSPI.patch +++ b/emsdk/patches/0003-Changes-for-JSPI.patch @@ -1,4 +1,4 @@ -From 3d483b35ff7ed6dbb8c438f08e5a3579725fe304 Mon Sep 17 00:00:00 2001 +From d03c660e0a5ca58581c173f877ef9264a568adb1 Mon Sep 17 00:00:00 2001 From: Hood Chatham Date: Thu, 22 Jun 2023 18:53:22 -0700 Subject: [PATCH 3/5] Changes for JSPI @@ -11,7 +11,7 @@ Subject: [PATCH 3/5] Changes for JSPI 4 files changed, 9 insertions(+), 3 deletions(-) diff --git a/src/library.js b/src/library.js -index c7f26d291..caca8ff7d 100644 +index 607e18e68..cfa2e49a1 100644 --- a/src/library.js +++ b/src/library.js @@ -492,7 +492,7 @@ addToLibrary({ @@ -24,7 +24,7 @@ index c7f26d291..caca8ff7d 100644 }, #elif !SUPPORT_LONGJMP diff --git a/src/library_dylink.js b/src/library_dylink.js -index b3440d9dc..5cbd4c487 100644 +index 31ae90318..f06f00904 100644 --- a/src/library_dylink.js +++ b/src/library_dylink.js @@ -73,6 +73,7 @@ var LibraryDylink = { @@ -45,7 +45,7 @@ index b3440d9dc..5cbd4c487 100644 #endif #if !DISABLE_EXCEPTION_CATCHING diff --git a/src/parseTools.mjs b/src/parseTools.mjs -index ca474affa..300f38e38 100644 +index fa6da8556..5a0a48548 100644 --- a/src/parseTools.mjs +++ b/src/parseTools.mjs @@ -585,7 +585,7 @@ function makeThrow(excPtr) { @@ -58,7 +58,7 @@ index ca474affa..300f38e38 100644 function storeException(varName, excPtr) { diff --git a/src/preamble.js b/src/preamble.js -index d924c4ab9..f80aae1ff 100644 +index d097c857f..6a217e022 100644 --- a/src/preamble.js +++ b/src/preamble.js @@ -14,6 +14,10 @@ @@ -72,7 +72,7 @@ index d924c4ab9..f80aae1ff 100644 #if RELOCATABLE {{{ makeModuleReceiveWithVar('dynamicLibraries', undefined, '[]', true) }}} #endif -@@ -1054,6 +1058,7 @@ function createWasm() { +@@ -1038,6 +1042,7 @@ function getWasmImports() { #endif // WASM_ASYNC_COMPILATION var info = getWasmImports(); diff --git a/emsdk/patches/0004-Raise-when-no-argument-is-given.patch b/emsdk/patches/0004-Raise-when-no-argument-is-given.patch index 02f38e30f67..642608ddf7f 100644 --- a/emsdk/patches/0004-Raise-when-no-argument-is-given.patch +++ b/emsdk/patches/0004-Raise-when-no-argument-is-given.patch @@ -1,4 +1,4 @@ -From 4a203cf07ee0fa0006f27b8bd1979412d2fc0099 Mon Sep 17 00:00:00 2001 +From 1f4e59e310a9dca31087987cf654333d29e42aad Mon Sep 17 00:00:00 2001 From: ryanking13 Date: Sat, 20 Jan 2024 19:02:32 +0900 Subject: [PATCH 4/5] Raise when no argument is given @@ -13,10 +13,10 @@ Upstream issue: https://github.com/emscripten-core/emscripten/issues/21116 1 file changed, 3 insertions(+) diff --git a/emcc.py b/emcc.py -index dfe088e7b..b2f0fe4cb 100644 +index 2925985f2..c759defb5 100644 --- a/emcc.py +++ b/emcc.py -@@ -661,6 +661,9 @@ There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR P +@@ -662,6 +662,9 @@ There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR P print(libname) return 0 diff --git a/emsdk/patches/0005-sdl2_image-wasm-sjlj-variant.patch b/emsdk/patches/0005-sdl2_image-wasm-sjlj-variant.patch index 7354c99f96f..c7c647f8a75 100644 --- a/emsdk/patches/0005-sdl2_image-wasm-sjlj-variant.patch +++ b/emsdk/patches/0005-sdl2_image-wasm-sjlj-variant.patch @@ -1,4 +1,4 @@ -From f917723823e81581edf8d6554edb054d28761fec Mon Sep 17 00:00:00 2001 +From 4fb563293d2d52072b6a16b5b7d18021a339eaee Mon Sep 17 00:00:00 2001 From: Hood Chatham Date: Fri, 31 Jan 2025 11:42:59 +0100 Subject: [PATCH 5/5] sdl2_image wasm-sjlj variant @@ -10,7 +10,7 @@ https://github.com/emscripten-core/emscripten/pull/23554 1 file changed, 5 insertions(+) diff --git a/tools/ports/sdl2_image.py b/tools/ports/sdl2_image.py -index 70fa1499a..ed5ad679b 100644 +index e36344eed..7a7d0aadd 100644 --- a/tools/ports/sdl2_image.py +++ b/tools/ports/sdl2_image.py @@ -46,6 +46,8 @@ def get_lib_name(settings): @@ -22,7 +22,7 @@ index 70fa1499a..ed5ad679b 100644 return libname + '.a' -@@ -78,6 +80,9 @@ def get(ports, settings, shared): +@@ -77,6 +79,9 @@ def get(ports, settings, shared): if settings.PTHREADS: flags += ['-pthread'] diff --git a/src/tests/python_tests.yaml b/src/tests/python_tests.yaml index 6032a4fdf23..1068da9c170 100644 --- a/src/tests/python_tests.yaml +++ b/src/tests/python_tests.yaml @@ -745,6 +745,7 @@ skip: - test_pthread_getcpuclockid # time.pthread_getcpuclockid(threading.get_ident()) fails - test_strptime + - test_process_time - test_timeit - test_timeout - test_tix @@ -874,6 +875,7 @@ - test_overwrite_file_as_implicit_dir # Works fine but a bit slow - test_write_filtered_python_package + - test_add_file_before_1980 - test_zipfile64 - test_zipimport - test_zipimport_support