Skip Menu |

This queue is for tickets about the GD CPAN distribution.

Report information
The Basics
Id: 106594
Status: resolved
Priority: 0/
Queue: GD

People
Owner: RURBAN [...] cpan.org
Requestors: JHI [...] cpan.org
Cc:
AdminCc:

Bug Information
Severity: (no value)
Broken in: (no value)
Fixed in: (no value)



Subject: test failures with 5.22.0
... Configuring L/LD/LDS/GD-2.56.tar.gz with Build.PL Configuring for libgd version 2.0.34. Checking for stray libgd header files...none found. Included Features: GD_XPM GD_JPEG GD_FONTCONFIG GD_FREETYPE GD_PNG GD_G IF GD_GIFANIM GD_OPENPOLYGON GD_UNCLOSEDPOLY GD_ANIMGIF GD_FTCIRCLE VERSION_33 GD library used from: /usr Created MYMETA.yml and MYMETA.json Creating new 'Build' script for 'GD' version '2.56' LDS/GD-2.56.tar.gz /usr/local/perl-forge/v/5.22.0/bin/perl Build.PL -- OK Running Build for L/LD/LDS/GD-2.56.tar.gz Building GD ... ./Build -- OK Running Build test # Testing using gd2 support. # Failed test 'image comparison test 7' # at t/GD.t line 249. # Looks like you failed 1 test of 11. t/GD.t ........ Dubious, test returned 1 (wstat 256, 0x100) Failed 1/11 subtests t/Polyline.t .. ok Test Summary Report ------------------- t/GD.t (Wstat: 256 Tests: 11 Failed: 1) Failed test: 9 Non-zero exit status: 1 Files=2, Tests=12, 1 wallclock secs ( 0.04 usr 0.00 sys + 0.24 cusr 0.03 csys = 0.31 CPU) Result: FAIL Failed 1/2 test programs. 1/12 subtests failed. LDS/GD-2.56.tar.gz ./Build test -- NOT OK
It looks like compare is coming back as a 7 though I'm not clear what 7 corresponds to.
On Thu Nov 12 01:50:18 2015, TODDR wrote: Show quoted text
> It looks like compare is coming back as a 7 though I'm not clear what > 7 corresponds to.
It looks like 7 would correspond to these on my system #define GD_CMP_IMAGE 1 /* Actual image IS different */ #define GD_CMP_NUM_COLORS 2 /* Number of Colours in pallette differ */ #define GD_CMP_COLOR 4 /* Image colours differ */
One final note. I tried to build this on CentOS 5 through CentOS 7 (both architectures) The tests passed on C7 only so it appears GD changed enough that these tests are not reliable between old/new versions of libgd?
CC: "JHI [...] cpan.org" <JHI [...] cpan.org>
Subject: Re: [rt.cpan.org #106594] test failures with 5.22.0
Date: Fri, 13 Nov 2015 12:52:07 -0500
To: "bug-GD [...] rt.cpan.org" <bug-GD [...] rt.cpan.org>
From: Jarkko Hietaniemi <jhi [...] iki.fi>
I have no deeper knowledge of GD, or CentOS, or how CentOS configures GD. On Thursday, November 12, 2015, Todd Rinaldo via RT <bug-GD@rt.cpan.org> wrote: Show quoted text
> <URL: https://rt.cpan.org/Ticket/Display.html?id=106594 > > > One final note. I tried to build this on CentOS 5 through CentOS 7 (both > architectures) The tests passed on C7 only so it appears GD changed enough > that these tests are not reliable between old/new versions of libgd? >
-- There is this special biologist word we use for 'stable'. It is 'dead'. -- Jack Cohen
From: ppisar [...] redhat.com
Dne Pá 21.srp.2015 11:33:12, JHI napsal(a): Show quoted text
> Running Build test > # Testing using gd2 support. > > # Failed test 'image comparison test 7' > # at t/GD.t line 249. > # Looks like you failed 1 test of 11. > t/GD.t ........ > Dubious, test returned 1 (wstat 256, 0x100) > Failed 1/11 subtests > t/Polyline.t .. ok >
CPAN RT#105407 looks like the same failure. I started to receive this failure in Fedora distribution after upgrading freetype library from 2.6.1 to 2.6.2 version. Maybe the common problem to all these failures is different font rendering by the freetype library.
From: ppisar [...] redhat.com
Dne Pá 21.srp.2015 11:33:12, JHI napsal(a): Show quoted text
> # Failed test 'image comparison test 7' > # at t/GD.t line 249. > # Looks like you failed 1 test of 11. > t/GD.t ........ > Dubious, test returned 1 (wstat 256, 0x100) > Failed 1/11 subtests > t/Polyline.t .. ok >
And CPAN RT#100294 is another duplicate.
From: ppisar [...] redhat.com
Dne Po 14.pro.2015 08:50:06, ppisar napsal(a): Show quoted text
> Maybe the common problem to all these failures is different font rendering by > the freetype library.
When I regenerated the sample data with new freetype library using the --write positional argument and compared the t/test_data/images/t7/7-0{0,1}.png images with Imagemagick (compare 7-00.png 7-01.png -compose src diff.png) it indeed identified 6 different pixels in the image. Provided the freetype library is heavily patched by software distributors (for aesthetic or legal reasons), the test7 employing font rendering is not portable. Either we should generate the sample image on the build host using GD native tools or remove the test7 completely.
On Mon Dec 14 08:43:35 2015, ppisar wrote: Show quoted text
> Dne Po 14.pro.2015 08:50:06, ppisar napsal(a):
> > Maybe the common problem to all these failures is different font > > rendering by > > the freetype library.
> > When I regenerated the sample data with new freetype library using the > --write positional argument and compared the t/test_data/images/t7/7- > 0{0,1}.png images with Imagemagick (compare 7-00.png 7-01.png -compose > src diff.png) it indeed identified 6 different pixels in the image. > > Provided the freetype library is heavily patched by software > distributors (for aesthetic or legal reasons), the test7 employing > font rendering is not portable. > > Either we should generate the sample image on the build host using GD > native tools or remove the test7 completely.
I encountered the same problem w/ image test #7 (in GD.t) when attempting to build GD-2.56 via Perlbrew for Perl 5.22.3. Using ppisar's image comparison method, there were 9 different pixels noted by Imagemagick: githyanki:~/.cpanm/latest-build/GD-2.56/t/test_data/images/t7$ ack -iv '#ffffffcc' diff.txt # ImageMagick pixel enumeration: 400,250,255,srgba 61,71: (61937,0,7710,52428) #F1001ECC srgba(241,0,30,0.8) 58,73: (61937,0,7710,52428) #F1001ECC srgba(241,0,30,0.8) 96,104: (61937,0,7710,52428) #F1001ECC srgba(241,0,30,0.8) 93,111: (61937,0,7710,52428) #F1001ECC srgba(241,0,30,0.8) 110,112: (61937,0,7710,52428) #F1001ECC srgba(241,0,30,0.8) 107,119: (61937,0,7710,52428) #F1001ECC srgba(241,0,30,0.8) 132,146: (61937,0,7710,52428) #F1001ECC srgba(241,0,30,0.8) 288,209: (61937,0,7710,52428) #F1001ECC srgba(241,0,30,0.8) 285,216: (61937,0,7710,52428) #F1001ECC srgba(241,0,30,0.8) See attached text files for detailed information about Perl version, building GD and environment (perlbrew, uname).
Subject: gd-build-test.txt
githyanki:~/.cpanm/latest-build/GD-2.56$ perl ./Build Building GD githyanki:~/.cpanm/latest-build/GD-2.56$ perl ./Build.PL gdlib-config: warning: this script is deprecated; please use the pkg-config file instead. Configuring for libgd version 2.2.4. Checking for stray libgd header files...none found. Included Features: GD_GIF GD_GIFANIM GD_OPENPOLYGON GD_ZLIB GD_PNG GD_FREETYPE GD_FONTCONFIG GD_JPEG GD_XPM GD_TIFF GD_WEBP GD library used from: /usr Created MYMETA.yml and MYMETA.json Creating new 'Build' script for 'GD' version '2.56' githyanki:~/.cpanm/latest-build/GD-2.56$ less README githyanki:~/.cpanm/latest-build/GD-2.56$ ./Build Building GD githyanki:~/.cpanm/latest-build/GD-2.56$ ./Build test t/GD.t ........ 1/11 # Testing using gd2 support. # Failed test 'image comparison test 7' # at t/GD.t line 249. t/GD.t ........ 10/11 # Looks like you failed 1 test of 11. t/GD.t ........ Dubious, test returned 1 (wstat 256, 0x100) Failed 1/11 subtests t/Polyline.t .. ok Test Summary Report ------------------- t/GD.t (Wstat: 256 Tests: 11 Failed: 1) Failed test: 9 Non-zero exit status: 1 Files=2, Tests=12, 1 wallclock secs ( 0.02 usr 0.00 sys + 0.08 cusr 0.01 csys = 0.11 CPU) Result: FAIL Failed 1/2 test programs. 1/12 subtests failed. githyanki:~/.cpanm/latest-build/GD-2.56$ ./Build test --verbose t/GD.t ........ 1..11 ok 1 - use GD; ok 2 - use GD::Simple; # Testing using gd2 support. ok 3 - image comparison test 1 ok 4 - image comparison test 2 ok 5 - image comparison test 3 ok 6 - image comparison test 4 ok 7 - image comparison test 5 ok 8 - image comparison test 6 not ok 9 - image comparison test 7 # Failed test 'image comparison test 7' # at t/GD.t line 249. ok 10 - round trip gd ok 11 - round trip gd2 # Looks like you failed 1 test of 11. Dubious, test returned 1 (wstat 256, 0x100) Failed 1/11 subtests t/Polyline.t .. 1..1 # Running under perl version 5.022003 for linux # Current time local: Wed Feb 1 12:04:05 2017 # Current time GMT: Wed Feb 1 18:04:05 2017 # Using Test.pm version 1.26_01 ok 1 ok Test Summary Report ------------------- t/GD.t (Wstat: 256 Tests: 11 Failed: 1) Failed test: 9 Non-zero exit status: 1 Files=2, Tests=12, 0 wallclock secs ( 0.02 usr 0.00 sys + 0.09 cusr 0.01 csys = 0.12 CPU) Result: FAIL Failed 1/2 test programs. 1/12 subtests failed. githyanki:~/.cpanm/latest-build/GD-2.56$ rpm -qa | ack -i '\bgd\b' gd-2.2.4-1.fc25.x86_64 gd-devel-2.2.4-1.fc25.x86_64 githyanki:~/.cpanm/latest-build/GD-2.56$ uname -ar Linux githyanki 4.9.5-200.fc25.x86_64 #1 SMP Fri Jan 20 12:24:16 UTC 2017 x86_64 x86_64 x86_64 GNU/Linux githyanki:~/.cpanm/latest-build/GD-2.56$ perlbrew info Current perl: Name: perl-5.22.3 Path: /home/username/perl5/perlbrew/perls/perl-5.22.3/bin/perl Config: -de -Dprefix=/home/username/perl5/perlbrew/perls/perl-5.22.3 -Aeval:scriptdir=/home/username/perl5/perlbrew/perls/perl-5.22.3/bin Compiled at: Jan 19 2017 10:09:32 perlbrew: version: 0.78 ENV: PERLBREW_ROOT: /home/username/perl5/perlbrew PERLBREW_HOME: PERLBREW_PATH: /home/username/perl5/perlbrew/bin:/home/username/perl5/perlbrew/perls/perl-5.22.3/bin PERLBREW_MANPATH: /home/username/perl5/perlbrew/perls/perl-5.22.3/man githyanki:~/.cpanm/latest-build/GD-2.56$ perl -I . t/GD.t --write 1..11 ok 1 - use GD; ok 2 - use GD::Simple; Writing regression files... at t/GD.t line 28. # Testing using gd2 support. ok 3 - image comparison test 1 ok 4 - image comparison test 2 ok 5 - image comparison test 3 ok 6 - image comparison test 4 ok 7 - image comparison test 5 ok 8 - image comparison test 6 ok 9 - image comparison test 7 ok 10 - round trip gd ok 11 - round trip gd2 githyanki:~/.cpanm/latest-build/GD-2.56$ cd t/test_data/images/t7/ githyanki:~/.cpanm/latest-build/GD-2.56/t/test_data/images/t7$ ls 7-00.gd 7-00.gif 7-00.png 7-01.gd2 7-01.jpeg 7-02.gd 7-02.gif 7-02.png diff.txt 7-00.gd2 7-00.jpeg 7-01.gd 7-01.gif 7-01.png 7-02.gd2 7-02.jpeg diff.png githyanki:~/.cpanm/latest-build/GD-2.56/t/test_data/images/t7$ compare 7-00.png 7-01.png -compose src diff.png githyanki:~/.cpanm/latest-build/GD-2.56/t/test_data/images/t7$ convert diff.png diff.txt githyanki:~/.cpanm/latest-build/GD-2.56/t/test_data/images/t7$ ack -iv '#ffffffcc' diff.txt # ImageMagick pixel enumeration: 400,250,255,srgba 61,71: (61937,0,7710,52428) #F1001ECC srgba(241,0,30,0.8) 58,73: (61937,0,7710,52428) #F1001ECC srgba(241,0,30,0.8) 96,104: (61937,0,7710,52428) #F1001ECC srgba(241,0,30,0.8) 93,111: (61937,0,7710,52428) #F1001ECC srgba(241,0,30,0.8) 110,112: (61937,0,7710,52428) #F1001ECC srgba(241,0,30,0.8) 107,119: (61937,0,7710,52428) #F1001ECC srgba(241,0,30,0.8) 132,146: (61937,0,7710,52428) #F1001ECC srgba(241,0,30,0.8) 288,209: (61937,0,7710,52428) #F1001ECC srgba(241,0,30,0.8) 285,216: (61937,0,7710,52428) #F1001ECC srgba(241,0,30,0.8) githyanki:~/.cpanm/latest-build/GD-2.56/t/test_data/images/t7$
Subject: perlbrew-perl-v.txt
Summary of my perl5 (revision 5 version 22 subversion 3) configuration: Platform: osname=linux, osvers=4.9.3-200.fc25.x86_64, archname=x86_64-linux uname='linux githyanki.localdomain 4.9.3-200.fc25.x86_64 #1 smp fri jan 13 01:01:13 utc 2017 x86_64 x86_64 x86_64 gnulinux ' config_args='-de -Dprefix=/home/username/perl5/perlbrew/perls/perl-5.22.3 -Aeval:scriptdir=/home/username/perl5/perlbrew/perls/perl-5.22.3/bin' hint=recommended, useposix=true, d_sigaction=define useithreads=undef, usemultiplicity=undef use64bitint=define, use64bitall=define, uselongdouble=undef usemymalloc=n, bincompat5005=undef Compiler: cc='cc', ccflags ='-fwrapv -fno-strict-aliasing -pipe -fstack-protector-strong -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64', optimize='-O2', cppflags='-fwrapv -fno-strict-aliasing -pipe -fstack-protector-strong -I/usr/local/include' ccversion='', gccversion='6.3.1 20161221 (Red Hat 6.3.1-1)', gccosandvers='' intsize=4, longsize=8, ptrsize=8, doublesize=8, byteorder=12345678, doublekind=3 d_longlong=define, longlongsize=8, d_longdbl=define, longdblsize=16, longdblkind=3 ivtype='long', ivsize=8, nvtype='double', nvsize=8, Off_t='off_t', lseeksize=8 alignbytes=8, prototype=define Linker and Libraries: ld='cc', ldflags =' -fstack-protector-strong -L/usr/local/lib' libpth=/usr/local/lib /usr/lib /lib/../lib64 /usr/lib/../lib64 /lib /lib64 /usr/lib64 /usr/local/lib64 libs=-lpthread -lnsl -lgdbm -ldb -ldl -lm -lcrypt -lutil -lc -lgdbm_compat perllibs=-lpthread -lnsl -ldl -lm -lcrypt -lutil -lc libc=libc-2.24.so, so=so, useshrplib=false, libperl=libperl.a gnulibc_version='2.24' Dynamic Linking: dlsrc=dl_dlopen.xs, dlext=so, d_dlsymun=undef, ccdlflags='-Wl,-E' cccdlflags='-fPIC', lddlflags='-shared -O2 -L/usr/local/lib -fstack-protector-strong' Characteristics of this binary (from libperl): Compile-time options: HAS_TIMES PERLIO_LAYERS PERL_DONT_CREATE_GVSV PERL_HASH_FUNC_ONE_AT_A_TIME_HARD PERL_MALLOC_WRAP PERL_NEW_COPY_ON_WRITE PERL_PRESERVE_IVUV USE_64_BIT_ALL USE_64_BIT_INT USE_LARGE_FILES USE_LOCALE USE_LOCALE_COLLATE USE_LOCALE_CTYPE USE_LOCALE_NUMERIC USE_LOCALE_TIME USE_PERLIO USE_PERL_ATOF Locally applied patches: Devel::PatchPerl 1.46 Built under linux Compiled at Jan 19 2017 10:09:32 %ENV: PERL5LIB="" PERLBREW_LIB="" PERLBREW_MANPATH="/home/username/perl5/perlbrew/perls/perl-5.22.3/man" PERLBREW_PATH="/home/username/perl5/perlbrew/bin:/home/username/perl5/perlbrew/perls/perl-5.22.3/bin" PERLBREW_PERL="perl-5.22.3" PERLBREW_ROOT="/home/username/perl5/perlbrew" PERLBREW_SKIP_INIT="1" PERLBREW_VERSION="0.78" PERL_LOCAL_LIB_ROOT="" @INC: /home/username/perl5/perlbrew/perls/perl-5.22.3/lib/site_perl/5.22.3/x86_64-linux /home/username/perl5/perlbrew/perls/perl-5.22.3/lib/site_perl/5.22.3 /home/username/perl5/perlbrew/perls/perl-5.22.3/lib/5.22.3/x86_64-linux /home/username/perl5/perlbrew/perls/perl-5.22.3/lib/5.22.3 .
Fixed with RURBAN/GD-2.56_01.tar.gz -- Reini Urban
Fixed with 2.57