Mercurial > cpython-lru_cache-weakref
diff Lib/idlelib/RemoteDebugger.py @ 42999:dc0f0ffd4257
1. Debugger was failing to start due to DictProxy limitations.
2. Fix some debug prints in RemoteDebugger.py - use py3k syntax.
| author | Kurt B. Kaiser <kbk@shore.net> |
|---|---|
| date | Wed, 29 Aug 2007 18:44:24 +0000 |
| parents | fa9a40ef0780 |
| children | 0889daf6d0d9 |
line wrap: on
line diff
--- a/Lib/idlelib/RemoteDebugger.py Wed Aug 29 18:42:15 2007 +0000 +++ b/Lib/idlelib/RemoteDebugger.py Wed Aug 29 18:44:24 2007 +0000 @@ -94,16 +94,13 @@ self.idb.set_return(frame) def get_stack(self, fid, tbid): - ##print >>sys.__stderr__, "get_stack(%r, %r)" % (fid, tbid) frame = frametable[fid] if tbid is None: tb = None else: tb = tracebacktable[tbid] stack, i = self.idb.get_stack(frame, tb) - ##print >>sys.__stderr__, "get_stack() ->", stack stack = [(wrap_frame(frame), k) for frame, k in stack] - ##print >>sys.__stderr__, "get_stack() ->", stack return stack, i def run(self, cmd): @@ -162,13 +159,20 @@ #----------called by a DictProxy---------- def dict_keys(self, did): + raise NotImplemented("dict_keys not public or pickleable") +## dict = dicttable[did] +## return dict.keys() + + ### Needed until dict_keys is type is finished and pickealable. + ### Will probably need to extend rpc.py:SocketIO._proxify at that time. + def dict_keys_list(self, did): dict = dicttable[did] return list(dict.keys()) def dict_item(self, did, key): dict = dicttable[did] value = dict[key] - value = repr(value) + value = repr(value) ### can't pickle module '__builtin__' return value #----------end class IdbAdapter---------- @@ -261,15 +265,20 @@ self._oid = oid self._did = did +## def keys(self): +## return self._conn.remotecall(self._oid, "dict_keys", (self._did,), {}) + + # 'temporary' until dict_keys is a pickleable built-in type def keys(self): - return self._conn.remotecall(self._oid, "dict_keys", (self._did,), {}) + return self._conn.remotecall(self._oid, + "dict_keys_list", (self._did,), {}) def __getitem__(self, key): return self._conn.remotecall(self._oid, "dict_item", (self._did, key), {}) def __getattr__(self, name): - ##print >>sys.__stderr__, "failed DictProxy.__getattr__:", name + ##print("*** Failed DictProxy.__getattr__:", name) raise AttributeError(name) @@ -280,7 +289,7 @@ self.gui = gui def interaction(self, message, fid, modified_info): - ##print "interaction: (%s, %s, %s)" % (message, fid, modified_info) + ##print("*** Interaction: (%s, %s, %s)" % (message, fid, modified_info)) frame = FrameProxy(self.conn, fid) self.gui.interaction(message, frame, modified_info) @@ -293,9 +302,9 @@ self.shell = shell def call(self, methodname, *args, **kwargs): - ##print "**IdbProxy.call %s %s %s" % (methodname, args, kwargs) + ##print("*** IdbProxy.call %s %s %s" % (methodname, args, kwargs)) value = self.conn.remotecall(self.oid, methodname, args, kwargs) - ##print "**IdbProxy.call %s returns %r" % (methodname, value) + ##print("*** IdbProxy.call %s returns %r" % (methodname, value)) return value def run(self, cmd, locals):
