[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: libtest-fitesque new package review



Thanks Gregor for all the assistance.

Yes, I seem to have chosen a couple of good packages to adopt :)

To be fair, it has given me a baptism of fire, but in the same vane, some valuable experience in the things that can happen and how to approach fixes of the same.

As a bit of feedback on your comments, I was able to build the package and test it using the included Makefile.PL

I have made spelling corrections, and am in the process of building a patch to pass upstream.
--
Ken Ibbotson
E: keni@computer.org

"Reality is merely an illusion, albeit a very persistent one."
    - Albert Einstein (1879-1955)


On Mon, 26 Oct 2020 at 00:01, gregor herrmann <gregoa@debian.org> wrote:
On Sat, 24 Oct 2020 12:17:31 +1030, Ken Ibbotson wrote:

> Updated copyright file:
> - copyright only yielded one year 2007
> - add missing 'inc/Module' copyright
> - add BSD-3-Clause based on content of LICENSE file
> - set the 'debian/*' as BSD-3-Clause rather than Artistic, and retained
> Artistic  licence clause for the 'inc/Module'
>
> Questions:
>
> 1. Given only one year being found, do I need to email the developer to
> obtain more information on copyright years, or leave as 2007,

If upstream says "2007", we can just take this year.

> or include
> the Berne Convention?

The "Berne Convention assumption" is for the cases where there is an
author but no explicit copyright holder, which is not the case here.

> 2. The LICENSE file contained the BSD-3-Clause licence without explicitly
> stating it, and the README indicated BSD, with an online search confirming
> the actual licence text included matched.
> Does this suffice, or do I need to advise the developer to include the
> licence name in the licence file?

I think that's fine as-is, both for upstream (they state clear license
terms), and for us (we name it "BSD-3-Clause" just to have a
convenient short name).

> Also, at the completion of 'dh-make-perl', an information message in the
> copyright file indicates: 'License: unparsable',
> Does 'dh-make-perl' look for licence by name or text, and ergo would this
> constitute a reason bug to log that the licence was not recognised?

It tries all kinds of things :)
And that usually works but fails in the rare corner case.

> 3, The original source does not contain any 'META.[json|yml] files, which
> was reported as an error during the 'dh-make-perl' execution.
> Are these files mandatory?

No, their absence is just a sign of a distribution which doesn't use
typical modern tools.

> 4. Did I miss anything?

Just some nit-picking observations:

- d/rules has a trailing \t
- d/copyright:
  * as per the above notes, '-<INSERT COPYRIGHT YEAR(S) HERE>' can be
    removed
  * the upstream email address could be de-mangled (in two spots)
  * you use "License: BSD-3-Clause" as a license for "debian/*";
    that's fine if this is your preference; typically we use upstream
    license + perl license, i.e. ""License: BSD-3-Clause or Artistic or GPL-1+"
- d/control: you can add "Rules-Requires-Root: no" to the source
  section

Less ideal is that the package doesn't build in a cowbuilder chroot:

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.30.3 /usr/local/share/perl/5.30.3 /usr/lib/x86_64-linux-gnu/perl5/5.30 /usr/share/perl5 /usr/lib/x86_64-linux-gnu/perl-base /usr/lib/x86_64-linux-gnu/perl/5.30 /usr/share/perl/5.30 /usr/local/lib/site_perl) at t/01-fixture.t line 8.

-> add "libtest-exception-perl <!nocheck>" to Build-Depends-Indep

Then it still fails with:

#   Failed test 'use Test::FITesque::Fixture;'
#   at t/01-fixture.t line 10.
#     Tried to use 'Test::FITesque::Fixture'.
#     Error:  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.30.3 /usr/local/share/perl/5.30.3 /usr/lib/x86_64-linux-gnu/perl5/5.30 /usr/share/perl5 /usr/lib/x86_64-linux-gnu/perl-base /usr/lib/x86_64-linux-gnu/perl/5.30 /usr/share/perl/5.30 /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 t/01-fixture.t line 10.
# BEGIN failed--compilation aborted at t/01-fixture.t line 10.

--> add "libclass-data-inheritable-perl <!nocheck>" to Build-Depends-Indep
and "libclass-data-inheritable-perl" to Depends

(both can be found in Makefile.PL but as that's a Module::Install
wrapper, dh-make-perl fails at parsing, and there's no
META.{yml,json} either, as we already noted :))

lintian has some remarks, e.g.:
I: libtest-fitesque-perl: spelling-error-in-description unnessecary unnecessary
-> that's in debian/control and easily fixed

I: libtest-fitesque-perl: typo-in-manual-page usr/share/man/man3/Test::FITesque.3pm.gz compatability compatibility
   and some others
   optionally create a patch to fix all the typos and send it
   upstream

W: libtest-fitesque-perl source: team/pkg-perl/testsuite/autopkgtest-needs-use-name
   pkg-perl-autopkgtest's use.t wants to know the name of the (main)
   module, and again, we have no META.{yml,json} :) so:
   % mkdir -p debian/tests/pkg-perl
   % echo Test::FITesque > debian/tests/pkg-perl/use-name


As a summary: you happened to pick a rare cornercase of an a-typical
distribution here, usually it's much quicker to create a new package :)


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: Cat Power: Could We

Reply to: