Bug#923358: libdist-inkt-perl: Stuffs full path into tarball

Niko Tyni ntyni at debian.org
Sat Mar 2 13:44:38 GMT 2019


On Sat, Mar 02, 2019 at 01:45:19PM +0100, Jonas Smedegaard wrote:
> reassign -1 perl
> retitle -1 perl: breaks libdist-inkt-perl
> thanks

I don't think this worked. Presumably you forgot to bcc
control at bdo.

But never mind that, I think it's libdist-inkt-perl that needs
to change. See below.

> Quoting Jonas Smedegaard (2019-02-26 22:41:00)
> > The command distinkt-dist is completely useless: Produces tarballs 
> > containing full path (not paths relative to build dir), and then 
> > fails.
> > 
> > Upstream bug: https://github.com/tobyink/p5-dist-inkt/issues/3
> 
> Seems to be a bug not in libdist-inkt-perl but in recent perl - or one 
> of the libraries upgraded in lockstep with perl.
> 
> Testsuite does not reveal the bug (it is quite minimal).  The following, 
> however, should prove that the bug is not in libdist-inkt-perl itself, 
> as it succeeds on stretch but fails on buster:
> 
> apt install libfile-chdir-perl libpath-finddev-perl libmoose-perl liblist-moreutils-perl libtype-tiny-perl libtypes-path-tiny-perl libpath-iterator-rule-perl libnamespace-autoclean-perl libdata-dump-perl libsoftware-license-perl libmodule-cpanfile-perl libtext-sprintfn-perl libcpan-changes-perl librdf-doap-lite-perl
> dget http://deb.debian.org/debian/pool/main/libd/libdist-inkt-perl/libdist-inkt-perl_0.024-4.dsc
> cd libdist-inkt-perl-0.024/examples/p5-acme-example-dist/
> PERL5LIB=../../lib perl ../../script/distinkt-dist

It looks like this is due to this Archive-Tar change:

  2.28  08/06/2018 (madroach, ARC, OCBNET, ppisar)
  - allow archiving with absolute pathnames - fixes 97748

Dist::Inkt::BuildTarball() puts absolute file names in the generated
archive, then renames them to relative ones.

  $tar->add_files($abs);
  $tar->rename(substr("$abs", 1), "$pfx/".$abs->relative($root));

This is relying on Archive::Tar having removed the first slash,
which is no longer a valid assumption.

I expect Dist::Inkt needs to adapt. Once that is done, we should
probably add a Breaks on the perl side for older versions. Please
file a separate bug about that.
-- 
Niko Tyni   ntyni at debian.org



More information about the pkg-perl-maintainers mailing list