Control: tag -1 patch

On Tue, Aug 06, 2024 at 11:10:45PM +0300, Niko Tyni wrote:
> Package: libautobox-dump-perl
> Version: 20090426.1746-5
> Severity: important
> User: debian-p...@lists.debian.org
> Usertags: perl-5.40-transition
> 
> This package warns on usage with Perl 5.40 (currently in experimental),
> making its autopkgtest checks fail.
> 
>   
> https://ci.debian.net/packages/liba/libautobox-dump-perl/unstable/amd64/50041973/
> 
>   $ perl -e 'use autobox::dump'
>   Attempt to call undefined import method with arguments ("SCALAR" ...) via 
> package "autobox::dump" (Perhaps you forgot to load the package?) at 
> /usr/share/perl5/autobox/dump.pm line 24.

I think this is because of a missing runtime dependency on
libautobox-perl. It's a build dependency so the build time test suite
doesn't warn, and it goes away when I install the other package.

The module does

  package autobox::dump;
  use base 'autobox';

which somewhat surprisingly doesn't fail when autobox is missing.
Apparently the package declaration populates the "parent stash" just
enough to make it look nonempty. Consider:

  $ perl -e 'package foo; use base "bar"'
  Base class package "bar" is empty.
    (Perhaps you need to 'use' the module which defines that package first,
  [...]

  $ perl -e 'package bar::foo; use base "bar";'
  $

However, the $class->SUPER::import() call later does generates a warning
with Perl 5.40 because the superclass is really empty.

Not sure if this should be severity:serious but at least it's easy to
fix by adding a Depends: libautobox-perl.

Hope this helps,
-- 
Niko

Reply via email to