Test result of Avogadro-0.9.5-win32b

Marcus D. Hanwell (cryosuk):

If you would like to test a new binary, then I have a test one. It is at
http://blog.cryos.net/uploads/Avogadro-0.9.5-win32b.exe if you would like
to test it.

I installed this version, but the file handling is still broken:

  • double click on an existing cml file in Windows’ file explorer
    Result: Avogadro crashes immediately
    (This happens with files that I created using 0.9.4 but also with new files created with 0.9.5b)

  • double click on a fragment file that is delivered with Avogadro 0.9.5b
    Result: Avogadro doesn’t crash, but tells me “Reading molecular file failed”

regards Uwe

On Jun 3, 2009, at 10:17 PM, Uwe Stöhr wrote:

  • double click on an existing cml file in Windows’ file explorer
    Result: Avogadro crashes immediately
    (This happens with files that I created using 0.9.4 but also with
    new files created with 0.9.5b)

Can you give us some sort of crash log or debugging backtrace? I’d
like to know at least what part of the code is crashing.

  • double click on a fragment file that is delivered with Avogadro
    0.9.5b
    Result: Avogadro doesn’t crash, but tells me “Reading molecular
    file failed”

Yes, we’re aware of this bug and are trying to figure out the cause.
(XML files shouldn’t depend on the line ending!)

Thanks,
-Geoff

Geoffrey Hutchison schrieb:

Can you give us some sort of crash log or debugging backtrace? I’d like
to know at least what part of the code is crashing.

Attached is Windows’ crash dump file (can be opened with a Hex editor).

regards Uwe

Can you give us some sort of crash log or debugging backtrace? I’d
like to know at least what part of the code is crashing.

Attached is Windows’ crash dump file (can be opened with a Hex
editor).

Great, thanks! Hopefully one last favor. Can you install the latest
release of Open Babel for Windows? It has a GUI which can read CML
files and export to another format. I’m curious if the Babel GUI can
read the fragment files – if not, then the bug is clearly in Open
Babel.

https://sourceforge.net/project/downloading.php?group_id=40728&filename=OpenBabel2.2.1_Windows_Installer.exe&a=79801246

I can think of a very safe workaround until we find and fix the
fundamental bug – but it involves reading the entire CML file into
memory before parsing molecules. I thought we had it fixed, but I
don’t personally have a Windows machine to test – and my Windows XP
install with VMWare doesn’t show the bug.

In short, I want to fix these bugs for good FAST!

Thanks for your help,
-Geoff

Geoffrey Hutchison schrieb:

Can you install the latest
release of Open Babel for Windows? It has a GUI which can read CML files
and export to another format. I’m curious if the Babel GUI can read the
fragment files – if not, then the bug is clearly in Open Babel.

OpenBabel can open any cml file, with Unix (fragments) or Windows (self made) line endings.

So the crash when double clicking on files seems to be Avogadro specific while the dataloss could be
caused by OpenBabel.

Interestingly, when I load a fragment and “convert” it to e.g. testa.cml the resulting file is
different and looks to me as if there is some dataloss.
Attached is a self-made file “Maleic anhydride.cml” and the “conversion” result from OpenBabel.

Do you need further tests?

regards Uwe

Uwe Stöhr wrote:

Geoffrey Hutchison schrieb:

Can you install the latest release of Open Babel for Windows? It has
a GUI which can read CML files and export to another format. I’m
curious if the Babel GUI can read the fragment files – if not, then
the bug is clearly in Open Babel.

OpenBabel can open any cml file, with Unix (fragments) or Windows
(self made) line endings.

So the crash when double clicking on files seems to be Avogadro
specific while the dataloss could be caused by OpenBabel.
Could you attach a copy of one of a file that causes the crash please?
That does not happen here, but I suspect it is due to the embedded
settings in CML files.

Interestingly, when I load a fragment and “convert” it to e.g.
testa.cml the resulting file is different and looks to me as if there
is some dataloss.
Attached is a self-made file “Maleic anhydride.cml” and the
"conversion" result from OpenBabel.
Why do you think there is data loss? The only things I see are Avogadro
settings appended to the end. Geoff added this functionality recently
and it should not interfere with other programs reading the file. I
opened it here and could not spot any issues. If you have a correct xyz
file or something if you think the molecule is incorrect in some way
that would help me to diagnose the issue.

Interestingly, when I load a fragment and “convert” it to e.g.
testa.cml the resulting file is different and looks to me as if
there is some dataloss.

The fragment CML files come from the Chem-File project and include a
variety of information beyond the standard CML dictionary (e…g,
melting point, formula, etc.). Open Babel also has a slightly
different mechanism for formatting the CML files than the Chem-File
project. (Indeed, I don’t know what program they used to generate
their CML.)

I can promise that the molecular structures “roundtrip” precisely
through Open Babel’s CML support.

I’m glad to hear that the CML files are readable, so we’ll hunt for
the bug in Avogadro’s code and build package. Marcus thinks he’s found
one issue this morning. It seems like the bug probably goes back many
Avogadro releases, but you noticed it recently.

Best regards,
-Geoff

Geoffrey Hutchison schrieb:

It seems like the bug probably goes back many
Avogadro releases, but you noticed it recently.

But I didn’t get a crash with Avogadro 0.9.4.

Could you attach a copy of one of a file that causes the crash please?
That does not happen here, but I suspect it is due to the embedded
settings in CML files.

Every file I create will cause the crash. The file I send with my previous email “Maleic
anhydride.cml” is such a file.

regards Uwe

Uwe Stöhr wrote:

Geoffrey Hutchison schrieb:

It seems like the bug probably goes back many Avogadro releases, but
you noticed it recently.

But I didn’t get a crash with Avogadro 0.9.4.
This was in reference to the bug where Avogadro cannot directly read
many fragment files due to line ending issues.

Could you attach a copy of one of a file that causes the crash please?
That does not happen here, but I suspect it is due to the embedded
settings in CML files.

Every file I create will cause the crash. The file I send with my
previous email “Maleic anhydride.cml” is such a file.
OK - I will try that file and see if I can get a more useful back trace.
Thanks for providing the file - it was not clear that this file was one
that caused a crash. Just to clarify - this file was made with Avogadro
0.9.4 or earlier?

Uwe Stöhr wrote:

Geoffrey Hutchison schrieb:

Could you attach a copy of one of a file that causes the crash please?
That does not happen here, but I suspect it is due to the embedded
settings in CML files.

Every file I create will cause the crash. The file I send with my previous email “Maleic
anhydride.cml” is such a file.

regards Uwe
OK, I got samba set up and tried your file. I tried it with both the
lite (Python-less version) and the Python versions of the Windows
Avogadro installer. Neither of them fail for me here. Does everything
else work OK? Did you try moving the install directory and doing a fresh
install?

I don’t know NSIS so well, but I wonder if we could clean out the
proposed install directories before installing? Without being able to
reproduce the crash it is hard for me to test any proposed fixes. We
could disable the saving/loading of Avogadro configuration data in CML
files, this should probably be optional at least. If you delete the
propertylist part of the CML file does the crash still happen?

Marcus D. Hanwell schrieb:

Thanks for providing the file - it was not clear that this file was one
that caused a crash. Just to clarify - this file was made with Avogadro
0.9.4 or earlier?

It was made with 0.9.4, but as said also files made with 0.9.5b or older versions cause the crash.
All files that use Windows line ending make Avogadro crashing.

regards Uwe

Marcus D. Hanwell schrieb:

OK, I got samba set up and tried your file. I tried it with both the
lite (Python-less version) and the Python versions of the Windows
Avogadro installer. Neither of them fail for me here. Does everything
else work OK?

I haven’t found the time to heavily test out Avogadro yet.

Did you try moving the install directory and doing a fresh
install?

I don’t understand. The problem is independent of the install location. I installed 0.9.5b on two
different PCs with two different Windows versions and the result is the same. The problem is the
wrong file parsing of Avogadro so I don’t expect that it will work by moving files and directories.

I don’t know NSIS so well, but I wonder if we could clean out the
proposed install directories before installing?

This is possible, but when this is needed there is a bug that must be fixed. Every program must work
out of the box, no matter what previous versions of the program were installed before. It is
therefore important that the uninstaller deletes all registry settings. I remember that there was
such a problem in the past where I had to clean up the registry manually after the uninstallation to
make it work after the next installation.
As you know I provided an installer for Avogadro that did this, but in the meantime you changed it
too much so that I cannot tell you right now if there is a bug.

Without being able to
reproduce the crash it is hard for me to test any proposed fixes.

Why do you use Samba and not Windows? To reproduce anyway, can you please

  • install Avogadro 0.9.4
  • uninstall 0.9.4
  • install 0.9.5
  • uninstall 0.0.5
  • install 0.9.5b
    When you then see the crash too, there is indeed a bug in the uninstaller of Avogadro.

regards Uwe

Uwe Stöhr wrote:

Marcus D. Hanwell schrieb:

Did you try moving the install directory and doing a fresh
install?

I don’t understand. The problem is independent of the install location. I installed 0.9.5b on two
different PCs with two different Windows versions and the result is the same. The problem is the
wrong file parsing of Avogadro so I don’t expect that it will work by moving files and directories.

How have you determined this?

Without being able to
reproduce the crash it is hard for me to test any proposed fixes.

Why do you use Samba and not Windows? To reproduce anyway, can you please

  • install Avogadro 0.9.4
  • uninstall 0.9.4
  • install 0.9.5
  • uninstall 0.0.5
  • install 0.9.5b
    When you then see the crash too, there is indeed a bug in the uninstaller of Avogadro.

Sorry for the confusion…I used Samba to get files into the VMWare
virtual machine I am using to do this testing. I am using Windows XP
inside a virtual machine, I am not a Windows user and do not have a
system with Windows installed outside of a virtual machine.

I followed your recipe, still no crash here. None of the installers ever
deleted the registry entries made by Avogadro during run time. Not
yours, not mine. They are made by Avogadro at run time, in addition to
the file association ones made by the installer. I did however add a
settings version, which can be bumped in order to prompt Avogadro to
clear the older settings - I bumped that for this release as there were
quite a few changes. Many users do not bother to run the uninstaller,
and it is possible to build up stale files over time. I was hoping to
rule this out as a possible issue.

I have tried many ways including following your recipe above. I cannot
reproduce your crash and nor can Tim. We do see issues with line endings

  • if Unix line endings, then the file does not load. I do not have any
    more time to look into this right now, Tim is also looking into the line
    ending issue (but cannot reproduce your crash either).

Best wishes,

Marcus

Marcus D. Hanwell schrieb:

If you delete the
propertylist part of the CML file does the crash still happen?

Yes.

regards Uwe

Marcus D. Hanwell schrieb:

I don’t understand. The problem is independent of the install location. I installed 0.9.5b on two
different PCs with two different Windows versions and the result is the same. The problem is the
wrong file parsing of Avogadro so I don’t expect that it will work by moving files and directories.

How have you determined this?

Because the crash only occurs with files that have Windows line endings. With Unix line endings I
get an error message that Avogadro cannot load it, but not crash.

But now I tested out 0.9.5c:
The file handling situation is much better.
Concerning the crash:

  • Strangely the crash only occurs, when you double click on a file in Windows file explorer.
  • When I drag the file to Avogadro’s main window or use the menu File -> Open, the molecule is
    correctly displayed.

Sorry for the confusion…I used Samba to get files into the VMWare
virtual machine I am using to do this testing. I am using Windows XP
inside a virtual machine, I am not a Windows user and do not have a
system with Windows installed outside of a virtual machine.

I’m normally a Windows-only user but to be able to help people with Unix OSes, I installed Ubuntu
parallel to my Windows. This worked fine, so maybe you could do the same the opposite way.

I have tried many ways including following your recipe above. I cannot
reproduce your crash and nor can Tim.

Perhaps it helps that I found out that only the opening double-clicking crashed Avogadro.

  • if Unix line endings, then the file does not load. I do not have any
    more time to look into this right now, Tim is also looking into the line
    ending issue (but cannot reproduce your crash either).

OK, when nothing helps, then concentrate on fixing the line ending issue and postpone my crash.

Thanks for your help and for the immediate release of new binaries.

regards Uwe

I found another bug:

  • open e.g. a *.mol file in Avogadro
  • use the menu File -> Save as
  • Keep the filename as it is (here it is “test.mol”), only use another file type, e.g. *.xyz and
    press Save

Result: Avo asks you if you want to overwrite the existing file “test.mol”.

Expected behaviour: Avo removes the ending mol and saves a file named “test.xyz”

regards Uwe

  • Keep the filename as it is (here it is “test.mol”), only use
    another file type, e.g. *.xyz and
    press Save

Does the file extension change in the dialog itself? On Mac, it does.
This is supposed to happen on Windows as well with the native save
dialog.

Expected behaviour: Avo removes the ending mol and saves a file
named “test.xyz”

So do you see “test.xyz” in the dialog, but an attempt to save
"test.mol"?

Thanks,
-Geoff

On Jun 4, 2009, at 6:26 PM, Uwe Stöhr wrote:

Concerning the crash:

  • Strangely the crash only occurs, when you double click on a file
    in Windows file explorer.
  • When I drag the file to Avogadro’s main window or use the menu
    File -> Open, the molecule is
    correctly displayed.

Have you tried calling Avogadro from the DOS command-line? (Does this
even work?)

I think Avogadro.exe [filename] might reproduce the crash. The method
to load files is not exactly the same as drag-and-drop to the window
or File->Open.

Perhaps it helps that I found out that only the opening double-
clicking crashed Avogadro.

This is an important clue, yes. Thanks.

Thanks for your help and for the immediate release of new binaries.

Well, we’re trying to fix bugs as fast as possible as we get close to
a 1.0 release. Obviously, it looks bad if we say we have a stable
program and it can’t read CML files!

Thanks to Tim and Marcus for looking into the root cause of the bugs!
-Geoff

Uwe Stöhr wrote:

Marcus D. Hanwell schrieb:

I don’t understand. The problem is independent of the install location. I installed 0.9.5b on two
different PCs with two different Windows versions and the result is the same. The problem is the
wrong file parsing of Avogadro so I don’t expect that it will work by moving files and directories.

How have you determined this?

Because the crash only occurs with files that have Windows line endings. With Unix line endings I
get an error message that Avogadro cannot load it, but not crash.

As I stated - I tested both ways (Unix and Windows line endings) - no
crash…

But now I tested out 0.9.5c:
The file handling situation is much better.
Concerning the crash:

  • Strangely the crash only occurs, when you double click on a file in Windows file explorer.
  • When I drag the file to Avogadro’s main window or use the menu File -> Open, the molecule is
    correctly displayed.

Here I double clicked in explorer - no crash. Any other way I tried - no
crash.

Sorry for the confusion…I used Samba to get files into the VMWare
virtual machine I am using to do this testing. I am using Windows XP
inside a virtual machine, I am not a Windows user and do not have a
system with Windows installed outside of a virtual machine.

I’m normally a Windows-only user but to be able to help people with Unix OSes, I installed Ubuntu
parallel to my Windows. This worked fine, so maybe you could do the same the opposite way.

This is exactly what I just stated… Windows XP installed in a VMWare
virtual machine. This is how we built most of our releases for Windows
too. VMware in Linux/Mac with Windows XP.

I have tried many ways including following your recipe above. I cannot
reproduce your crash and nor can Tim.

Perhaps it helps that I found out that only the opening double-clicking crashed Avogadro.

Like I said - this does not cause a crash here. I already tested this
with both Unix and Windows line endings. No crash either way here with
0.9.3, 0.9.4 or 0.9.5 (python or not).

  • if Unix line endings, then the file does not load. I do not have any
    more time to look into this right now, Tim is also looking into the line
    ending issue (but cannot reproduce your crash either).

OK, when nothing helps, then concentrate on fixing the line ending issue and postpone my crash.

With the latest couple of binaries the loading of files with different
line endings is now fixed. Windows or Unix file endings load fine in all
my tests.

Thanks for your help and for the immediate release of new binaries.

We try to please, but like I said none of us are “real” Windows users. I
spend a lot more time than I would like testing code in a Windows XP
virtual machine though…

Hopefully we have managed to resolve some of the outstanding issues on
Windows.

Best wishes,

Marcus

Marcus D. Hanwell schrieb:

I’m normally a Windows-only user but to be able to help people with Unix OSes, I installed Ubuntu
parallel to my Windows. This worked fine, so maybe you could do the same the opposite way.

This is exactly what I just stated… Windows XP installed in a VMWare
virtual machine. This is how we built most of our releases for Windows
too. VMware in Linux/Mac with Windows XP.

I meant to install Windows directly on your machine, not by using any virtual machine.

regards Uwe