Re: [Plplot-devel] MinGW/MSYS PLplot test results on Wine

2012-10-27 Thread Alan W. Irwin
On 2012-10-26 13:39-0700 Alan W. Irwin wrote:

> Thanks, Arjen, for those useful comparisons.  I took a while to
> respond because there is a lot going on here concerning a Wine bug
> that showed obvious symptoms for a downloaded Windows binary version
> of CMake, but which did not (!) show obvious symptoms for a locally
> compiled version of CMake on Wine. It turns out that by coincidence a
> Wine developer had fixed this Wine bug two days ago (at least that
> patched version of Wine works for the simple test the CMake developers
> had put together to illustrate the issue for the downloaded version of
> CMake). So over the next few days I plan to try all my PLplot tests
> again (as well as ephcom and te_gen tests) for the downloaded CMake on
> the patched Wine version.  I will also take this opportunity to look
> at the Lua configuration issue in more detail. For example, it is
> always possible it will just plain disappear for that patched version
> of Wine.

Well, lua configuration is still an issue with CMake-2.8.9,
MinGW-4.7.0, and Wine-1.5.16.  But after 4 minutes of looping it did
the Wine equivalent of a segfault.  So just on the off-chance our Lua
find module is using CMake in a strange manner that leads to memory
management issues that we can detect on the Linux side of things, I
will set up a Linux test (sometime next week because there is a lot on
my plate at the moment) to try Lua configuration under valgrind in as
similar circumstances (no Lua available on my system) as on the Wine
platform.

However, there is a really neat result as well I found for the above
cutting-edge versions; the module parsing issue with f95 that has been
around as long as I have been Fortran testing on Wine (at least a
couple of years) have all disappeared!  I suspect it was the change
from wine-1.5.15 to wine-1.5.16 (which included a bug fix that greatly
affected CMake another way) that is the key difference here.

Alan
__
Alan W. Irwin

Astronomical research affiliation with Department of Physics and Astronomy,
University of Victoria (astrowww.phys.uvic.ca).

Programming affiliations with the FreeEOS equation-of-state
implementation for stellar interiors (freeeos.sf.net); the Time
Ephemerides project (timeephem.sf.net); PLplot scientific plotting
software package (plplot.sf.net); the libLASi project
(unifont.org/lasi); the Loads of Linux Links project (loll.sf.net);
and the Linux Brochure Project (lbproject.sf.net).
__

Linux-powered Science
__

--
WINDOWS 8 is here. 
Millions of people.  Your app in 30 days.
Visit The Windows 8 Center at Sourceforge for all your go to resources.
http://windows8center.sourceforge.net/
join-generation-app-and-make-money-coding-fast/
___
Plplot-devel mailing list
Plplot-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/plplot-devel


[Plplot-devel] Good CMake-2.8.9 news for Ada, bad CMake-2.8.10-rc3 news for Ada and D

2012-10-27 Thread Alan W. Irwin
Another good result I just recently discovered for PLplot tests on
CMake-2.8.9/MinGW-4.7.0/MSYS/Wine-1.5.16, is

ada
   Missing examples:
   Differing postscript output :  16
   Missing stdout  :
   Differing stdout: 
adathick
   Missing examples:
   Differing postscript output :  16
   Missing stdout  :
   Differing stdout:

which is the same as the corresponding Linux platform result.  (On both
platforms example 16 is different from the C version because Andrew's
recent C example 16 changes have not yet been propagated to Ada and
most of our other languages.)

MinGW support of the Ada variant of gcc has been iffy in the past
with some MinGW releases including it and some not.  In fact, I
cannot remember if I have ever gotten such a good Ada result with
MinGW before.

But from these results it appears that those using CMake-2.8.9 (and
previous) and MinGW-4.7.0 on Windows should have no issues with our
Ada bindings or running our Ada examples.

So that's the good Ada news.  The bad news is that there has been a
serious change in the CMake infrastructure for supporting languages
during the 2.8.10 release cycle with the result that both Ada and D do
not work for CMake-2.8.10-rc3 while they work fine for CMake-2.8.9. It
was only by chance that I extended the PLplot test to include
Ada on Wine with CMake-CMake-2.8.10-rc3, found the Ada issue for
that CMake version, and then when I attempted to confirm 
that on Linux found the additional D issue as well for that
CMake version.  But at least I did find it in time before the
planned release of CMake-2.8.10 on Monday.

The CMake developers have a well-deserved reputation for keeping
backward compatibility.  But in this case, they appear to have failed
to keep backwards compatibility for their language support
infrastructure.  I have informed the CMake developers of this bad
situation for 2.8.10-rc3, and they have acknowledged that report. It's
possible they will just go ahead and release 2.8.10 on Monday, and let
those like us who provide CMake support for additional languages such
as Ada and D pick up the pieces ourselves. That's the worst case
scenario while the best case scenario would be one where they delayed
their release to re-establish backwards compatibility for their
language support infrastructure (perhaps with a deprecation warning to
give us some time to adjust our language support for Ada and D to use
the new infrastructure).  But we will see.

We can draw lessons from this episode for PLplot development as well.
You just never know the seriousness of the impact of
backwards-incompatible changes.  On the other hand, any actively
developed code including the PLplot code needs a constant stream of
such changes because otherwise the code would get much too crufty and
eventually unmaintainable. So to my mind (and something I would have
appreciated from the CMake developers) a good compromise between these
two important concerns is such backwards-incompatible changes should
be done, but they should be preceded by a well-advertised deprecation
period where it takes some effort (e.g., using the -DPL_DEPRECATED=ON
cmake option) for the user to gain access to the old way of doing
things.

I did express some initial support for waiving such a deprecation
period for our planned removal of the old format plmap files and the
code that reads those files, but with quiet influence from Andrew,
sanity eventually prevailed with me, and we ended up doing exactly the
right thing with handling this necessary backwards-incompatible
change.  Long may that approach contine with further
backwards-incompatible changes with PLplot!

Alan
__
Alan W. Irwin

Astronomical research affiliation with Department of Physics and Astronomy,
University of Victoria (astrowww.phys.uvic.ca).

Programming affiliations with the FreeEOS equation-of-state
implementation for stellar interiors (freeeos.sf.net); the Time
Ephemerides project (timeephem.sf.net); PLplot scientific plotting
software package (plplot.sf.net); the libLASi project
(unifont.org/lasi); the Loads of Linux Links project (loll.sf.net);
and the Linux Brochure Project (lbproject.sf.net).
__

Linux-powered Science
__

--
WINDOWS 8 is here. 
Millions of people.  Your app in 30 days.
Visit The Windows 8 Center at Sourceforge for all your go to resources.
http://windows8center.sourceforge.net/
join-generation-app-and-make-money-coding-fast/
___
Plplot-devel mailing list
Plplot-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/plplot-devel