ci.debian.org and pkg-perl packages
gregor herrmann
gregoa at debian.org
Tue Sep 9 15:58:57 UTC 2014
On Tue, 09 Sep 2014 08:04:16 +0200, Martin Pitt wrote:
> gregor herrmann [2014-09-08 22:40 +0200]:
> > I'd just take something like
> > % grep-available -s Package -FMaintainer pkg-perl-maintainers /var/lib/apt/lists/ftp.ch.debian.org_debian_dists_unstable_main_source_Sources | sort -u
> Ah, good. I did that. I created https://titanpad.com/jQv06Sq0up to
> coordinate this, I also added the command for the testing loop that I
> use.
Great, thanks!
I looked at a handful of failure reports at
https://people.debian.org/~mpitt/tmp/perl-failures/
(1) One pattern I saw was (in this case from
https://people.debian.org/~mpitt/tmp/perl-failures/kephra/log):
08:07:25: Error: Unable to initialize GTK+, is DISPLAY set properly?
not ok 7 - require Wx;
That's where the test suite needs DISPLAY / an X server, and where we
run the tests during package build with xvfb-run:
override_dh_auto_test:
xvfb-run -a dh_auto_test
Not sure how/where this can happen for our autopkgtest tests?
(2) Another interesting case, discovered by Niko and mentioned on IRC,
are packages like
https://people.debian.org/~mpitt/tmp/perl-failures/libautodie-perl/log
(and I've seen similar things with adt-run locally yesterday as well
without understanding them):
The first test (smoke) passes, and then the second (syntax.t) fails
with:
# Failed test 'Got file list for package libautodie-perl'
# at /usr/share/pkg-perl-autopkgtest/runtime-deps.d/syntax.t line 49.
# Looks like you failed 1 test of 3.
/usr/share/pkg-perl-autopkgtest/runtime-deps.d/syntax.t ..
1..3
ok 1 - Package libautodie-perl is known to dpkg
not ok 2 - Got file list for package libautodie-perl
ok 3 # skip nothing to test
Dubious, test returned 1 (wstat 256, 0x100)
Failed 1/3 subtests
(less 1 skipped subtest: 1 okay)
which looks like autopkgtest doesn't test the code from the actual
separate libautodie-perl package but is "satisfied" by the virtual
libautodie-perl provided by perl-modules.
If this is the case, that would hit a whole group of dual-lifed
modules, and probably needs to be dealt with at the autopkgtest side
(at least I have no idea what we could do here) ...
(3) Another failure type seems to be packages with "missing" build
dependencies, like
https://people.debian.org/~mpitt/tmp/perl-failures/alice/log
"Missing" under quotation marks since they are not missing for the
tests at build time and therefor also not for the smoke tests, but
missing for the syntax.t test:
# Can't locate AnyEvent/Redis.pm in @INC (you may need to install the AnyEvent::Redis module) (@INC contains: /etc/perl /usr/local/lib/x86_64-linux-gnu/perl/5.20.0 /usr/local/share/perl/5.20.0 /usr/lib/x86_64-linux-gnu/perl5/5.20 /usr/share/perl5 /usr/lib/x86_64-linux-gnu/perl/5.20 /usr/share/perl/5.20 /usr/local/lib/site_perl .) at /usr/share/perl5/App/Alice/MessageStore/Redis.pm line 4.
# BEGIN failed--compilation aborted at /usr/share/perl5/App/Alice/MessageStore/Redis.pm line 4.
not ok 2 - /usr/bin/perl -wc /usr/share/perl5/App/Alice/MessageStore/Redis.pm exited successfully
Similar is https://people.debian.org/~mpitt/tmp/perl-failures/libapache-session-browseable-perl/log:
In this case libdbi-perl etc. are in Build-Depends, so the smoke test
passes, but syntax.t fails because they are no runtime dependencies.
(Which might be a mistake but it's not so uncommon that dependencies
for optional modules are in Recomends or Suggests.)
Other example: https://people.debian.org/~mpitt/tmp/perl-failures/libauthen-sasl-perl/log
(4) Next failure type, e.g. in
https://people.debian.org/~mpitt/tmp/perl-failures/libalien-wxwidgets-perl/log
Tests pass but produce warnings in use.t:
# Subtest: all modules in libalien-wxwidgets-perl pass the syntax check
1..3
# Name "Alien::wxWidgets::Config::gtk2_3_0_1_uni_gcc_3_4::VAR1" used only once: possible typo at /usr/lib/x86_64-linux-gnu/perl5/5.20/Alien/wxWidgets/Config/gtk2_3_0_1_uni_gcc_3_4.pm line 10.
ok 1 - /usr/bin/perl -wc /usr/lib/x86_64-linux-gnu/perl5/5.20/Alien/wxWidgets/Config/gtk2_3_0_1_uni_gcc_3_4.pm exited successfully
# Possible precedence issue with control flow operator at /usr/lib/x86_64-linux-gnu/perl5/5.20/Alien/wxWidgets/Utility.pm line 77.
# Name "Alien::wxWidgets::dont_remap" used only once: possible typo at /usr/lib/x86_64-linux-gnu/perl5/5.20/Alien/wxWidgets/Utility.pm line 271.
ok 2 - /usr/bin/perl -wc /usr/lib/x86_64-linux-gnu/perl5/5.20/Alien/wxWidgets/Utility.pm exited successfully
# Possible precedence issue with control flow operator at /usr/lib/x86_64-linux-gnu/perl5/5.20/Alien/wxWidgets/Utility.pm line 77.
ok 3 - /usr/bin/perl -wc /usr/lib/x86_64-linux-gnu/perl5/5.20/Alien/wxWidgets.pm exited successfully
ok 3 - all modules in libalien-wxwidgets-perl pass the syntax check
ok
All tests successful.
Files=1, Tests=3, 0 wallclock secs ( 0.02 usr 0.00 sys + 0.06 cusr 0.00 csys = 0.08 CPU)
Result: PASS
# Failed test '/usr/bin/perl -w -M"Alien::wxWidgets" -e 1 2>&1 produced no output'
# at /usr/share/pkg-perl-autopkgtest/runtime-deps.d/use.t line 73.
# Looks like you failed 1 test of 2.
/usr/share/pkg-perl-autopkgtest/runtime-deps.d/use.t ..
1..2
# Possible precedence issue with control flow operator at /usr/lib/x86_64-linux-gnu/perl5/5.20/Alien/wxWidgets/Utility.pm line 77.
ok 1 - /usr/bin/perl -w -M"Alien::wxWidgets" -e 1 2>&1 exited successfully
not ok 2 - /usr/bin/perl -w -M"Alien::wxWidgets" -e 1 2>&1 produced no output
Dubious, test returned 1 (wstat 256, 0x100)
Failed 1/2 subtests
Other example:
https://people.debian.org/~mpitt/tmp/perl-failures/libaudio-ecasound-perl/log
(5) https://people.debian.org/~mpitt/tmp/perl-failures/libapache-authenhook-perl/log
is a different version of the POD problem; in this case t/99pod.t
tries to assemble a list of files to test in the source tree and
finds none since we're moving the tests away.
Maybe we should add a dummy $TDIR/blib/Foo/Bar.pm with '1;' for those
cases?
I've seen something similar yesterday in libtest-cleannamespaces-perl
and tried this hack:
https://anonscm.debian.org/cgit/pkg-perl/packages/libtest-cleannamespaces-perl.git/commit/?id=5a7a6fcdd2533f9c3e35216867bf31d576f55b65
Depending on the general aesthetic feelings, we might do something
like this from the smoke test script?
Ok; this was only from looking at the failure in packages from a* to
liba* ...
Cheers,
gregor
--
.''`. Homepage: http://info.comodo.priv.at/ - OpenPGP key 0xBB3A68018649AA06
: :' : Debian GNU/Linux user, admin, and developer - http://www.debian.org/
`. `' Member of VIBE!AT & SPI, fellow of the Free Software Foundation Europe
`-
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 949 bytes
Desc: Digital Signature
URL: <http://lists.alioth.debian.org/pipermail/autopkgtest-devel/attachments/20140909/95bb3269/attachment.sig>
More information about the autopkgtest-devel
mailing list