On Fri, 27 Nov 2020 20:31:10 +1030, Ken Ibbotson wrote: > Package: libtest-fitesque-perl > Origin: remote.origin.url=git@salsa.debian.org: > perl-team/modules/packages/libtest-fitesque-perl.git What I found: - Standards-Version should be 4.5.1 as we had a new release of the Debian Policy in the meantime. - You directly changed lib/Test/FITesque.pm to fix the spelling; this doesn't work: dh_clean dpkg-source: info: using source format '3.0 (quilt)' dpkg-source: info: building libtest-fitesque-perl using existing ./libtest-fitesque-perl_0.04.orig.tar.gz dpkg-source: info: local changes detected, the modified files are: libtest-fitesque-perl-0.04/lib/Test/FITesque.pm dpkg-source: error: aborting due to unexpected upstream changes, see /home/gregoa/tmp/libtest-fitesque-perl_0.04-1.diff.F2KdgZ dpkg-source: info: you can integrate the local changes with dpkg-source --commit And dpkg-source's info is a bit misleading; the clean way to do this is to create a quilt patch (and revert the direct changes to the file). Besides the quilt manpage etc. there's also https://perl-team.pages.debian.net/howto/quilt.html - After locally reverting 3b9227de2452fd214fb3191dfcf362f8e62a79b9 (i.e. resetting lib/Test/FITesque.pm), so we get past the dpkg-source error, the package doesn't build (in a cowbuilder chroot) because the tests fail: Can't locate Test/Exception.pm in @INC (you may need to install the Test::Exception module) (@INC contains: t/lib /build/libtest-fitesque-perl-0.04/inc /build/libtest-fitesque-perl-0.04/blib/lib /build/libtest-fitesque-perl-0.04/blib/arch /etc/perl /usr/local/lib/x86_64-linux-gnu/perl/5.32.0 /usr/local/share/perl/5.32.0 /usr/lib/x86_64-linux-gnu/perl5/5.32 /usr/share/perl5 /usr/lib/x86_64-linux-gnu/perl-base /usr/lib/x86_64-linux-gnu/perl/5.32 /usr/share/perl/5.32 /usr/local/lib/site_perl) at t/01-fixture.t line 8. BEGIN failed--compilation aborted at t/01-fixture.t line 8. # Looks like your test exited with 2 before it could output anything. t/01-fixture.t .... 1..15 Dubious, test returned 2 (wstat 512, 0x200) Failed 15/15 subtests Can't locate Test/Exception.pm in @INC (you may need to install the Test::Exception module) (@INC contains: /build/libtest-fitesque-perl-0.04/inc /build/libtest-fitesque-perl-0.04/blib/lib /build/libtest-fitesque-perl-0.04/blib/arch /etc/perl /usr/local/lib/x86_64-linux-gnu/perl/5.32.0 /usr/local/share/perl/5.32.0 /usr/lib/x86_64-linux-gnu/perl5/5.32 /usr/share/perl5 /usr/lib/x86_64-linux-gnu/perl-base /usr/lib/x86_64-linux-gnu/perl/5.32 /usr/share/perl/5.32 /usr/local/lib/site_perl) at t/02-test.t line 7. BEGIN failed--compilation aborted at t/02-test.t line 7. # Looks like your test exited with 2 before it could output anything. t/02-test.t ....... 1..24 Dubious, test returned 2 (wstat 512, 0x200) Failed 24/24 subtests Could not load 'Buddha::TestRun' fixture: Base class package "Class::Data::Inheritable" is empty. (Perhaps you need to 'use' the module which defines that package first, or make that module available in @INC (@INC contains: t/lib /build/libtest-fitesque-perl-0.04/inc /build/libtest-fitesque-perl-0.04/blib/lib /build/libtest-fitesque-perl-0.04/blib/arch /etc/perl /usr/local/lib/x86_64-linux-gnu/perl/5.32.0 /usr/local/share/perl/5.32.0 /usr/lib/x86_64-linux-gnu/perl5/5.32 /usr/share/perl5 /usr/lib/x86_64-linux-gnu/perl-base /usr/lib/x86_64-linux-gnu/perl/5.32 /usr/share/perl/5.32 /usr/local/lib/site_perl). at /build/libtest-fitesque-perl-0.04/blib/lib/Test/FITesque/Fixture.pm line 7. BEGIN failed--compilation aborted at /build/libtest-fitesque-perl-0.04/blib/lib/Test/FITesque/Fixture.pm line 7. Compilation failed in require at /usr/lib/x86_64-linux-gnu/perl-base/base.pm line 135. ...propagated at /usr/lib/x86_64-linux-gnu/perl-base/base.pm line 157. BEGIN failed--compilation aborted at t/lib/Buddha/TestRun.pm line 5. Compilation failed in require at /usr/share/perl/5.32/Module/Load.pm line 77. Can't locate Buddha/TestRun in @INC (@INC contains: t/lib /build/libtest-fitesque-perl-0.04/inc /build/libtest-fitesque-perl-0.04/blib/lib /build/libtest-fitesque-perl-0.04/blib/arch /etc/perl /usr/local/lib/x86_64-linux-gnu/perl/5.32.0 /usr/local/share/perl/5.32.0 /usr/lib/x86_64-linux-gnu/perl5/5.32 /usr/share/perl5 /usr/lib/x86_64-linux-gnu/perl-base /usr/lib/x86_64-linux-gnu/perl/5.32 /usr/share/perl/5.32 /usr/local/lib/site_perl) at /usr/share/perl/5.32/Module/Load.pm line 77. t/03-test-run.t ... 1..2 Dubious, test returned 2 (wstat 512, 0x200) Failed 2/2 subtests Can't locate Test/Exception.pm in @INC (you may need to install the Test::Exception module) (@INC contains: /build/libtest-fitesque-perl-0.04/inc /build/libtest-fitesque-perl-0.04/blib/lib /build/libtest-fitesque-perl-0.04/blib/arch /etc/perl /usr/local/lib/x86_64-linux-gnu/perl/5.32.0 /usr/local/share/perl/5.32.0 /usr/lib/x86_64-linux-gnu/perl5/5.32 /usr/share/perl5 /usr/lib/x86_64-linux-gnu/perl-base /usr/lib/x86_64-linux-gnu/perl/5.32 /usr/share/perl/5.32 /usr/local/lib/site_perl) at t/04-suite.t line 7. BEGIN failed--compilation aborted at t/04-suite.t line 7. # Looks like your test exited with 2 before it could output anything. t/04-suite.t ...... 1..14 Dubious, test returned 2 (wstat 512, 0x200) Failed 14/14 subtests Could not load 'Buddha::SuiteRunTest' fixture: Base class package "Class::Data::Inheritable" is empty. (Perhaps you need to 'use' the module which defines that package first, or make that module available in @INC (@INC contains: t/lib /build/libtest-fitesque-perl-0.04/inc /build/libtest-fitesque-perl-0.04/blib/lib /build/libtest-fitesque-perl-0.04/blib/arch /etc/perl /usr/local/lib/x86_64-linux-gnu/perl/5.32.0 /usr/local/share/perl/5.32.0 /usr/lib/x86_64-linux-gnu/perl5/5.32 /usr/share/perl5 /usr/lib/x86_64-linux-gnu/perl-base /usr/lib/x86_64-linux-gnu/perl/5.32 /usr/share/perl/5.32 /usr/local/lib/site_perl). at /build/libtest-fitesque-perl-0.04/blib/lib/Test/FITesque/Fixture.pm line 7. BEGIN failed--compilation aborted at /build/libtest-fitesque-perl-0.04/blib/lib/Test/FITesque/Fixture.pm line 7. Compilation failed in require at /usr/lib/x86_64-linux-gnu/perl-base/base.pm line 135. ...propagated at /usr/lib/x86_64-linux-gnu/perl-base/base.pm line 157. BEGIN failed--compilation aborted at t/lib/Buddha/SuiteRunTest.pm line 5. Compilation failed in require at /usr/share/perl/5.32/Module/Load.pm line 77. Can't locate Buddha/SuiteRunTest in @INC (@INC contains: t/lib /build/libtest-fitesque-perl-0.04/inc /build/libtest-fitesque-perl-0.04/blib/lib /build/libtest-fitesque-perl-0.04/blib/arch /etc/perl /usr/local/lib/x86_64-linux-gnu/perl/5.32.0 /usr/local/share/perl/5.32.0 /usr/lib/x86_64-linux-gnu/perl5/5.32 /usr/share/perl5 /usr/lib/x86_64-linux-gnu/perl-base /usr/lib/x86_64-linux-gnu/perl/5.32 /usr/share/perl/5.32 /usr/local/lib/site_perl) at /usr/share/perl/5.32/Module/Load.pm line 77. t/05-suite-run.t .. 1..1 Dubious, test returned 2 (wstat 512, 0x200) Failed 1/1 subtests Could not load 'Buddha::FITesqueFixture' fixture: Base class package "Class::Data::Inheritable" is empty. (Perhaps you need to 'use' the module which defines that package first, or make that module available in @INC (@INC contains: t/lib t/mock /build/libtest-fitesque-perl-0.04/inc /build/libtest-fitesque-perl-0.04/blib/lib /build/libtest-fitesque-perl-0.04/blib/arch /etc/perl /usr/local/lib/x86_64-linux-gnu/perl/5.32.0 /usr/local/share/perl/5.32.0 /usr/lib/x86_64-linux-gnu/perl5/5.32 /usr/share/perl5 /usr/lib/x86_64-linux-gnu/perl-base /usr/lib/x86_64-linux-gnu/perl/5.32 /usr/share/perl/5.32 /usr/local/lib/site_perl). at /build/libtest-fitesque-perl-0.04/blib/lib/Test/FITesque/Fixture.pm line 7. BEGIN failed--compilation aborted at /build/libtest-fitesque-perl-0.04/blib/lib/Test/FITesque/Fixture.pm line 7. Compilation failed in require at /usr/lib/x86_64-linux-gnu/perl-base/base.pm line 135. ...propagated at /usr/lib/x86_64-linux-gnu/perl-base/base.pm line 157. BEGIN failed--compilation aborted at t/lib/Buddha/FITesqueFixture.pm line 5. Compilation failed in require at /usr/share/perl/5.32/Module/Load.pm line 77. Can't locate Buddha/FITesqueFixture in @INC (@INC contains: t/lib t/mock /build/libtest-fitesque-perl-0.04/inc /build/libtest-fitesque-perl-0.04/blib/lib /build/libtest-fitesque-perl-0.04/blib/arch /etc/perl /usr/local/lib/x86_64-linux-gnu/perl/5.32.0 /usr/local/share/perl/5.32.0 /usr/lib/x86_64-linux-gnu/perl5/5.32 /usr/share/perl5 /usr/lib/x86_64-linux-gnu/perl-base /usr/lib/x86_64-linux-gnu/perl/5.32 /usr/share/perl/5.32 /usr/local/lib/site_perl) at /usr/share/perl/5.32/Module/Load.pm line 77. # Looks like your test exited with 2 just after 1. t/06-fitesque.t ... 1..3 ok 1 - use Test::FITesque; Dubious, test returned 2 (wstat 512, 0x200) Failed 2/3 subtests So we need Test::Exception ('libtest-exception-perl <!nocheck>') in Build-Depends-Indep, and probably Class::Data::Inheritable somewhere - ah yes, that's also in Makefile.PL, so 'libclass-data-inheritable-perl' in Depends and 'libclass-data-inheritable-perl <!nocheck>' in Build-Depends-Indep. Catching issues like this is simple when building in a chroot (sbuild or pbuilder/cowbuilder) which is more than recommended. - Now the package bugs; let's go to autopkgtests; we see a lintian warning after building already: W: libtest-fitesque-perl source: team/pkg-perl/testsuite/autopkgtest-needs-use-name and indeed, autopkgtest-pkg-perl's use.t is skipped: autopkgtest [20:58:59]: test autodep8-perl: /usr/share/pkg-perl-autopkgtest/runner runtime-deps autopkgtest [20:58:59]: test autodep8-perl: [----------------------- /usr/share/pkg-perl-autopkgtest/runtime-deps.d/use.t .. skipped: can't guess package from META.json or META.yml Files=1, Tests=0, 1 wallclock secs ( 0.03 usr 0.02 sys + 0.12 cusr 0.03 csys = 0.20 CPU) Result: NOTESTS autopkgtest [20:59:00]: test autodep8-perl: -----------------------] autodep8-perl PASS (superficial) So let's try: % mkdir -p debian/tests/pkg-perl % echo Test::FITesque > debian/tests/pkg-perl/use-name and everything works :) For the meaning of these files cf. https://perl-team.pages.debian.net/autopkgtest.html Oh, and a last note: Please don't add a debian/0.04-1 tag. When changes have to been (like in this case here), the exisiting tag can be a bit annoying (when it's overwritten and others have already pulled), that's why the tag is set by the person doing the actual upload. This looks a bit overwhelming but I'm suer you'll get into it :) The package is very untypical; but OTOH you see more exciting things than in a standard package where dh-make-perl just gets everything right from the beginning … As a whish for the future: splitting changes into more and smaller commits with more descriptive commit messages would help others to understand what you did. (No problem in this case as all changes are easy to understand) Cheers, gregor -- .''`. https://info.comodo.priv.at -- Debian Developer https://www.debian.org : :' : OpenPGP fingerprint D1E1 316E 93A7 60A8 104D 85FA BB3A 6801 8649 AA06 `. `' Member VIBE!AT & SPI Inc. -- Supporter Free Software Foundation Europe `- NP: Beatles: Fool On The Hill
Attachment:
signature.asc
Description: Digital Signature