Changes between Version 7 and Version 8 of HBDBPlanning

Show
Ignore:
Timestamp:
08/06/11 22:27:36 (10 years ago)
Author:
soh_cah_toa
Comment:

Started dividing features into separate groups.

Legend:

Unmodified
Added
Removed
Modified
  • HBDBPlanning

    v7 v8  
    1 This page exists to help plan out soh_cah_toa's GSoC project.  Unfortunately it turns out to depend heavily on parts of imcc which were substantially more broken than anyone realized.  Although imcc has gotten the attention of our developers, the GSoC project's schedule shouldn't make any assumptions as to whether imcc will improve. 
     1This page exists to help plan out soh_cah_toa's GSoC project.  Unfortunately, it turns out to depend heavily on parts of IMCC which were substantially more broken than anyone realized.  Although IMCC has gotten the attention of our developers, the GSoC project's schedule shouldn't make any assumptions as to whether IMCC will improve. 
    22 
    3 My (cotto) plan is to rework hbdb's schedule so that it can be a maximally useful debugger by the end of GSoC within the limitations of what imcc can provide.  The first step is to break the original schedule into a list of discrete features and to divide those features into three groups: those that are completed, those that depend on imcc's broken line number annotations and those that don't.  From there, we can work out a new schedule that will show measurable progress and be completable while avoiding some of the more egregious landmines provided by imcc. 
     3My (cotto) plan is to rework HBDB's schedule so that it can be a maximally useful debugger by the end of GSoC within the limitations of what IMCC can provide.  The first step is to break the original schedule into a list of discrete features and to divide those features into five groups: those that are completed (with or without tests), those that depend on IMCC's broken line number annotations, those that don't, and those that may not be possible due to time constraints.  From there, we can work out a new schedule that will show measurable progress and be completable while avoiding some of the more egregious landmines provided by IMCC. 
    44 
    5 Anything listed with a '?' means that the likelihood of making it into HBDB by the end of the summer is slim. 
     5Completed with tests: 
     6 * Help 
    67 
    7 FEATURES: 
    8  *  read HLL annotations 
    9  *  read data from debug segment 
    10  * ? code instrumentation (steal from parrot-instrument) 
    11  * ? code introspection (steal from parrot-instrument) 
    12  *  add debugee interactively with a gdb-like 'file' command 
    13  *  enable/disable breakpoints 
    14  *  breakpoints (line) 
    15  *  breakpoints (function) 
    16  *  watchpoints (registers) 
    17  * ? reversible debugging 
    18  *  execute until the next annotation change 
    19  *  backtrace 
    20  *  bytecode disassembly 
    21  * ? debugger scripting 
    22  * ? repl 
    23  *  trace open file handles (including children) 
    24  * ? dynamic memory analysis (check for uninitialized values) 
    25  * ? dynamic memory analysis (destruction-triggered watchpoints) 
    26  *  print internal debugger state info 
    27  *  start/continue execution 
    28  *  single-step execution 
    29  *  print registers 
    30  *  help 
    31  *  source listing 
     8Completed without tests: 
     9 * Backtrace 
     10 * Breakpoints (PC) 
     11 * Bytecode disassembly 
     12 * Enable/disable breakpoints 
     13 * Single-step execution 
     14 * Source listing 
     15 * Start/continue execution 
     16 
     17Dependent on IMCC cleanups: 
     18 * Breakpoints (line) 
     19 
     20Not dependent on IMCC cleanups: 
     21 * Add debugee interactively with a gdb-like 'file' command 
     22 * Breakpoints (function) 
     23 * Execute until the next annotation change 
     24 * Print registers 
     25 * Read HLL annotations 
     26 * Read data from debug segment 
     27 * Trace open file handles (including children) 
     28 * Watchpoints (registers) 
     29 
     30May not be possible before end of summer: 
     31 * Code instrumentation (steal from parrot-instrument) 
     32 * Code introspection (steal from parrot-instrument) 
     33 * Debugger scripting 
     34 * Dynamic memory analysis (check for uninitialized values) 
     35 * Dynamic memory analysis (destruction-triggered watchpoints) 
     36 * REPL 
     37 * Reversible debugging