Subject: Allow set_trace to accept generic args and kwargs

In Python 3.14+, pdb.set_trace() calls set_trace(..., commands=commands).
Override set_trace in SpyderPdb to accept *args and **kwargs and forward to pdb.Pdb,
preventing a TypeError when called with commands=None.
---
 spyder_kernels/customize/spyderpdb.py | 10 ++++++++++
 1 file changed, 10 insertions(+)

Index: spyder-kernels/spyder_kernels/customize/spyderpdb.py
===================================================================
--- spyder-kernels.orig/spyder_kernels/customize/spyderpdb.py
+++ spyder-kernels/spyder_kernels/customize/spyderpdb.py
@@ -265,6 +265,16 @@ class SpyderPdb(ipyPdb):
         self.message("\nProgram interrupted. (Use 'cont' to resume).")
         self.set_step()
 
+    def set_trace(self, frame=None, *args, **kwargs):
+        """Start debugging from frame."""
+        if frame is None:
+            frame = sys._getframe().f_back
+        self.initial_frame = frame
+        try:
+            return super(ipyPdb, self).set_trace(frame, *args, **kwargs)
+        except TypeError:
+            return super(ipyPdb, self).set_trace(frame)
+
     def set_quit(self):
         """Register that debugger is not tracing."""
         self.shell.remove_pdb_session(self)
