VMS test status on [email protected]

"Craig A. Berry" <[email protected]>
Newsgroups gmane.comp.lang.perl.ports.vms,gmane.comp.lang.perl.perl5.porters
Message-ID <[email protected]>
Configuring with:

$ @configure -"Dusedevel" -"Dusevmsdebug" -"Duseithreads" -"des"

and building on:

$ cc/vers
HP C V7.3-018 on OpenVMS IA64 V8.3-1H1

the overall score is:

t/io/errno.....................................................FAILED  
at test 2
t/io/inplace...................................................FAILED-- 
unexpected output at test 4
t/re/reg_posixcc...............................................FAILED-- 
unexpected output at test 1507
t/op/filetest_t................................................FAILED  
at test 1
t/op/ref.......................................................FAILED  
at test 117
cpan/ExtUtils-CBuilder/t/02-link...............................FAILED  
at test 8
cpan/Module-Build/t/compat.....................................FAILED  
at test 142
cpan/Module-Build/t/properties/share_dir.......................FAILED  
at test 17
cpan/Pod-Parser/t/pod/find.....................................FAILED-- 
expected 4 tests, saw 1
dist/base/t/fields-5.6.0.......................................FAILED-- 
no leader found
dist/base/t/fields-5.8.0.......................................FAILED-- 
no leader found
dist/ExtUtils-Install/t/InstallWithMM..........................FAILED  
at test 3
t/porting/diag.................................................FAILED-- 
unexpected output at test 0
t/porting/manifest.............................................FAILED  
at test 9427
Failed 14 tests out of 1675, 99.16% okay.

Some more detailed test output and comments where I know anything  
follow:

t/io/errno.....................................................FAILED  
at test 2

$ perl [.io]errno.t
1..16
ok 1 - Wrong errno, PERLIO=perlio stdin='test\n',
not ok 2 - Wrong errno, PERLIO=perlio stdin='test\n', $/=undef
# Failed at [.io]errno.t line 31
#      got "test\noperation invalid for file organization or device\n"
# expected "test\n"
...
not ok 10 - Wrong errno, PERLIO=stdio stdin='test\n', $/=undef
# Failed at [.io]errno.t line 31
#      got "test\noperation invalid for file organization or device\n"
# expected "test\n"

errno does in fact get set by what it's doing.  The specific error  
usually indicates trying to rewind something that can't be rewound,  
like the terminal.  I would guess that there's a rewind implicit in a  
seek that only happens when $/ is undef, though I never managed to put  
my finger on exactly where it was.  Nor do I have any confidence that  
we should be relying on errno not getting set.


t/io/inplace...................................................FAILED-- 
unexpected output at test 4

$ perl [.io]inplace.t
1..6
...
ok 4 - normal inplace edit
Can't open "tmp70124E": error in file name at [.io]inplace.t line 75.
Can't open "tmp70124F": error in file name at [.io]inplace.t line 75.
Can't open "tmp70124G": error in file name at [.io]inplace.t line 75.
ok 5 - consumed ARGV
not ok 6 - normal inplace edit
# Failed at [.io]inplace.t line 81
#      got "bar\nbar\nbar\n"
# expected "foobar\nfoobar\nfoobar\n"

I think this is new-ish; I've never looked at what it's doing.


t/re/reg_posixcc...............................................FAILED-- 
unexpected output at test 1507

The test that fails is marked as TODO, but it also spews more than 2K  
of output in a single line, which probably causes some kind of  
trouble, don't know what exactly.


t/op/filetest_t................................................FAILED  
at test 1

This brand new test works when run interactively, but fails in batch  
mode because the /dev/tty equivalent is mapped to the /dev/null  
equivalent in that situation.  You can successfully open it but it is  
not a terminal.


t/op/ref.......................................................FAILED  
at test 117

$ perl [.op]ref.t
1..196
...
not ok 117 - STDOUT destructor
# Failed at [.op]ref.t line 443
#      got 'ok
# okokok
# '
# expected /(?-xism:^(ok)+$)/
ok 118 - Nothing before we start
ok 119 - Nothing before we start
ok 120 - Accessing via 8 bit symref works
not ok 121 - Accessing via UTF8 symref works # TODO UTF8 mangled in  
symrefs
# Failed at [.op]ref.t line 459
#      got undef
# expected "Pound"

This started failing between 24 Aug 2009 and 28 Aug 2009.  I can't  
give commit IDs because the rsync server had lots of spurious commits  
in that timeframe.  I looked at most (all?) of the commits in that  
range but nothing jumped out at me and I haven't had time to build  
each one and see where it broke.


cpan/ExtUtils-CBuilder/t/02-link...............................FAILED  
at test 8

$ perl [.t]02-link.t
1..8
...
not ok 8 - got expected exit code from executable
#   Failed test 'got expected exit code from executable'
#   at [.t]02-link.t line 69.
#          got: '0'
#     expected: '11'
# Unexpected exit code '0'
# Looks like you failed 1 test of 8.

Well, exit codes are different.  Needs looking into.


cpan/Module-Build/t/compat.....................................FAILED  
at test 142

$ perl [.t]compat.t
...
not ok 142 - Saw destination directory for INSTALLDIRS=vendor
#   Failed test 'Saw destination directory for INSTALLDIRS=vendor'
#   at [.t]compat.t line 260.
#                   '# %SYSTEM-F-ABORT, abort
# # MCR dsa0:[craig.blead]ndbgperl.exe;2 Build.COM -- 
makefile_env_macros 1 fakeinstall
#  
# !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
# # WARNING: Can't create 'perl_root:[man.man3]'
# # Unknown Error
#  
# !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
# # Building Simple
# # Manifying [.blib.lib]simple.pm -> [.blib.libdoc]simple.rno
# # Installing D0:[CRAIG.BLEAD.CPAN.MODULE-BUILD.MB- 
fyhCQ5Pc.libdir]simple.pm
# # Installing perl_root:[man.man3]simple.rno
# # Writing D0:[CRAIG.BLEAD.CPAN.MODULE-BUILD.MB- 
fyhCQ5Pc.libdir.VMS_IA64-ithread.auto.Simple].packlist
# '
#     doesn't match '(?ix-sm:D0\:\[CRAIG\.BLEAD\.CPAN\.MODULE\-BUILD 
\.MB\-fyhCQ5Pc\.lbiidr\] .* Simple\.pm)'
ok 143 - fakeinstall PREFIX=$libdir2 ran ok
not ok 144 - Saw destination directory for PREFIX=$libdir2
#   Failed test 'Saw destination directory for PREFIX=$libdir2'
#   at [.t]compat.t line 260.
#                   '# %SYSTEM-F-ABORT, abort
# # MCR dsa0:[craig.blead]ndbgperl.exe;2 Build.COM -- 
makefile_env_macros 1 fakeinstall
#  
# !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
# # WARNING: Can't create 'perl_root:[man.man3]'
# # Unknown Error
#  
# !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
# # Building Simple
# # Installing D0:[CRAIG.BLEAD.CPAN.MODULE-BUILD.MB- 
fyhCQ5Pc.libdir]simple.pm
# # Installing perl_root:[man.man3]simple.rno
# # Writing D0:[CRAIG.BLEAD.CPAN.MODULE-BUILD.MB- 
fyhCQ5Pc.libdir.VMS_IA64-ithread.auto.Simple].packlist
# '
#     doesn't match '(?ix-sm:D0\:\[CRAIG\.BLEAD\.CPAN\.MODULE\-BUILD 
\.MB\-fyhCQ5Pc\.lbiidr\] .* Simple\.pm)'
ok 145 - fakeinstall PREFIX=$libdir2 LIB=mylib ran ok
not ok 146 - Saw destination directory for PREFIX=$libdir2 LIB=mylib
#   Failed test 'Saw destination directory for PREFIX=$libdir2  
LIB=mylib'
#   at [.t]compat.t line 260.
#                   '# %SYSTEM-F-ABORT, abort
# # MCR dsa0:[craig.blead]ndbgperl.exe;2 Build.COM -- 
makefile_env_macros 1 fakeinstall
#  
# !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
# # WARNING: Can't create 'perl_root:[man.man3]'
# # Unknown Error
#  
# !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
# # Building Simple
# # Installing D0:[CRAIG.BLEAD.CPAN.MODULE-BUILD.MB- 
fyhCQ5Pc.libdir]simple.pm
# # Installing perl_root:[man.man3]simple.rno
# # Writing D0:[CRAIG.BLEAD.CPAN.MODULE-BUILD.MB- 
fyhCQ5Pc.libdir.VMS_IA64-ithread.auto.Simple].packlist
# '
#     doesn't match '(?ix-sm:D0\:\[CRAIG\.BLEAD\.CPAN\.MODULE\-BUILD 
\.MB\-fyhCQ5Pc\.lbiidr\][/\\]mylib[/\\]Simple\.pm)'
ok 147 - Descrip.MMS shouldn't exist
...

It looks like we're getting stuff in an architecture-specific auto  
directory but shouldn't.  Or maybe that's where it should be on VMS  
and we're erroneously thinking it shouldn't.


cpan/Module-Build/t/properties/share_dir.......................FAILED  
at test 17

$ perl [.t.properties]share_dir.t
1..21
...
not ok 17 - share_dir files copied to blib
#   Failed test 'share_dir files copied to blib'
#   at [.t.properties]share_dir.t line 182.
#     Structures begin differing at:
#          $got->[0] = 'blib/lib/auto/share/dist/simple-share/foo.txt'
#     $expected->[0] = 'blib/lib/auto/share/dist/Simple-Share/foo.txt'
ok 18 - temp install dir created
not ok 19 - share_dir files correctly installed
#   Failed test 'share_dir files correctly installed'
#   at [.t.properties]share_dir.t line 205.
#     Structures begin differing at:
#          $got->[0] = 'temp_install/lib/perl5/auto/share/dist/simple- 
share/foo.txt'
#     $expected->[0] = 'temp_install/lib/perl5/auto/share/dist/Simple- 
Share/foo.txt'

Case sensitive comparisons don't work when case is not preserved.  I  
don't think is_deeply has a cousin named like_deeply, but that would  
be a nice addition to the Test::* family for this kind of thing.


cpan/Pod-Parser/t/pod/find.....................................FAILED-- 
expected 4 tests, saw 1

1..4
ok 1 - use Pod::Find;
### 2. searching /D0/CRAIG/BLEAD/CPAN/lib/pod/
### found
Illegal division by zero at [.t.pod]find.t line 71.
# Looks like you planned 4 tests but ran 1.
# Looks like your test exited with 1024 just after 1.

Hmm.  It's trying to do some calculation based on finding zero files.   
Why it doesn't find anything needs looking into.


dist/base/t/fields-5.6.0.......................................FAILED-- 
no leader found
dist/base/t/fields-5.8.0.......................................FAILED-- 
no leader found

These are failing because they are invoked via C<do file> which uses  
Perl_pp_require, which on VMS cannot, by default, handle Unix-style  
filenames with multiple dots.  We used to be protected from this  
because t/TEST used to convert to native syntax before running a test  
file.  The easiest solution would be to simply remove these files from  
core since the tests in them are skipped on Perls later than 5.6 and  
5.8, respectively.


dist/ExtUtils-Install/t/InstallWithMM..........................FAILED  
at test 3

This always succeeds when run by itself.  There could be another test  
leaving something in the environment that gets in its way, but I've so  
far not managed to sort out what that is.


t/porting/diag.................................................FAILED-- 
unexpected output at test 0

$ perl [.porting]diag.t
# blead/av.c
Can't open blead/av.c: no such file or directory at [.porting]diag.t  
line 53, <$diagfh> line 5129.
1..0

The home-grown glob does not properly handle relative paths containing  
C<../>.  So, for example, glob('../*') from the t/ directory gives  
blead/av.c rather than ../av.c as it should.  Fixing that is some  
moderate intensity C work in Perl_trim_unixpath in vms/vms.c.  It's a  
genuine bug but has nothing to do with what this test is testing.


t/porting/manifest.............................................FAILED  
at test 9427
...
ok 9426 - File XSUB.h exists
not ok 9427 - MANIFEST sorted properly
# Failed at [.porting]manifest.t line 51
#      got ''../MANIFEST' is NOT sorted properly
# %SYSTEM-F-ABORT, abort
# '
# expected /(?-xism:is sorted properly)/
1..9427

Looks to me like it's genuinely not sorted properly and Porting/ 
manisort accurately detects that.  Don't know why that doesn't show up  
on other platforms.

$ perl  Porting/manisort -o m.tmp
$ gdiff -pu MANIFEST m.tmp
--- manifest    2009-12-18 12:51:10 -0600
+++ m.tmp       2009-12-18 22:21:28 -0600
@@ -304,6 +304,7 @@ cpan/Compress-Raw-Zlib/zlib-src/zutil.c
  cpan/Compress-Raw-Zlib/zlib-src/zutil.h                 
Compress::Raw::Zlib
  cpan/Compress-Raw-Zlib/Zlib.xs                 Compress::Raw::Zlib
  cpan/CPAN/Changes                              CPAN.pm Changes file
+cpan/CPAN/lib/App/Cpan.pm              helper package for CPAN.pm
  cpan/CPAN/lib/CPAN/API/HOWTO.pod               recipe book for  
programming with CPAN.pm
  cpan/CPAN/lib/CPAN/Author.pm           helper package for CPAN.pm
  cpan/CPAN/lib/CPAN/Bundle.pm           helper package for CPAN.pm
@@ -313,8 +314,6 @@ cpan/CPAN/lib/CPAN/Debug.pm         helper pack
  cpan/CPAN/lib/CPAN/DeferredCode.pm     helper package for CPAN.pm
  cpan/CPAN/lib/CPAN/Distribution.pm     helper package for CPAN.pm
  cpan/CPAN/lib/CPAN/Distroprefs.pm      helper package for CPAN.pm
-cpan/CPAN/lib/CPAN/Mirrors.pm          helper package for CPAN.pm
-cpan/CPAN/lib/App/Cpan.pm              helper package for CPAN.pm
  cpan/CPAN/lib/CPAN/Distrostatus.pm     helper package for CPAN.pm
  cpan/CPAN/lib/CPAN/Exception/blocked_urllist.pm        helper  
package for CPAN.pm
  cpan/CPAN/lib/CPAN/Exception/RecursiveDependency.pm    helper  
package for CPAN.pm
@@ -329,6 +328,7 @@ cpan/CPAN/lib/CPAN/Kwalify/distroprefs.d
  cpan/CPAN/lib/CPAN/Kwalify/distroprefs.yml     helper file for  
validating config files
  cpan/CPAN/lib/CPAN/Kwalify.pm          helper package for CPAN.pm
  cpan/CPAN/lib/CPAN/LWP/UserAgent.pm    helper package for CPAN.pm
+cpan/CPAN/lib/CPAN/Mirrors.pm          helper package for CPAN.pm
  cpan/CPAN/lib/CPAN/Module.pm           helper package for CPAN.pm
  cpan/CPAN/lib/CPAN/Nox.pm                      Runs CPAN while  
avoiding compiled extensions
  cpan/CPAN/lib/CPAN.pm                  Interface to Comprehensive  
Perl Archive Network

Failed 14 tests out of 1675, 99.16% okay.


________________________________________
Craig A. Berry
mailto:[email protected]

"... getting out of a sonnet is much more
  difficult than getting in."
                  Brad Leithauser
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.