[wingide-users] Missing breakpoints & projects
Tom Stambaugh
tms at zeetix.com
Mon Sep 3 09:39:04 MDT 2007
>> The bug/feature/phenomena occurs when I do the following:
>> 1. Open projectA.
>> 2. During debugging, open class B.Foo, contained in projectB.
>> 3. Set a breakpoint somewhere in B.Foo
>> 4. Save projectA.
>> 5. Terminate the current debugging thread
>> 6. Open projectB.
>> 7. Start a new thread, hoping to stop on the breakpoint created at step
>> (3),
>> above.
>>
>> To my surprise, the thread created in step 7 will NOT stop. This is
>> because
>> it appears that the breakpoint I created is visible only to projectA.
>
> This is because breakpoint definitions are stored in the project file.
> Switching projects clears the breakpoint list and replaces it with the
> ones defined in the newly loaded project file.
>
> Project files are text files, containing python code. The structure
> defining breakpoints is called 'debug.breakpoints', at least in my
> current Wing 3 project files.
Aha. As nearly as I can tell, this is not mentioned in any of the
documentation. I just read through section 3.3 "Project Manager" and section
3.6 "Debugger", and found no discussion of this. Surely this is at least a
documentation bug.
Further, I think that this "per-project" breakpoint behavior, if desired at
all, should surely be optional and should surely NOT be the default. A
"breakpoint" is all about a particular method in a particular *file*.
Fortunately, there is not one file per project. In my view, the most
intuitive (and therefore useful) decision is to have one breakpoint
definition per file. When I click in the margin to set a breakpoint, I'm
surely don't want to think about what project contains it, do I?
This is particularly true given the ease with which one can open and close
various project files while debugging. Does the "Breakpoints" tab of the
"Wing Tool Box" show what is actually happening, or does it show the
definitions in whatever project is open? When I have a file open, does it
change the definition list in the project that created it, or does it
instead change the currently-open project?
It seems to me that per-project breakpoint definitions create a host of
user-interface and useability problems, with little corresponding
productivity gain.
More information about the wingide-users
mailing list