Re: Perl related upgrade problems woody -> sarge
On Wed, Dec 01, 2004 at 11:32:51PM +1100, Brendan O'Dea wrote:
> On Sat, Nov 20, 2004 at 03:11:34AM +0100, Frank Lichtenheld wrote:
> >This mail should give an overview for a problem with woody->sarge upgrades
> >reported multiple times.
> >On woody->sarge upgrades, sometimes maintainer scripts fail with the
> >following error:
> >Can't locate File/Basename.pm in @INC (@INC contains: /usr/local/lib/perl/5.6.1 /usr/local/share/perl/5.6.1 /usr/lib/perl5 /usr/share/perl5 /usr/lib/perl/5.6.1 /usr/share/perl/5.6.1 /usr/local/lib/site_perl .) at /usr/sbin/install-docs line 17.
> >BEGIN failed--compilation aborted at /usr/sbin/install-docs line 17.
> Given that possibility, the solution for the future is to modify
> install-docs to use only essential packages. Providing replacement code
> for File::Basename (install-docs appears to use basename and dirname) is
> pretty trivial.
> For this upgrade, the only dependency changes which will actually
> correct the problem are adding "Depends: perl" to any packages which
> use install-docs in the postinst... probably not a reasonable solution.
Probably not ;)
> Release notes instructing users with doc-base installed to "apt-get
> install doc-base" prior to "apt-get dist-upgrade" may be a possibility.
As I said, I only was able to reproduce the failure while making the
upgrade through aptitude interactively, neither with apt-get dist-upgrade
nor aptitude dist-upgrade. Not that would be a safe assumption but is
seems to limit the effect. So mentioning it in the release notes might
be enough. Kinda sad, though.
One possibility might be a conflict of perl against doc-base (<< version
without File::Basename) to enforce the prior upgrade of doc-base but
conflicts tend to cause more problems than they solve in such cases ...
Frank Lichtenheld <email@example.com>