From 1e927294923d96b7d7c972cb35078df79a673822 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: Tue, 3 Jun 2025 18:14:16 +0200 Subject: [PATCH] fix(Code Node): Block selected module imports in python code (#15970) --- packages/nodes-base/nodes/Code/Pyodide.ts | 24 +++++++++++++++++++++++ 1 file changed, 24 insertions(+) diff --git a/packages/nodes-base/nodes/Code/Pyodide.ts b/packages/nodes-base/nodes/Code/Pyodide.ts index ccd63dd352..240b532960 100644 --- a/packages/nodes-base/nodes/Code/Pyodide.ts +++ b/packages/nodes-base/nodes/Code/Pyodide.ts @@ -28,6 +28,30 @@ export async function LoadPyodide(packageCacheDir: string): Promise Optional[ModuleSpec]: + if fullname in blocked_modules: + raise ModuleNotFoundError(f"Module {fullname!r} is blocked", name=fullname) + return None + +sys.meta_path.insert(0, ImportBlocker()) + from _pyodide_core import jsproxy_typedict from js import Object `);