Hello,
A few tests fail on hurd-i386:
Failed 9 tests out of 2029, 99.56% okay.
../cpan/Sys-Syslog/t/syslog.t
../cpan/Time-HiRes/t/HiRes.t
../cpan/autodie/t/recv.t
../dist/IO/t/io_pipe.t
../dist/threads/t/libc.t
../dist/threads/t/stack.t
../ext/Socket/t/socketpair.t
io/pipe.t
op/sigdispatch.t
Could you mark them as TODO on GNU/Hurd?
Thanks,
Samuel
tags 648623 +confirmed thanks Yup, will do this after the initial 5.14 upload to unstable.
Has anybody looked at the issues behind these failures? I'd like to have a separate bug for each one, whether in hurd or perl, so that we could at least refer to them in the Debian patch that marks the tests as TODO. However, instead of patching the tests, I think I'd actually prefer just making debian/rules ignore test failures on GNU/Hurd so that the failures would stay visible in the build log. Possibly this should be accompanied by an RC bug on hurd so that the issues have to be resolved one way or another if it becomes a release architecture. Ignoring errors obviously has the downside of not catching any regressions automatically. I suppose the hurd folks would need to assume responsibility for that. I don't feel very strongly about this; please let me know what you think.
I agree. The effect of TODO in t/test.pl it to run the tests but not make them fatal, I believe, so I don't think this holds?
Those TODO failures are then visible only in verbose mode. Consider: % ./perl t/TEST io/perlio_leaks.t t/io/perlio_leaks....ok All tests successful. u=0.00 s=0.00 cu=0.00 cs=0.00 scripts=1 tests=12 vs. % ./perl t/TEST -v io/perlio_leaks.t t/io/perlio_leaks....ok 1 - :unix not ok 2 - :unix # TODO [perl #56644] PerlIO resource leaks on open() and then :pop in :unix and :stdio # Failed at io/perlio_leaks.t line 30 # got "4" # expected "3" not ok 3 - :unix # TODO [perl #56644] PerlIO resource leaks on open() and then :pop in :unix and :stdio # Failed at io/perlio_leaks.t line 30 # got "5" # expected "3" ok 4 - :stdio not ok 5 - :stdio # TODO [perl #56644] PerlIO resource leaks on open() and then :pop in :unix and :stdio # Failed at io/perlio_leaks.t line 30 # got "7" # expected "6" not ok 6 - :stdio # TODO [perl #56644] PerlIO resource leaks on open() and then :pop in :unix and :stdio # Failed at io/perlio_leaks.t line 30 # got "8" # expected "6" ok 7 - :perlio ok 8 - :perlio ok 9 - :perlio ok 10 - :crlf ok 11 - :crlf ok 12 - :crlf 1..12 ok All tests successful. u=0.00 s=0.00 cu=0.01 cs=0.00 scripts=1 tests=12
I was about to implement this, but then I realised that ignoring the result of the whole test suite runs a real risk of installing a perl which is completely (or significantly) broken because of some other external change, so I think I'm swaying back towards the idea of patching out the failing tests instead. Definitely agree we should have bugs for each of the known failures.
Bugs now created, and I'm almost done with the patches TODOing/SKIPing tests as appropriate. If there are no objections I'll push this later today or during the week. Cheers, Dominic.
Hi,
I just had a run of the perl suite on my Hurd VM, disabling all the
patches to disable the tests initially mentioned in this report; the
result was:
Failed 4 tests out of 2031, 99.80% okay.
../cpan/Time-HiRes/t/HiRes.t
../dist/threads/t/stack.t
io/pipe.t
op/sigdispatch.t
- wrt #650096, io_pipe.t still passes for me (hurd 20111206-1
+ libc0.3 2.13-23)...
- op/stat.t: on my VM `ls /dev` hangs now, so I had to disable
(with the attached patch) 6 checks in it
- syslog.t (#650093) looks like it passes now, I guess the bug could
be closed?
So, unless I'm missing anything, the following tests could not need any
more skip on Hurd:
- syslog.t (hurd_test_todo_syslog.diff)
- socketpair.t (hurd_test_skip_socketpair.diff)
- recv.t (hurd_test_skip_recv.diff)
- libc.t (hurd_test_skip_libc.diff)
Pino Toscano, le Mon 19 Dec 2011 00:25:57 +0100, a écrit : This is odd, I don't have this issue. IIRC you were getting it on /dev/klog? Probably, but does it work with/without a running syslogd? Samuel
Alle lunedì 19 dicembre 2011, Samuel Thibault ha scritto: Correct. general there's no /var/log): Dec 18 19:56:38 hurd-emu perl: uid 1000 is testing Perl 5.014002 syslog(3) capabilities by connecting to a unix socket Dec 18 19:56:38 hurd-emu perl: uid 1000 is testing Perl 5.014002 syslog(3) capabilities by connecting to a native socket Dec 18 19:56:38 hurd-emu perl: uid 1000 is testing Perl 5.014002 syslog(3) capabilities by connecting to a native socket, setting a fake errno: (os/kern) invalid address Dec 18 19:56:38 hurd-emu perl: uid 1000 is testing Perl 5.014002 syslog(3) capabilities by connecting to a unix socket Dec 18 19:56:38 hurd-emu perl: uid 1000 is testing Perl 5.014002 syslog(3) capabilities by connecting to a unix socket, setting a fake errno: (os/kern) invalid address
This is what I get on exodar (I didn't re-enable
../cpan/Time-HiRes/t/HiRes.t):
Failed 5 tests out of 2031, 99.75% okay.
../cpan/Sys-Syslog/t/syslog.t
../dist/IO/t/io_pipe.t
../dist/threads/t/stack.t
io/pipe.t
op/sigdispatch.t
with
hurd (20111206-1)
eglibc (2.13-22~0.1)
so it's not just my test box which is still broken with:
../dist/IO/t/io_pipe.t and ../cpan/Sys-Syslog/t/syslog.t.
Dominic.