[Eric] Debugger kicks out while stepping through the code, while normal operation of the same script runs without issues.

Geert Vancompernolle geert.vancompernolle at gmail.com
Fri Sep 20 05:47:35 BST 2013


Hi Detlev,

Yes, I had breakpoints set.  Anyway, I'm always starting the Eric4 debugger
with the option "Don't stop at first line" switched off (that is, the
debugger anyhow starts in step mode).  In the script I've given, it only
takes a minimal time to reach the problematic area.  Just put an extra
breakpoint at line 133 and then step into the code.

As said before, normally the input files contain a Python list, like the
one below:

[{"id":168,"key":"org.droidtv.tvjar","name":"TvJar","scope":"PRJ","qualifier":"TRK","date":"2013-09-11T09:39:09+0200","lname":"TvJar","lang":"java","version":"1.0","description":"","msr":[{"key":"blocker_violations","val":0.0,"frmt_val":"0"},{"key":"critical_violations","val":19.0,"frmt_val":"19"},{"key":"major_violations","val":1253.0,"frmt_val":"1,253"}]}]

When analysing a file with such content, all is fine.

However, due to missing information from the process that generates the
input files for the script (has nothing to do with this Python file!), I
sometimes do get files with the following content:

device/tpvision/common/plf/storage ==> MISSING ANALYSIS!!! <==

And those files have to be treated differently.  That's why, when such file
content is detected by the function ast.literal_eval() (line 137 in the
Python code), it generates an exception.  But that's what I deliberatly
want.   Since then, I know it's not a Python list and in that case, I
generate an error message in my output report through the "use" or "abuse"
(depends on how you look at it) of the "except"ion thrown.

And as said before, in a normal run (e.g. running the script from the
command line, both Linux as well as Windows), it works fine.  Even when
running in Eric4 without breakpoints (that is, start the script in the
debugger and once it stops at the first line, hit F6), all works fine.

But the moment one breakpoint has been set (*wherever in the code, it
doesn't matter*) *and the debugger has stopped at least once* before that
famous line 137, I get the below mentioned error condition in the debugger.

Hope you have enough information now to reproduce and analyse the issue.
If not, don't hesitate to come back on it and ask for more information.

Best rgds,
--Geert



On 19 September 2013 18:38, Detlev Offenbach <detlev at die-offenbachs.de>wrote:

> **
>
> Hello,
>
>
>
> did you have any breakpoints set when this error shows up? Please think
> about any additional info, that could be relevant.
>
>
>
> Just to let you know, your error report is one of the best I've seen, very
> informative already. I'll have a look at it on the weekend.
>
>
>
> Detlev
>
>
>
> On Thursday 19 September 2013, 09:03:42 Geert Vancompernolle wrote:
>
> > Hi
>
> >
>
> > I've created a Python script *that runs flawlessly when run from the
>
> > command line*. However, when running it *in the debug mode* in Eric4, the
>
> > debugger seems to be kicked out.
>
> >
>
> > I'm running Eric4 4.5.14 on a Windows7 PC (I had the issue also with
>
> > previous versions of Eric4, but to be sure it was not related to missing
> an
>
> > update, I moved to the latest version of Eric4, currently available).
>
> >
>
> > I've attached the source file of the script, together with a 7-zip file
>
> > that contains the input files that are needed.
>
> >
>
> > The problem happens at line 137 in the "sonarmetrics.py" file (command:
>
> > 'result = ast.literal_eval(filecontent)'). I'm "misusing" the try-except
>
> > mechanism to detect if the content of the file given contains a known
>
> > Python type (using the ast method "literal_eval") or a kind of "error
>
> > message". Just to let you know...
>
> >
>
> > If you want to run the script, two input parameters are needed:
>
> > - a path to the directory containing the input sources
>
> > - a path to the directory where the 3 output files should be written (1
> txt
>
> > file and 2 csv files, used as Excel input)
>
> >
>
> > I've also added screenshots from the Eric4 debugger at the moment the
>
> > problem arises.
>
> >
>
> > [image: Inline images 3]
>
> >
>
> > [image: Inline images 4]
>
> >
>
> > I've also added a screenshot of the different package versions I'm using
>
> > with Eric4.
>
> >
>
> > [image: Inline images 2]
>
> >
>
> > I've also added the way I invoke the debugger (paths may differ, of
> course,
>
> > just to show that you need two input parameters).
>
> >
>
> > [image: Inline images 5]
>
> >
>
> > What could cause this behaviour?
>
> >
>
> > *PS: noteworthy to metion that, when you start the debugger with F5 (and
>
> > stopping at the start of the Python script) and then press F6 (so, don't
> go
>
> > into step mode using F8), all is working find in the debugger too...*
>
> >
>
> > Best rgds,
>
> > --Geert
> --
>
> Detlev Offenbach
>
> detlev at die-offenbachs.de
>
> _______________________________________________
> Eric mailing list
> Eric at riverbankcomputing.com
> http://www.riverbankcomputing.com/mailman/listinfo/eric
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://www.riverbankcomputing.com/pipermail/eric/attachments/20130920/fb097ee3/attachment-0001.html>


More information about the Eric mailing list