Hi Manju - Ive added a few comments inline...
Manju Vijayakumar wrote:
Hi all,
I made some minor improvements to my proposal on gsoc.
Here is the link:
http://socghop.appspot.com/student_proposal/show/google/gsoc2009/manjuvijayakumar/t123808458043
So what do you think of the proposal overall? Your comments could really
help me spruce up my proposal! Also, I was discussing with Oliver about some
of the things below. So the questions are:
Is the most recent Sun jdb implementation based on JDK 1.3 and earlier?
Because, if that is the case, then there can be several improvements (apart
from the ones in my proposal) to the existing sun jdb that can be
incorporated in the Harmony jdb and make it a superior version.
- Like say the Hot Swap feature? (fix and continue running the debugging OR
letting the server continue without restarting)
This could be a very cool additional feature, although it would require
some serious thought as to how to present the ability to edit and hot
swap code within the command line tool. I think this is an ambitious
extension, but could be a valuable one.
- add a watchpoint? (can we stop at a point while comparing (==, <, > etc)
value of a variable)
Another useful feature - it could also allow you to simple watch
variable values e.g. display the new value if a particular variable is
changed.
- does jdb show chained exceptions? (each exception in chain is displayed)
- show a hierarchy of classes loaded into target jvm?
- view current threads or individual stack frames and change the context of
the debugger to a particular thread/stack frame?
I believe this is standard in jdb and exists in the current
implementation already. For example, "thread <thread id>" changes to a
particular thread, and the "up" and "down" commands move up and down
stack frames.
I might be shooting in the dark, because I am yet to verify if the latest
jdb in Java 6 supports these..I should probably run all the options of Sun
jdb and see.
I think that's a good idea! Spending some time familiarising yourself
with the existing jdb tool and understanding it's current function would
be a good starting point. It will give you an idea of exactly what you
need to achieve, and also indicate where extensions can be made.
Also, if you have not done so already, I would recommend checking out
the Harmony code and building it so you can start digging around in the
source and getting a feel for the project. [1] should help get you started.
Before you can contribute to the project, you need to submit an ICLA
([2] under Contributor License Agreements - should be emailed to the ASF
secretary only) and ACQ ([3] should be emailed to the Harmony PMC list
[4] only).
What I am also unsure is, if they are all feasible implementations within
the scope/period of Gsoc. May be we can keep some of the proposed extensions
optional?
I think your project needs to have a set of core features plus some
extensions which you expect to get done within the time allowed, but I
don't see why you couldn't have some additional extensions which you can
implement if there is time. However, I think having a solid plan for the
core features and extensions that you follow closely is very important,
and additional extensions should only be attempted if there core has
been well completed.
Regards,
Oliver
[1] http://harmony.apache.org/quickhelp_contributors.html
[2] http://www.apache.org/licenses/
[3] http://harmony.apache.org/auth_cont_quest.html
[4] http://harmony.apache.org/mailing.html
--
Oliver Deakin
Unless stated otherwise above:
IBM United Kingdom Limited - Registered in England and Wales with number 741598.
Registered office: PO Box 41, North Harbour, Portsmouth, Hampshire PO6 3AU