src/eric7/DebugClients/Python/DebugClientBase.py

branch
eric7
changeset 10331
c1a2ff7e3575
parent 10321
4a017fdf316f
child 10417
c6011e501282
diff -r 5ea038882dd6 -r c1a2ff7e3575 src/eric7/DebugClients/Python/DebugClientBase.py
--- a/src/eric7/DebugClients/Python/DebugClientBase.py	Tue Nov 21 11:42:45 2023 +0100
+++ b/src/eric7/DebugClients/Python/DebugClientBase.py	Wed Nov 22 17:19:10 2023 +0100
@@ -12,6 +12,7 @@
 import codeop
 import contextlib
 import fnmatch
+import importlib
 import json
 import os
 import re
@@ -33,7 +34,7 @@
 
 from AsyncFile import AsyncFile, AsyncPendingWrite
 from BreakpointWatch import Breakpoint, Watch
-from DebugBase import printerr, setRecursionLimit  # __IGNORE_WARNING__
+from DebugBase import printerr, setRecursionLimit
 from DebugConfig import NonExpandableTypes, SpecialAttributes
 from DebugUtilities import formatargvalues, getargvalues, prepareJsonCommand
 from FlexCompleter import Completer
@@ -1030,14 +1031,10 @@
 
         @return client capabilities (integer)
         """
-        try:
-            import PyProfile  # __IGNORE_WARNING__
-
-            with contextlib.suppress(KeyError):
-                del sys.modules["PyProfile"]
+        if importlib.util.find_spec("PyProfile") is None:
+            return self.clientCapabilities & ~DebugClientCapabilities.HasProfiler
+        else:
             return self.clientCapabilities
-        except ImportError:
-            return self.clientCapabilities & ~DebugClientCapabilities.HasProfiler
 
     def readReady(self, stream):
         """

eric ide

mercurial