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

Bug#1013873: lintian: "Cannot open" warnings on symlinks to files in other packages from same source



Control: severity -1 important

Hi Andreas,

Andreas Metzler wrote:
> lintian has recently started throwing errors like this for when run on
> exim4_..._amd64.changes (source + binary upload):
> 
> ------------------
> Warning in processable ../exim4-daemon-heavy_4.96-1_amd64.deb: Cannot open /dev/shm/lintian-pool-b_2HrMSwnf/exim4/exim4-daemon-heavy_4.96-1_amd64_binary/unpacked/usr/share/doc/exim4-daemon-heavy/README.Debian.gz at /usr/share/lintian/lib/Lintian/Check/Debian/Readme.pm line 109.
> warning: cannot run debian/readme check on package binary:exim4-daemon-heavy_4.96-1_amd64
> ------------------

Interesting. Thanks for the bug report!

> The respective file is a symlink to the file in exim4-base/:
> (sid)ametzler@argenau:/tmp/EXIM4/exim-4.96$ ls -l debian/exim4-daemon-heavy/usr/share/doc/exim4-daemon-heavy/README.Debian.gz
> lrwxrwxrwx 1 ametzler ametzler 30 Jun 26 11:53 debian/exim4-daemon-heavy/usr/share/doc/exim4-daemon-heavy/README.Debian.gz -> ../exim4-base/README.Debian.gz

Since ../exim4-base/README.Debian.gz is actually existing, I wonder if
that "<:gzip" in

    109             open($fd, '<:gzip', $item->unpacked_path)

plays a role here. My current guess is that there is a "use
PerlIO::gzip;" missing in lib/Lintian/Check/Debian/Readme.pm since it
it seems required to make "<:gzip" work (wonder why it does only spew
runtime warnings because of that and doesn't bail out at compile time
already) and it is present in quite some other Lintian Perl modules:

~/lintian/lintian → git grep PerlIO::gzip
lib/Lintian/Data/Debhelper/Addons.pm:use PerlIO::gzip;
lib/Lintian/Data/Debhelper/Commands.pm:use PerlIO::gzip;
lib/Lintian/Data/Fonts.pm:use PerlIO::gzip;
lib/Lintian/Data/InitD/VirtualFacilities.pm:use PerlIO::gzip;
lib/Lintian/Processable/Installable/Overrides.pm:use PerlIO::gzip;
~/lintian/lintian →

Will check. And if I'm right with my guess, I'll likely will write a
test first for this type of bug as there are quite some more such
cases:

~/lintian/lintian → git grep -Fl '<:gzip' | xargs fgrep -L 'use PerlIO::gzip;'
lib/Lintian/Check/Debian/Readme.pm
lib/Lintian/Check/Documentation.pm
lib/Lintian/Check/Documentation/Manual.pm
lib/Lintian/Check/Documentation/Texinfo.pm
lib/Lintian/Check/Languages/Fortran/Gfortran.pm
lib/Lintian/Check/Languages/R.pm
lib/Lintian/Data/Authority/DocBaseManual.pm
lib/Lintian/Data/Authority/VimPolicy.pm
~/lintian/lintian → 

Raising severity to important because this issue has quite some impact
if my guess above is correct.

		Regards, Axel
-- 
 ,''`.  |  Axel Beckert <abe@debian.org>, https://people.debian.org/~abe/
: :' :  |  Debian Developer, ftp.ch.debian.org Admin
`. `'   |  4096R: 2517 B724 C5F6 CA99 5329  6E61 2FF9 CD59 6126 16B5
  `-    |  1024D: F067 EA27 26B9 C3FC 1486  202E C09E 1D89 9593 0EDE


Reply to: