> I've noticed this myself -- in fact, I always get a tad nervous
> and mentally review recent changes before hitting "Undo" in case I did
> anything slightly out of the ordinary that may trigger a crash.

If "undo" is something which commonly causes crashes for you, then I think you 
should try to categorize/reproduce the crashes. While I agree with your concept 
on a MoleculeDocument,  IMHO, there isn't a good level of "bug cleanup" and 
that's critical for the reasons you mentioned.

What we probably need is:
1) Periodic stabilization freezes to focus on bug fixing
2) Nightly debug-enabled builds
3) Automated GUI "fuzz testing"

Unfortunately, one of the hardest problems for me are Windows crashes. Many 
times, I have a hard time reproducing on Mac, and never know if it's a Windows 
issue, a Qt/Windows bug, a random driver crash, etc. (For example, one of my 
students had issues on Win7 until he upgraded his graphics driver.)

But with Open Babel, there's a systematic culture of strong bug-fixing 
throughout the development, and particularly before a release. The current 
development master hasn't seen that level of QA testing. That's point #1.

Point #2, I'd love to see if we can embed some level of send-the-crash-report 
code. In many apps I use, this is invaluable to the developers, and it lets our 
users know we're serious about fixing crashes. I emphasize the nightly builds, 
because it means we can attempt to fix bugs for remote users and they can see 
if it works. We'd also get back-traces on Windows crashes!
http://kb.mozillazine.org/Breakpad   (But other solutions probably exist.)

Point #3, I've used in the Avogadro Mac builds -- basically it's a program that 
sends mouse and key events randomly, trying to force crashes:
http://pages.cs.wisc.edu/~bart/fuzz/

The clang compiler also looks like it has some new memory and race error 
detection tools:
http://code.google.com/p/address-sanitizer/
http://code.google.com/p/data-race-test/

-Geoff
------------------------------------------------------------------------------
Learn Windows Azure Live!  Tuesday, Dec 13, 2011
Microsoft is holding a special Learn Windows Azure training event for 
developers. It will provide a great way to learn Windows Azure and what it 
provides. You can attend the event by watching it streamed LIVE online.  
Learn more at http://p.sf.net/sfu/ms-windowsazure
_______________________________________________
Avogadro-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/avogadro-devel

Reply via email to