#648623 Tests skipped on GNU/Hurd

Package:
perl
Source:
perl
Description:
Larry Wall's Practical Extraction and Report Language
Submitter:
Samuel Thibault
Date:
2014-08-31 00:21:35 UTC
Severity:
normal
#648623#5
Date:
2011-11-13 15:51:29 UTC
From:
To:
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

#648623#10
Date:
2011-11-13 15:58:12 UTC
From:
To:
tags 648623 +confirmed
thanks

Yup, will do this after the initial 5.14 upload to unstable.

#648623#17
Date:
2011-11-20 08:20:22 UTC
From:
To:
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.

#648623#22
Date:
2011-11-22 23:50:10 UTC
From:
To:
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?

#648623#27
Date:
2011-11-23 05:56:59 UTC
From:
To:
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

#648623#32
Date:
2011-11-26 11:39:08 UTC
From:
To:
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.

#648623#57
Date:
2011-11-27 16:42:04 UTC
From:
To:
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.

#648623#64
Date:
2011-12-18 23:25:57 UTC
From:
To:
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)

#648623#69
Date:
2011-12-18 23:30:36 UTC
From:
To:
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

#648623#74
Date:
2011-12-19 00:03:41 UTC
From:
To:
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

#648623#79
Date:
2011-12-20 21:23:49 UTC
From:
To:
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.