David Charles Todd wrote:
So, I have tried three different versions of tt2: 2.14, 2.13, 2.08. Each
fails some portion of their tests. I have a hard time believing I am the
first to discover this.

I don't have such a hard time believing it; there are several possible reasons.

Firstly, SuSE 9.3 is a relatively new release so perhaps not that many people have done an install onto it. For example, I have several SuSE machines at work but haven't upgraded any of them yet, let alone reinstalled Perl modules on any of them afterwards.

But I do have a new 9.3 install at home. When I looked at that, I found I had installed Template and it was running happily. So I reran make test and found a second reason you may be the first to report the problem. The Pod::POM tests were all skipped because I don't have that module installed, so I don't get a test failure. I imagine that's quite common; I for one had never heard of Pod::POM until now, let alone installed it :)

So I installed Pod::POM and reran the Template tests. They still work just fine! So there's a third reason to believe you may be the first - it does look like there's some factor specific to your platform.

<snip>

My system is SuSE 9.3.

perl -V
Summary of my perl5 (revision 5 version 8 subversion 6) configuration:
 Platform:
   osname=linux, osvers=2.6.9, archname=i586-linux-thread-multi
uname='linux salieri 2.6.9 #1 smp fri jan 14 15:41:33 utc 2005 i686 athlon i386 gnulinux ' config_args='-ds -e -Dprefix=/usr -Dvendorprefix=/usr -Dinstallusrbinperl -Dusethreads -Di_db -Di_dbm -Di_ndbm -Di_gdbm -Duseshrplib=true -Doptimize=-O2 -march=i586 -mcpu=i686 -fmessage-length=0 -Wall -g -Wall -pipe'
   hint=recommended, useposix=true, d_sigaction=define
usethreads=define use5005threads=undef useithreads=define usemultiplicity=define
   useperlio=define d_sfio=undef uselargefiles=define usesocks=undef
   use64bitint=undef use64bitall=undef uselongdouble=undef
   usemymalloc=n, bincompat5005=undef
 Compiler:
cc='cc', ccflags ='-D_REENTRANT -D_GNU_SOURCE -DTHREADS_HAVE_PIDS -DDEBUGGING -fno-strict-aliasing -pipe -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64', optimize='-O2 -march=i586 -mcpu=i686 -fmessage-length=0 -Wall -g -Wall -pipe', cppflags='-D_REENTRANT -D_GNU_SOURCE -DTHREADS_HAVE_PIDS -DDEBUGGING -fno-strict-aliasing -pipe' ccversion='', gccversion='3.3.5 20050117 (prerelease) (SUSE Linux)', gccosandvers=''
   intsize=4, longsize=4, ptrsize=4, doublesize=8, byteorder=1234
   d_longlong=define, longlongsize=8, d_longdbl=define, longdblsize=12
ivtype='long', ivsize=4, nvtype='double', nvsize=8, Off_t='off_t', lseeksize=8
   alignbytes=4, prototype=define
 Linker and Libraries:
   ld='cc', ldflags =''
   libpth=/lib /usr/lib /usr/local/lib
   libs=-lnsl -ldl -lm -lcrypt -lutil -lpthread -lc
   perllibs=-lnsl -ldl -lm -lcrypt -lutil -lpthread -lc
   libc=, so=so, useshrplib=true, libperl=libperl.so
   gnulibc_version='2.3.4'
 Dynamic Linking:
dlsrc=dl_dlopen.xs, dlext=so, d_dlsymun=undef, ccdlflags='-Wl,-E -Wl,-rpath,/usr/lib/perl5/5.8.6/i586-linux-thread-multi/CORE'
   cccdlflags='-fPIC', lddlflags='-shared'


Characteristics of this binary (from libperl):
Compile-time options: DEBUGGING MULTIPLICITY USE_ITHREADS USE_LARGE_FILES PERL_IMPLICIT_CONTEXT
 Built under linux
 Compiled at Mar 19 2005 17:34:48
 @INC:
   /usr/lib/perl5/5.8.6/i586-linux-thread-multi
   /usr/lib/perl5/5.8.6
   /usr/lib/perl5/site_perl/5.8.6/i586-linux-thread-multi
   /usr/lib/perl5/site_perl/5.8.6
   /usr/lib/perl5/site_perl
   /usr/lib/perl5/vendor_perl/5.8.6/i586-linux-thread-multi
   /usr/lib/perl5/vendor_perl/5.8.6
   /usr/lib/perl5/vendor_perl
   .

Here's my perl -V for comparison:

Summary of my perl5 (revision 5 version 8 subversion 6) configuration:
  Platform:
    osname=linux, osvers=2.6.9, archname=x86_64-linux-thread-multi
uname='linux bach 2.6.9 #1 smp fri jul 2 14:21:59 utc 2004 x86_64 x86_64 x86_64 gnulinux ' config_args='-ds -e -Dprefix=/usr -Dvendorprefix=/usr -Dinstallusrbinperl -Dusethreads -Di_db -Di_dbm -Di_ndbm -Di_gdbm -Duseshrplib=true -Doptimize=-O2 -fmessage-length=0 -Wall -g -Wall -pipe'
    hint=recommended, useposix=true, d_sigaction=define
usethreads=define use5005threads=undef useithreads=define usemultiplicity=define
    useperlio=define d_sfio=undef uselargefiles=define usesocks=undef
    use64bitint=define use64bitall=define uselongdouble=undef
    usemymalloc=n, bincompat5005=undef
  Compiler:
cc='cc', ccflags ='-D_REENTRANT -D_GNU_SOURCE -DTHREADS_HAVE_PIDS -DDEBUGGING -fno-strict-aliasing -pipe -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64',
    optimize='-O2 -fmessage-length=0 -Wall -g -Wall -pipe',
cppflags='-D_REENTRANT -D_GNU_SOURCE -DTHREADS_HAVE_PIDS -DDEBUGGING -fno-strict-aliasing -pipe' ccversion='', gccversion='3.3.5 20050117 (prerelease) (SUSE Linux)', gccosandvers=''
    intsize=4, longsize=8, ptrsize=8, doublesize=8, byteorder=12345678
    d_longlong=define, longlongsize=8, d_longdbl=define, longdblsize=16
ivtype='long', ivsize=8, nvtype='double', nvsize=8, Off_t='off_t', lseeksize=8
    alignbytes=8, prototype=define
  Linker and Libraries:
    ld='cc', ldflags =' -L/usr/local/lib64'
    libpth=/lib64 /usr/lib64 /usr/local/lib64
    libs=-lm -ldl -lcrypt -lpthread
    perllibs=-lm -ldl -lcrypt -lpthread
libc=/lib64//lib64/libc.so.6, so=so, useshrplib=true, libperl=libperl.so
    gnulibc_version='2.3.4'
  Dynamic Linking:
dlsrc=dl_dlopen.xs, dlext=so, d_dlsymun=undef, ccdlflags='-Wl,-E -Wl,-rpath,/usr/lib/perl5/5.8.6/x86_64-linux-thread-multi/CORE'
    cccdlflags='-fPIC', lddlflags='-shared -L/usr/local/lib64'


Characteristics of this binary (from libperl):
Compile-time options: DEBUGGING MULTIPLICITY USE_ITHREADS USE_64_BIT_INT USE_64_BIT_ALL USE_LARGE_FILES PERL_IMPLICIT_CONTEXT
  Built under linux
  Compiled at Mar 19 2005 17:36:59
  @INC:
    /usr/lib/perl5/5.8.6/x86_64-linux-thread-multi
    /usr/lib/perl5/5.8.6
    /usr/lib/perl5/site_perl/5.8.6/x86_64-linux-thread-multi
    /usr/lib/perl5/site_perl/5.8.6
    /usr/lib/perl5/site_perl
    /usr/lib/perl5/vendor_perl/5.8.6/x86_64-linux-thread-multi
    /usr/lib/perl5/vendor_perl/5.8.6
    /usr/lib/perl5/vendor_perl
    .


The most obvious difference is that I'm running on an Athlon64 and you appear to be on a 32-bit architecture. I guess yours might also be multi-processor, multi-core or Intel hyperthreaded, which might make a difference.

Another obvious configuration issue is what versions of Perl modules are you running and where did they come from (CPAN, YaST/SuSE or somewhere else?). See below for a specific comment.

[In this next section, all tests not mentioned were okay or skipped for obvious reasons]
[EMAIL PROTECTED]:~/src/Template-Toolkit-2.14> make test
make[1]: Entering directory `/home/dtodd/src/Template-Toolkit-2.14/xs'
make[1]: Leaving directory `/home/dtodd/src/Template-Toolkit-2.14/xs'
PERL_DL_NONLAZY=1 /usr/bin/perl "-MExtUtils::Command::MM" "-e" "test_harness(0, 'blib/lib', 'blib/arch')" t/*.t

t/gd.............ok 6/11FAILED 7:  - template text 2 did not match expected
t/gd.............FAILED test 7
       Failed 1/11 tests, 90.91% okay

You didn't report the gd errors in your earlier posting. Is this a new problem?

t/pod............ok 9/17Template process failed: undef error - Operation `eq': no method found,
       left argument in overloaded package Pod::POM::Node::Pod,
right argument has no overloaded magic at lib/Template/Stash.pm line 582.

FAILED 10: - template text 4 process FAILED: [% FOREACH h1 = global.pom.head1...
t/pod............NOK 10FAILED 11:  - (obviously did not match expected)
t/pod............NOK 11Template process failed: undef error - Operation `eq': no method found,
       left argument in overloaded package Pod::POM::Node::Pod,
right argument has no overloaded magic at lib/Template/Stash.pm line 582.

FAILED 12: - template text 5 process FAILED: [% FOREACH h2 = global.pom.head1...
t/pod............NOK 12FAILED 13:  - (obviously did not match expected)
t/pod............NOK 13Template process failed: undef error - Operation `eq': no method found,
       left argument in overloaded package Pod::POM::Node::Pod,
right argument has no overloaded magic at lib/Template/Stash.pm line 582.

FAILED 14: - template text 6 process FAILED: [% PROCESS $item.type FOREACH it...
t/pod............NOK 14FAILED 15:  - (obviously did not match expected)
t/pod............NOK 15Template process failed: undef error - Operation `eq': no method found,
       left argument in overloaded package Pod::POM::Node::Pod,
right argument has no overloaded magic at lib/Template/Stash.pm line 582.

FAILED 16: - template text 7 process FAILED: [% VIEW v prefix='pod/html/';\n ...
t/pod............NOK 16FAILED 17:  - (obviously did not match expected)
t/pod............FAILED tests 10-17
       Failed 8/17 tests, 52.94% okay
Failed Test Stat Wstat Total Fail  Failed  List of Failed
-------------------------------------------------------------------------------
t/gd.t                    11    1   9.09%  7
t/pod.t                   17    8  47.06%  10-17
5 tests skipped.
Failed 2/90 test scripts, 97.78% okay. 9/2597 subtests failed, 99.65% okay.
make: *** [test_dynamic] Error 255

Installed versions of modules that seem to be requested:
   MANPAGE      Pod::POM - POD Object Model
   INST_FILE    /usr/lib/perl5/site_perl/5.8.6/Pod/POM.pm
   INST_VERSION 0.15

Hmm. The version of Pod::POM that I just installed was 0.17, which has been current for two years apparently. Perhaps a sensible next step would be to upgrade this module (all modules?) to the current version.

  MANPAGE      GD.pm - Interface to Gd Graphics Library
INST_FILE /usr/lib/perl5/site_perl/5.8.6/i586-linux-thread-multi/GD.pm
   INST_VERSION 2.19

The current version of this is apparently 2.25. The releases subsequent to 2.19 have some changes to improve behaviour in testing according to CPAN.

Cheers, Dave


_______________________________________________
templates mailing list
[email protected]
http://lists.template-toolkit.org/mailman/listinfo/templates

Reply via email to