eric3.Debugger.DebugServer

Module implementing the debug server.

Classes

DebugServer Class implementing the debug server embedded within the IDE.

Functions

None

DebugServer

Class implementing the debug server embedded within the IDE.

Signals

clientBanner(banner)
emitted after the client banner was received
clientClearBreak(filename, lineno)
emitted after the debug client has decided to clear a temporary breakpoint
clientCompletionList(completionList, text)
emitted after the client the commandline completion list and the reworked searchstring was received from the client
clientException(exception)
emitted after an exception occured on the client side
clientExit(exitcode)
emitted after the client has exited
clientGone
emitted if the client went away (planned or unplanned)
clientLine(filename, lineno)
emitted after the debug client has executed a line of code
clientOutput
emitted after the client has sent some output
clientRawInput(prompt, echo)
emitted after a raw input request was received
clientRawInputSent
emitted after the data was sent to the debug client
clientStack(stack)
emitted after the debug client has executed a line of code
clientStatement(boolean)
emitted after an interactive command has been executed. The parameter is 0 to indicate that the command is complete and 1 if it needs more input.
clientSyntaxError(exception)
emitted after a syntax error has been detected on the client side
clientVariable(variables)
emitted after a dump for one class variable has been received
clientVariables(variables)
emitted after a variables dump has been received
cyclopsError(fn, modfunc)
emitted after the client reported an error while performing a Cyclops run
passiveDebugStarted
emitted after the debug client has connected in passive debug mode
utFinished
emitted after the client signalled the end of the unittest
utPrepared(nrTests, exc_type, exc_value)
emitted after the client has loaded a unittest suite
utStartTest(testname, testdocu)
emitted after the client has started a test
utStopTest
emitted after the client has finished a test
utTestErrored(testname, exc_info)
emitted after the client reported an errored test
utTestFailed(testname, exc_info)
emitted after the client reported a failed test

Derived from

QServerSocket

Methods

DebugServer Constructor
handleLine Private method to handle data from the client.
newConnection Reimplemented to handle a new connection.
passiveShutDown Private method to shut down a passive debug connection.
passiveStartUp Private method to handle a passive debug connection.
remoteBanner Public slot to get the banner info of the remote client.
remoteBreakpoint Public method to set or clear a breakpoint.
remoteBreakpointEnable Public method to enable or disable a breakpoint.
remoteBreakpointIgnore Public method to ignore a breakpoint the next couple of occurences.
remoteClientVariable Public method to request the variables of the debugged program.
remoteClientVariables Public method to request the variables of the debugged program.
remoteCompletion Public slot to get the a list of possible commandline completions
remoteContinue Public method to continue the debugged program.
remoteCoverage Public method to load a new program to collect coverage data.
remoteCyclops Public method to load a new program to collect profiling data.
remoteEval Public method to evaluate arg in the current context of the debugged program.
remoteExec Public method to execute stmt in the current context of the debugged program.
remoteLoad Public method to load a new program to debug.
remoteProfile Public method to load a new program to collect profiling data.
remoteRawInput Public method to send the raw input to the debugged program.
remoteRun Public method to load a new program to run.
remoteStatement Public method to execute a Python statement.
remoteStep Public method to single step the debugged program.
remoteStepOut Public method to step out the debugged program.
remoteStepOver Public method to step over the debugged program.
remoteStepQuit Public method to stop the debugged program.
remoteUTPrepare Public method to prepare a new unittest run.
remoteUTRun Public method to start a unittest run.
remoteUTStop public method to stop a unittest run.
restoreBreakpoints Private method to restore the break points after a restart.
sendCommand Private method to send a single line command to the client.
shutdownServer Public method to cleanly shut down.
startClient Private method to start a debug client.
startRemote Private method to start a remote interpreter.

DebugServer (Constructor)

DebugServer()

Constructor

DebugServer.handleLine

handleLine()

Private method to handle data from the client.

DebugServer.newConnection

newConnection(sockfd)

Reimplemented to handle a new connection.

sockfd
the socket descriptor

DebugServer.passiveShutDown

passiveShutDown()

Private method to shut down a passive debug connection.

DebugServer.passiveStartUp

passiveStartUp(fn, exc)

Private method to handle a passive debug connection.

exc
flag to enable exception reporting of the IDE (boolean)
fn
filename of the debugged script (string)

DebugServer.remoteBanner

remoteBanner()

Public slot to get the banner info of the remote client.

DebugServer.remoteBreakpoint

remoteBreakpoint(fn, line, set, cond=None, temp=0)

Public method to set or clear a breakpoint.

cond
condition of the breakpoint (string)
fn
filename the breakpoint belongs to (string)
line
linenumber of the breakpoint (int)
set
flag indicating setting or resetting a breakpoint (boolean)
temp
flag indicating a temporary breakpoint (boolean)

DebugServer.remoteBreakpointEnable

remoteBreakpointEnable(fn, line, enable)

Public method to enable or disable a breakpoint.

enable
flag indicating enabling or disabling a breakpoint (boolean)
fn
filename the breakpoint belongs to (string)
line
linenumber of the breakpoint (int)

DebugServer.remoteBreakpointIgnore

remoteBreakpointIgnore(fn, line, count)

Public method to ignore a breakpoint the next couple of occurences.

count
number of occurences to ignore (int)
fn
filename the breakpoint belongs to (string)
line
linenumber of the breakpoint (int)

DebugServer.remoteClientVariable

remoteClientVariable(scope, filter, var, framenr=0)

Public method to request the variables of the debugged program.

filter
list of variable types to filter out (list of int)
framenr
framenumber of the variables to retrieve (int)
scope
the scope of the variables (0 = local, 1 = global)
var
list encoded name of variable to retrieve (string)

DebugServer.remoteClientVariables

remoteClientVariables(scope, filter, framenr=0)

Public method to request the variables of the debugged program.

filter
list of variable types to filter out (list of int)
framenr
framenumber of the variables to retrieve (int)
scope
the scope of the variables (0 = local, 1 = global)

DebugServer.remoteCompletion

remoteCompletion(text)

Public slot to get the a list of possible commandline completions from the remote client.

text
the text to be completed (string or QString)

DebugServer.remoteContinue

remoteContinue()

Public method to continue the debugged program.

DebugServer.remoteCoverage

remoteCoverage(fn, argv, wd, erase)

Public method to load a new program to collect coverage data.

argv
the commandline arguments to pass to the program (list of strings)
erase
flag indicating that coverage info should be cleared first (boolean)
fn
the filename to run (string)
wd
the working directory for the program (string)

DebugServer.remoteCyclops

remoteCyclops(fn, argv, wd, modfunc, reports)

Public method to load a new program to collect profiling data.

argv
the commandline arguments to pass to the program (list of strings)
fn
the filename to run (string)
modfunc
name of a module function which is the main entry point (string)
reports
bit mask specifying the reports wanted (integer)
wd
the working directory for the program (string)

DebugServer.remoteEval

remoteEval(arg)

Public method to evaluate arg in the current context of the debugged program.

arg
the arguments to evaluate (string)

DebugServer.remoteExec

remoteExec(stmt)

Public method to execute stmt in the current context of the debugged program.

stmt
statement to execute (string)

DebugServer.remoteLoad

remoteLoad(fn, argv, wd, tracePython)

Public method to load a new program to debug.

argv
the commandline arguments to pass to the program (list of strings)
fn
the filename to debug (string)
tracePython
flag indicating if the Python library should be traced as well
wd
the working directory for the program (string)

DebugServer.remoteProfile

remoteProfile(fn, argv, wd, erase)

Public method to load a new program to collect profiling data.

argv
the commandline arguments to pass to the program (list of strings)
erase
flag indicating that timing info should be cleared first (boolean)
fn
the filename to run (string)
wd
the working directory for the program (string)

DebugServer.remoteRawInput

remoteRawInput(s)

Public method to send the raw input to the debugged program.

s
the raw input (string)

DebugServer.remoteRun

remoteRun(fn, argv, wd)

Public method to load a new program to run.

argv
the commandline arguments to pass to the program (list of strings)
fn
the filename to run (string)
wd
the working directory for the program (string)

DebugServer.remoteStatement

remoteStatement(stmt)

Public method to execute a Python statement.

stmt
the Python statement to execute (string). It should not have a trailing newline.

DebugServer.remoteStep

remoteStep()

Public method to single step the debugged program.

DebugServer.remoteStepOut

remoteStepOut()

Public method to step out the debugged program.

DebugServer.remoteStepOver

remoteStepOver()

Public method to step over the debugged program.

DebugServer.remoteStepQuit

remoteStepQuit()

Public method to stop the debugged program.

DebugServer.remoteUTPrepare

remoteUTPrepare(fn, tn, cov, covname, coverase)

Public method to prepare a new unittest run.

cov
flag indicating collection of coverage data is requested
coverase
flag indicating erasure of coverage data is requested
covname
filename to be used to assemble the coverage caches filename
fn
the filename to load (string)
tn
the testname to load (string)

DebugServer.remoteUTRun

remoteUTRun()

Public method to start a unittest run.

DebugServer.remoteUTStop

remoteUTStop()

public method to stop a unittest run.

DebugServer.restoreBreakpoints

restoreBreakpoints()

Private method to restore the break points after a restart.

DebugServer.sendCommand

sendCommand(cmd)

Private method to send a single line command to the client.

cmd
command to send to the debug client (string)

DebugServer.shutdownServer

shutdownServer()

Public method to cleanly shut down. It closes our socket and shuts down the debug client. (Needed on Win OS)

DebugServer.startClient

startClient(unplanned=1)

Private method to start a debug client.

unplanned
flag indicating that the client has died

DebugServer.startRemote

startRemote()

Private method to start a remote interpreter.

Up