From 860bb1ef92bbe4e6fa6f8478dfde37c8e498af65 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E0=A4=95=E0=A4=BE=E0=A4=B0=E0=A4=A4=E0=A5=8B=E0=A4=AB?= =?UTF-8?q?=E0=A5=8D=E0=A4=AB=E0=A5=87=E0=A4=B2=E0=A4=B8=E0=A5=8D=E0=A4=95?= =?UTF-8?q?=E0=A5=8D=E0=A4=B0=E0=A4=BF=E0=A4=AA=E0=A5=8D=E0=A4=9F=E2=84=A2?= Date: Wed, 9 Apr 2025 10:20:14 +0200 Subject: [PATCH] fix(Code Node): Use an explicit `indexURL` to load the pyodide runtime (#14487) --- packages/nodes-base/nodes/Code/Pyodide.ts | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/packages/nodes-base/nodes/Code/Pyodide.ts b/packages/nodes-base/nodes/Code/Pyodide.ts index 23bcabbde8e..42b70ea231a 100644 --- a/packages/nodes-base/nodes/Code/Pyodide.ts +++ b/packages/nodes-base/nodes/Code/Pyodide.ts @@ -1,3 +1,4 @@ +import { dirname } from 'node:path'; import type { PyodideInterface } from 'pyodide'; let pyodideInstance: PyodideInterface | undefined; @@ -5,7 +6,8 @@ let pyodideInstance: PyodideInterface | undefined; export async function LoadPyodide(packageCacheDir: string): Promise { if (pyodideInstance === undefined) { const { loadPyodide } = await import('pyodide'); - pyodideInstance = await loadPyodide({ packageCacheDir }); + const indexURL = dirname(require.resolve('pyodide')); + pyodideInstance = await loadPyodide({ indexURL, packageCacheDir }); await pyodideInstance.runPythonAsync(` from _pyodide_core import jsproxy_typedict