Page 1 of 1

FPX test files regenerated?

Posted: 2007-10-31T06:40:14-07:00
by mi
The sample FPX-files in PerlMagick/t/fpx/*.fpx appear to have been regenerated some time between the 6.3.5 and 6.3.6 releases...

And I don't think, the current ones -- those included in 6.3.6-4 -- are correct :(

Could somebody, please, verify? Thanks!

Re: FPX test files regenerated?

Posted: 2007-10-31T06:43:53-07:00
by magick
We verified the FPX regression test images are correct (they produce the expected SHA256 pixel signature and they display properly). We tested with ImageMagick 6.3.6-4 on a Fedora Core 7 32-bit box.

Re: FPX test files regenerated?

Posted: 2007-10-31T06:59:25-07:00
by mi
magick wrote:We verified the FPX regression test images are correct (they produce the expected SHA256 pixel signature and they display properly). We tested with ImageMagick 6.3.6-4 on a Fedora Core 7 32-bit box.
Could you, please, explain the differences, then?

Code: Select all

-rw-rw-r--  1 mi  wheel  80384 Aug 25 20:19 ImageMagick-6.3.5/PerlMagick/t/fpx/input_256.fpx
-rw-rw-r--  1 mi  wheel  33792 Aug 25 20:19 ImageMagick-6.3.5/PerlMagick/t/fpx/input_bw.fpx
-rw-rw-r--  1 mi  wheel  33805 Aug 25 20:19 ImageMagick-6.3.5/PerlMagick/t/fpx/input_grayscale.fpx
-rw-rw-r--  1 mi  wheel  45056 Aug 25 20:19 ImageMagick-6.3.5/PerlMagick/t/fpx/input_jpeg.fpx
-rw-rw-r--  1 mi  wheel  80384 Aug 25 20:19 ImageMagick-6.3.5/PerlMagick/t/fpx/input_truecolor.fpx
-rw-rw-r--  1 mi  wheel  81920 Sep 28 16:58 ImageMagick-6.3.6/PerlMagick/t/fpx/input_256.fpx
-rw-rw-r--  1 mi  wheel  33792 Sep 28 16:58 ImageMagick-6.3.6/PerlMagick/t/fpx/input_bw.fpx
-rw-rw-r--  1 mi  wheel  33792 Sep 28 16:58 ImageMagick-6.3.6/PerlMagick/t/fpx/input_grayscale.fpx
-rw-rw-r--  1 mi  wheel  45056 Sep 28 16:58 ImageMagick-6.3.6/PerlMagick/t/fpx/input_jpeg.fpx
-rw-rw-r--  1 mi  wheel  80384 Sep 28 16:58 ImageMagick-6.3.6/PerlMagick/t/fpx/input_truecolor.fpx
These files have not changed for years -- ImageMagick-6.0.2-7 contains the same ones as 6.3.5-10. But on Sep 28th somebody changed them and now 6.3.6-10 contains, what I continue to believe are corrupted versions....

If you can not account for the changes, there is a problem...

Code: Select all

MD5 (ImageMagick-6.0.2/PerlMagick/t/fpx/input_256.fpx) = 5c5e8b4f49d416a7507abcf6b75aaaed
MD5 (ImageMagick-6.0.2/PerlMagick/t/fpx/input_bw.fpx) = 1dd535a653c5a3c2f57aad59e685a132
MD5 (ImageMagick-6.0.2/PerlMagick/t/fpx/input_grayscale.fpx) = d812d9f50af1e91cc649af9590227ca9
MD5 (ImageMagick-6.0.2/PerlMagick/t/fpx/input_jpeg.fpx) = 67c51f3d559f90edc7625016c62359d6
MD5 (ImageMagick-6.0.2/PerlMagick/t/fpx/input_truecolor.fpx) = 8b143d174dd812e9d7120a4bdd731a16
MD5 (ImageMagick-6.3.5/PerlMagick/t/fpx/input_256.fpx) = 5c5e8b4f49d416a7507abcf6b75aaaed
MD5 (ImageMagick-6.3.5/PerlMagick/t/fpx/input_bw.fpx) = 1dd535a653c5a3c2f57aad59e685a132
MD5 (ImageMagick-6.3.5/PerlMagick/t/fpx/input_grayscale.fpx) = d812d9f50af1e91cc649af9590227ca9
MD5 (ImageMagick-6.3.5/PerlMagick/t/fpx/input_jpeg.fpx) = 67c51f3d559f90edc7625016c62359d6
MD5 (ImageMagick-6.3.5/PerlMagick/t/fpx/input_truecolor.fpx) = 8b143d174dd812e9d7120a4bdd731a16
MD5 (ImageMagick-6.3.6/PerlMagick/t/fpx/input_256.fpx) = 6528bf996dfb3b7b9dd80bec77fd4efe
MD5 (ImageMagick-6.3.6/PerlMagick/t/fpx/input_bw.fpx) = 6004aa358f980e62e1799649d2521dfd
MD5 (ImageMagick-6.3.6/PerlMagick/t/fpx/input_grayscale.fpx) = c0c90f4dbd802e3d713110523cf8f342
MD5 (ImageMagick-6.3.6/PerlMagick/t/fpx/input_jpeg.fpx) = f5c9cfe46d79d14039dd81067d59d97c
MD5 (ImageMagick-6.3.6/PerlMagick/t/fpx/input_truecolor.fpx) = 68e0f27c533c70fb66987d6c81eb853a

Re: FPX test files regenerated?

Posted: 2007-10-31T08:57:55-07:00
by magick
FPX has always been problematic for us (that is why it is not build by default). The library is unsupported and is returning different results than it did in previous years (at least on Fedora). We restored the original regression tests files (e.g. input_256.fpx). If you have the time can you restore these images and run the FPX regression test. It will most likely fail. Post the results here so we can fix the regression test signatures. This will at least allow FPX to run/test properly under FreeBSD. When time permits we will take a look at the libFPX distribution and try to fix any bugs such that we get consistent results across our various supported platforms.

Re: FPX test files regenerated?

Posted: 2007-10-31T10:26:30-07:00
by mi
magick wrote:FPX has always been problematic for us (that is why it is not build by default).
As a matter of fact, I know this very well. But a member of ImageMagick team posted the following on May 31st of this year:
magick wrote:We double-checked and FPX is working fine for us under Fedora 32 and 64-bit environments.
Either he/she was completely clueless, or was lying... There is no chance it could possibly have worked compiled as a 64-bit binary. Most unpleasant...
The library is unsupported and is returning different results than it did in previous years (at least on Fedora). We restored the original regression tests files (e.g. input_256.fpx). If you have the time can you restore these images and run the FPX regression test. It will most likely fail. Post the results here so we can fix the regression test signatures. This will at least allow FPX to run/test properly under FreeBSD. When time permits we will take a look at the libFPX distribution and try to fix any bugs such that we get consistent results across our various supported platforms.
I know about the library's problems, and spent the past couple of weeks forging it into acceptable shape. It no longer crashes on FreeBSD and Linux amd64 (Linux has valgrind, which was extremely useful), and it, actually, reads all the test FPX-files, that were included with ImageMagick up until September 28th. My new version of libfpx allows IM self-tests to pass -- all of them except the PerlMagick/t/fpx/*, because these rely on the files in subject.

I would dearly love to find out, what happened on September 28th, and why the FPX-files were replaced -- my new version of the library crashes trying to open them. I don't have any other FPX-reading software to validate them, unfortunately.

Since the files are part of the IM-distribution, they are, likely, under source-code control (CVS, or whatever). It is within your reach to look at the repository and find out, whether there is any record of the files getting changed.

Also, if you are aware of any independent FPX-files out there (not ImageMagick-created), I would appreciate a pointer. I may need to keep debugging libfpx...

Re: FPX test files regenerated?

Posted: 2007-10-31T10:45:27-07:00
by magick
When you complete your work on FPX, foward the patches here and we will apply them against libfpx-1.2.0.13 and update the distribution at ftp://ftp.imagemagick.org/pub/ImageMagick/delegates . Or if your distribution is available for download, post the URI. Thanks.

Re: FPX test files regenerated?

Posted: 2007-10-31T11:35:33-07:00
by mi
magick wrote:When you complete your work on FPX, foward the patches here and we will apply them against libfpx-1.2.0.13 and update the distribution at ftp://ftp.imagemagick.org/pub/ImageMagick/delegates . Or if your distribution is available for download, post the URI. Thanks.
I still need to know, what happened to the "reference" FPX-files, which are bundled with the ImageMagick distribution.

Who changed them after many years of idleness on September 28th, and why?

Re: FPX test files regenerated?

Posted: 2007-10-31T11:41:48-07:00
by magick
Apparently Fedora Core is producing different FPX images than FreeBSD. Like we mentioned we don't have a FreeBSD system to test against. The path forward would be to get your FPX patches and see if they allow us to create consistent FPX images across different platforms.

Re: FPX test files regenerated?

Posted: 2007-10-31T14:34:12-07:00
by mi
magick wrote:Apparently Fedora Core is producing different FPX images than FreeBSD.
But the files I'm talking about -- PerlMagick/t/fpx/*.fpx -- are not the output... They are the input of the test-scripts.

Please, stop pretending, this is a FreeBSD issue somehow -- the files are used as input for the tests, otherwise there would be no point in including them with the distribution...

Who changed them and why?

Re: FPX test files regenerated?

Posted: 2007-10-31T15:34:38-07:00
by magick
We had no problems displaying/converting the FPX images that were in PerlMagick/t/fpx/*.fpx under Fedora Core. We're not suggesting the problem is with FreeBSD but with either of the FPX delegate library or perhaps g++ version 4.1.2 20070925. However, we reverted the FPX images and we are releasing 6.3.6-5 until we have an opportunity to review the FPX delegate library to ensure it reads/writes properly under all OS's both 32 and 64-bit.

Re: FPX test files regenerated?

Posted: 2007-10-31T20:49:16-07:00
by magick
One of your patches includes this statement:

if (module_path == (char *) NULL)
module_path=MagickImageCodersPath;

It should instead be

if (module_path == (char *) NULL)
module_path=AcquireString(MagickImageCodersPath);

otherwise module_path is freed causing a memory exception if the string is not allocated from the heap.

Re: FPX test files regenerated?

Posted: 2007-10-31T21:50:34-07:00
by mi
magick wrote:We had no problems displaying/converting the FPX images that were in PerlMagick/t/fpx/*.fpx under Fedora Core. We're not suggesting the problem is with FreeBSD but with either of the FPX delegate library or perhaps g++ version 4.1.2 20070925. However, we reverted the FPX images and we are releasing 6.3.6-5 until we have an opportunity to review the FPX delegate library to ensure it reads/writes properly under all OS's both 32 and 64-bit.
Interesting. So, you are saying, on Fedora (32bit) both the old and the new (post-September 28) versions of input_*.fpx read/display correctly?