From a5cfbf78810f0ae9f754a3fb0e5cf859ba107939 Mon Sep 17 00:00:00 2001 From: Phil Elson Date: Mon, 4 May 2026 16:00:55 +0200 Subject: [PATCH] Ensure that we take a copy of the sys.modules before iterating over it --- ipykernel/debugger.py | 2 +- ipykernel/ipkernel.py | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/ipykernel/debugger.py b/ipykernel/debugger.py index 24fe92849..b7dd4a259 100644 --- a/ipykernel/debugger.py +++ b/ipykernel/debugger.py @@ -693,7 +693,7 @@ async def copyToGlobals(self, message): async def modules(self, message): """Handle a modules message.""" - modules = list(sys.modules.values()) + modules = list(sys.modules.copy().values()) startModule = message.get("startModule", 0) moduleCount = message.get("moduleCount", len(modules)) mods = [] diff --git a/ipykernel/ipkernel.py b/ipykernel/ipkernel.py index eba728335..95af43e5e 100644 --- a/ipykernel/ipkernel.py +++ b/ipykernel/ipkernel.py @@ -120,7 +120,7 @@ def __init__(self, **kwargs): from .debugger import _is_debugpy_available self._kernel_modules = [ - m.__file__ for m in sys.modules.values() if hasattr(m, "__file__") and m.__file__ + m.__file__ for m in sys.modules.copy().values() if hasattr(m, "__file__") and m.__file__ ] # Initialize the Debugger