diff --git a/docs/project/changelog.md b/docs/project/changelog.md index b511bb77f..d6a48d2c0 100644 --- a/docs/project/changelog.md +++ b/docs/project/changelog.md @@ -46,6 +46,9 @@ substitutions: used by Pyodide's event loop. {pr}`2997` +- {{ Fix }} Fixed a bug in Emscripten that caused Pyodide to fail in Jest. + {pr}`3014` + ### Build System - {{ Enhancement }} Added `requirements/host` key to the `meta.yaml` spec to allow diff --git a/emsdk/patches/0001-Fix-assertion-in-file_packager-for-Jest.patch b/emsdk/patches/0001-Fix-assertion-in-file_packager-for-Jest.patch new file mode 100644 index 000000000..7acd19613 --- /dev/null +++ b/emsdk/patches/0001-Fix-assertion-in-file_packager-for-Jest.patch @@ -0,0 +1,25 @@ +From 86ae308adb000ee1243aa8d7b106cdd49a18153e Mon Sep 17 00:00:00 2001 +From: Hood Chatham +Date: Wed, 24 Aug 2022 16:24:48 -0700 +Subject: [PATCH] Fix assertion in file_packager for Jest + +--- + tools/file_packager.py | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/tools/file_packager.py b/tools/file_packager.py +index 7d48556d6..d608f6738 100755 +--- a/tools/file_packager.py ++++ b/tools/file_packager.py +@@ -996,7 +996,7 @@ def generate_js(data_target, data_files, metadata): + code += ''' + function processPackageData(arrayBuffer) { + assert(arrayBuffer, 'Loading data file failed.'); +- assert(arrayBuffer instanceof ArrayBuffer, 'bad input to processPackageData'); ++ assert(arrayBuffer.constructor.name === ArrayBuffer.name, 'bad input to processPackageData'); + var byteArray = new Uint8Array(arrayBuffer); + var curr; + %s +-- +2.25.1 +