← Back to team overview

kicad-developers team mailing list archive

Re: Regression Testing

 

On 05/02/2013 02:03 AM, Lorenzo Marcantonio wrote:
> On Thu, May 02, 2013 at 01:25:02AM -0500, Dick Hollenbeck wrote:
>> Please, just give us a script or the commands that causes the crash, a bug report can be
>> created.
> 
> OK, I don't have python on this machine, I'll do that tonight.
> 
> With my luck is the *first* thing happened to me with python:D
> 


I finally made sense of your brief words used to describe the crash scenario.

I understand what is happening, even without running the software or you having to submit
a bug report.

This is an application bug, one which failed to properly dovetail object life cycles in
the dual language environment.  I will get with Miguel on it in the next couple of weeks.

We do not need to make generalizations quite yet.  Or put certain techniques "generally
off limits", but rather we can fix this specific issue with either of a couple of ideas I
mind.

With the dual language environment, object life cycles have to be carefully thought out.

To cause the bug, my thinking is all you have to do is:

1) load the board into pcbnew.

2) start the python console, which I will call an "interpreter instance", or interpreter
for short.

3) have interpreter get a board reference.

4) Use pcbnew to unload the board, possibly loading another one.

5) have the interpreter use the old board reference.


Miguel and I will chat about it some day soon.   Right now, I really need to make a board
myself, and spend less time in here.


BTW, JNI would not have been immune to this scenario either.  Like any tool, it can be
mis-applied.

My original message is the same, we still need some terms defined so we can have future
conversations.  The terms in this case could actually end up being directories in our
source tree.  (Anything you find in there, is one of those.)    Top level scripts, and
embedded scripts for example.  No rush.


Dick




Follow ups

References