Debian Bug report logs - #278495
perl can be in a unusable state during upgrade

version graph

Package: doc-base; Maintainer for doc-base is Robert Luberda <robert@debian.org>; Source for doc-base is src:doc-base.

Reported by: Wolfram Quester <wolfi@mittelerde.physik.uni-konstanz.de>

Date: Wed, 27 Oct 2004 10:03:02 UTC

Severity: serious

Tags: fixed, patch

Merged with 279232

Fixed in version doc-base/0.7.20

Done: Robert Luberda <robert@debian.org>

Bug is archived. No further changes may be made.

Toggle useless messages

View this report as an mbox folder, status mbox, maintainer mbox


Report forwarded to debian-bugs-dist@lists.debian.org, Akira TAGOH <tagoh@debian.org>:
Bug#278495; Package libglib1.2-dev. Full text and rfc822 format available.

Acknowledgement sent to Wolfram Quester <wolfi@mittelerde.physik.uni-konstanz.de>:
New Bug report received and forwarded. Copy sent to Akira TAGOH <tagoh@debian.org>. Full text and rfc822 format available.

Message #5 received at submit@bugs.debian.org (full text, mbox):

From: Wolfram Quester <wolfi@mittelerde.physik.uni-konstanz.de>
To: Debian Bug Tracking System <submit@bugs.debian.org>
Subject: libglib1.2-dev: Upgrade to sarge fails
Date: Wed, 27 Oct 2004 11:52:45 +0200
Package: libglib1.2-dev
Version: 1.2.10-4
Severity: grave
Justification: renders package unusable

Hi,

At the moment I'm upgrading a Szstem from woody to sarge and I get 

Preparing to replace libglib1.2-dev 1.2.10-4 (using .../libglib1.2-dev_1.2.10-9_i386.deb) ...
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/i386-linux /usr/local/lib/site_perl .) at
/usr/sbin/install-docs line 17.
BEGIN failed--compilation aborted at /usr/sbin/install-docs line 17.
dpkg: warning - old pre-removal script returned error exit status 2
dpkg - trying script from the new package instead ...
dpkg: error processing
/var/cache/apt/archives/libglib1.2-dev_1.2.10-9_i386.deb (--unpack):
 there is no script in the new version of the package - giving up

With best regards,

Wolfi

-- System Information
Debian Release: 3.0
Architecture: i386
Kernel: Linux merry 2.2.26-ow1-clients-gps #1 Mon Apr 26 23:32:58 CEST 2004 i686
Locale: LANG=C, LC_CTYPE=en_US.UTF-8

Versions of packages libglib1.2-dev depends on:
pn  libglib1.2 (= 1.2.10-4)                  Not found.
pn  pkg-config                               Not found.




Information forwarded to debian-bugs-dist@lists.debian.org, Akira TAGOH <tagoh@debian.org>:
Bug#278495; Package libglib1.2-dev. Full text and rfc822 format available.

Acknowledgement sent to Sebastien Bacher <seb128@debian.org>:
Extra info received and forwarded to list. Copy sent to Akira TAGOH <tagoh@debian.org>. Full text and rfc822 format available.

Message #10 received at 278495@bugs.debian.org (full text, mbox):

From: Sebastien Bacher <seb128@debian.org>
To: 278495@bugs.debian.org, 278495-submitter@bugs.debian.org
Subject: Re: libglib1.2-dev: Upgrade to sarge fails
Date: Wed, 27 Oct 2004 21:03:01 +0200
> Preparing to replace libglib1.2-dev 1.2.10-4
(using .../libglib1.2-dev_1.2.10-9_i386.deb) ...
...
> pn  libglib1.2 (= 1.2.10-4)                  Not found.

Hi,

How do you get libglib1.2-dev installed without libglib1.2 ?


Cheers,

Sebastien Bacher




Message sent on to Wolfram Quester <wolfi@mittelerde.physik.uni-konstanz.de>:
Bug#278495. Full text and rfc822 format available.

Information forwarded to debian-bugs-dist@lists.debian.org, Akira TAGOH <tagoh@debian.org>:
Bug#278495; Package libglib1.2-dev. Full text and rfc822 format available.

Acknowledgement sent to Frank Lichtenheld <djpig@debian.org>:
Extra info received and forwarded to list. Copy sent to Akira TAGOH <tagoh@debian.org>. Full text and rfc822 format available.

Message #18 received at 278495@bugs.debian.org (full text, mbox):

From: Frank Lichtenheld <djpig@debian.org>
To: Wolfram Quester <wolfi@mittelerde.physik.uni-konstanz.de>, 278495@bugs.debian.org
Subject: Re: Bug#278495: libglib1.2-dev: Upgrade to sarge fails
Date: Wed, 27 Oct 2004 23:08:43 +0200
Some comments on the bug:
As the bug report indicates it is really install-docs that is failing so
it is unrelated to libglib (and I've already seen the same problem in
other packages, IIRC xfree86-common). I believe it is caused by perl
5.8.x already unpacked but not yet configured, so that @INC is pointing
at the wrong directories.

Gruesse,
-- 
Frank Lichtenheld <djpig@debian.org>
www: http://www.djpig.de/



Information forwarded to debian-bugs-dist@lists.debian.org, Akira TAGOH <tagoh@debian.org>:
Bug#278495; Package libglib1.2-dev. Full text and rfc822 format available.

Acknowledgement sent to Wolfram Quester <wolfi@mittelerde.physik.uni-konstanz.de>:
Extra info received and forwarded to list. Copy sent to Akira TAGOH <tagoh@debian.org>. Full text and rfc822 format available.

Message #23 received at 278495@bugs.debian.org (full text, mbox):

From: Wolfram Quester <wolfi@mittelerde.physik.uni-konstanz.de>
To: Frank Lichtenheld <djpig@debian.org>
Cc: 278495@bugs.debian.org
Subject: Re: Bug#278495: libglib1.2-dev: Upgrade to sarge fails
Date: Wed, 27 Oct 2004 14:37:50 +0200
[Message part 1 (text/plain, inline)]
On Wed, Oct 27, 2004 at 11:08:43PM +0200, Frank Lichtenheld wrote:
> 
> Some comments on the bug:
> As the bug report indicates it is really install-docs that is failing so
> it is unrelated to libglib (and I've already seen the same problem in
> other packages, IIRC xfree86-common). I believe it is caused by perl
> 5.8.x already unpacked but not yet configured, so that @INC is pointing
> at the wrong directories.

Yes, later on I've seen this bug on more packages. The file in question
(File/Basename.pm) is part of per-modules. This stuff seems to be a
matter of the correct order of installation.

With best regards,

Wolfi
[signature.asc (application/pgp-signature, inline)]

Bug reassigned from package `libglib1.2-dev' to `doc-base'. Request was from Frank Lichtenheld <djpig@debian.org> to control@bugs.debian.org. Full text and rfc822 format available.

Severity set to `serious'. Request was from Frank Lichtenheld <djpig@debian.org> to control@bugs.debian.org. Full text and rfc822 format available.

Merged 278495 279232. Request was from Frank Lichtenheld <djpig@debian.org> to control@bugs.debian.org. Full text and rfc822 format available.

Information forwarded to debian-bugs-dist@lists.debian.org, Adam Di Carlo <aph@debian.org>:
Bug#278495; Package doc-base. Full text and rfc822 format available.

Acknowledgement sent to Frank Lichtenheld <djpig@debian.org>:
Extra info received and forwarded to list. Copy sent to Adam Di Carlo <aph@debian.org>. Full text and rfc822 format available.

Message #34 received at 278495@bugs.debian.org (full text, mbox):

From: Frank Lichtenheld <djpig@debian.org>
To: debian-release@lists.debian.org, debian-perl@lists.debian.org, 278495@bugs.debian.org
Cc: 278495-submitter@bugs.debian.org, 279232-submitter@bugs.debian.org
Subject: Perl related upgrade problems woody -> sarge
Date: Sat, 20 Nov 2004 03:11:34 +0100
[directed to debian-release, debian-perl, and the filed bugs and their
submitters]

Hi.

This mail should give an overview for a problem with woody->sarge upgrades
reported multiple times.

All errors are mine and im seeking for comments ;)

Problem:
--------

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.

Filed as bugs #278495 and #279232.

Reproduction:
-------------

I had a hard time reproducing it. I'm not sure yet, but a good trigger seems
to use aptitude (I usually take the one from sarge by upgrading there,
didn't tested it with the one from woody yet) and do the upgrade in interactive
mode, not by calling aptitude dist-upgrade. I wasn't able yet to reproduce it
either with apt-get dist-upgrade or aptitude dist-upgrade, only in interactive
mode. Seems that the install order produced by the dist-upgrade algorithms
usually avoids the problem. @submitters: do you remember how you did the
upgrade?

Analysis:
---------

perl-modules is unusable when a new version with a different upstream version
is unpacked before perl with the corresponding upstream version. This is because
the modules rest in directories which contain the upstream version but the
search path for modules depends on the version of perl installed, not
perl-modules.

Unpacking the new perl-modules before the new perl is allowed since it
"only" depends on perl (>= <upstream-version>) and this only needs to be
satisfied at configure time, not at unpacking.

Solutions:
----------

- perl-modules pre-depend on perl. It isn't really sure if this doesn't
  introduce other problems...

- change directory names in perl-modules. This would be a big change
  to the upstream system and may introduce problems for people that
  want to have more than one perl version installed.

- Let perl-modules define @INC. I doubt that this is possible and would
  only work for non-binary perl modules.

- Work around the problem by changing install-docs so that it works without
  File::Basename. This is easy, but it doesn't solve the real problem and
  other programs called from maintainer scripts could be affected, too
  (although there is no known example currently). It only solves the problem
  if doc-base is updated before perl which would probaly require a pre-depends
  again :(

- Tell people to update perl first. I don't know if this works, this would
  require further testing. And why we have dist-upgrade in the first place
  when people can't use it :(

- Tell people to ignore the error and just let them run apt-get -f install
  after it occured which IME always worked well. If it really only happens
  when using aptitude interactively this may even be acceptable, but should
  nevertheless our last ressort if all other solutions turn out to be
  uglier :/

-- 
Frank Lichtenheld <djpig@debian.org>
www: http://www.djpig.de/



Message sent on to Wolfram Quester <wolfi@mittelerde.physik.uni-konstanz.de>:
Bug#278495. Full text and rfc822 format available.

Information forwarded to debian-bugs-dist@lists.debian.org, Adam Di Carlo <aph@debian.org>:
Bug#278495; Package doc-base. Full text and rfc822 format available.

Acknowledgement sent to Brendan O'Dea <bod@debian.org>:
Extra info received and forwarded to list. Copy sent to Adam Di Carlo <aph@debian.org>. Full text and rfc822 format available.

Message #42 received at 278495@bugs.debian.org (full text, mbox):

From: Brendan O'Dea <bod@debian.org>
To: debian-perl@lists.debian.org
Cc: debian-release@lists.debian.org, 278495@bugs.debian.org, 278495-submitter@bugs.debian.org, 279232-submitter@bugs.debian.org
Subject: Re: Perl related upgrade problems woody -> sarge
Date: Wed, 1 Dec 2004 23:32:51 +1100
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.

>perl-modules is unusable when a new version with a different upstream version
>is unpacked before perl with the corresponding upstream version. This is because
>the modules rest in directories which contain the upstream version but the
>search path for modules depends on the version of perl installed, not
>perl-modules.
>
>Unpacking the new perl-modules before the new perl is allowed since it
>"only" depends on perl (>= <upstream-version>) and this only needs to be
>satisfied at configure time, not at unpacking.

>- perl-modules pre-depend on perl. It isn't really sure if this doesn't
>  introduce other problems...

This doesn't really help you much, since the perl binary (which defines
@INC) is in perl-base.

Even having perl-modules and perl pre-depend on perl-base doesn't
necessarily fix the problem since while that would ensure that perl-base
was upgraded before either of those modules, there's no guarantee that
other packages wouldn't be pre-configured/configured between perl-base
and perl, perl-modules.

>- change directory names in perl-modules. This would be a big change
>  to the upstream system and may introduce problems for people that
>  want to have more than one perl version installed.

Moreover it takes the issue of a failing module load from being "not
found" (which may be trapped with eval{} such as debconf does) to a SEGV
or worse for binary modules.

>- Let perl-modules define @INC. I doubt that this is possible and would
>  only work for non-binary perl modules.

@INC is hard-coded into /usr/bin/perl.  

>- Work around the problem by changing install-docs so that it works without
>  File::Basename. This is easy, but it doesn't solve the real problem and
>  other programs called from maintainer scripts could be affected, too
>  (although there is no known example currently). It only solves the problem
>  if doc-base is updated before perl which would probaly require a pre-depends
>  again :(

The fundamental problem here is that packages which use install-docs in
maintainer scripts don't depend on doc-base (since execution is
typically conditional), and hence don't necessarily depend on perl, nor
indirectly perl-modules or perl-base.  For this reason it is possible
that install-docs will be called from a maintainer script while
perl-base+perl+perl-modules are in an inconsistent state.

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.

Release notes instructing users with doc-base installed to "apt-get
install doc-base" prior to "apt-get dist-upgrade" may be a possibility.

--bod



Message sent on to Wolfram Quester <wolfi@mittelerde.physik.uni-konstanz.de>:
Bug#278495. Full text and rfc822 format available.

Information forwarded to debian-bugs-dist@lists.debian.org, Adam Di Carlo <aph@debian.org>:
Bug#278495; Package doc-base. Full text and rfc822 format available.

Acknowledgement sent to Frank Lichtenheld <djpig@debian.org>:
Extra info received and forwarded to list. Copy sent to Adam Di Carlo <aph@debian.org>. Full text and rfc822 format available.

Message #50 received at 278495@bugs.debian.org (full text, mbox):

From: Frank Lichtenheld <djpig@debian.org>
To: debian-perl@lists.debian.org, debian-release@lists.debian.org, 278495@bugs.debian.org, 278495-submitter@bugs.debian.org, 279232-submitter@bugs.debian.org
Subject: Re: Perl related upgrade problems woody -> sarge
Date: Wed, 1 Dec 2004 14:12:14 +0100
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.

Indeed. 

> 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 ...

Gruesse,
-- 
Frank Lichtenheld <djpig@debian.org>
www: http://www.djpig.de/



Message sent on to Wolfram Quester <wolfi@mittelerde.physik.uni-konstanz.de>:
Bug#278495. Full text and rfc822 format available.

Information forwarded to debian-bugs-dist@lists.debian.org, Adam Di Carlo <aph@debian.org>:
Bug#278495; Package doc-base. Full text and rfc822 format available.

Acknowledgement sent to Henning Glawe <glaweh@debian.org>:
Extra info received and forwarded to list. Copy sent to Adam Di Carlo <aph@debian.org>. Full text and rfc822 format available.

Message #58 received at 278495@bugs.debian.org (full text, mbox):

From: Henning Glawe <glaweh@debian.org>
To: debian-release@lists.debian.org, debian-perl@lists.debian.org, 278495@bugs.debian.org, 278495-submitter@bugs.debian.org, 279232-submitter@bugs.debian.org
Subject: Re: Bug#279232: Perl related upgrade problems woody -> sarge
Date: Wed, 1 Dec 2004 14:44:49 +0100
On Sat, Nov 20, 2004 at 03:11:34AM +0100, Frank Lichtenheld wrote:
> I had a hard time reproducing it. I'm not sure yet, but a good trigger seems
> to use aptitude (I usually take the one from sarge by upgrading there,
> didn't tested it with the one from woody yet) and do the upgrade in interactive
> mode, not by calling aptitude dist-upgrade. I wasn't able yet to reproduce it
> either with apt-get dist-upgrade or aptitude dist-upgrade, only in interactive
> mode. Seems that the install order produced by the dist-upgrade algorithms
> usually avoids the problem. @submitters: do you remember how you did the
> upgrade?

I can reproduce it at any time on my machines using "apt-get dist-upgrade",
clients were installed via FAI, so I can setup a test-system and extract
log-data.

> - Tell people to update perl first. I don't know if this works, this would
>   require further testing. And why we have dist-upgrade in the first place
>   when people can't use it :(

not really an option for people like me who are admins for a lot of machines
and who depend on non-interactive updates...

> - Tell people to ignore the error and just let them run apt-get -f install
>   after it occured which IME always worked well. If it really only happens
>   when using aptitude interactively this may even be acceptable, but should
>   nevertheless our last ressort if all other solutions turn out to be
>   uglier :/

been there, done that: uninstalls nearly half of the system... (2G of space
will be freed)

-- 
c u
henning



Message sent on to Wolfram Quester <wolfi@mittelerde.physik.uni-konstanz.de>:
Bug#278495. Full text and rfc822 format available.

Information forwarded to debian-bugs-dist@lists.debian.org, Adam Di Carlo <aph@debian.org>:
Bug#278495; Package doc-base. Full text and rfc822 format available.

Acknowledgement sent to Thomas Hood <jdthood@aglu.demon.nl>:
Extra info received and forwarded to list. Copy sent to Adam Di Carlo <aph@debian.org>. Full text and rfc822 format available.

Message #66 received at 278495@bugs.debian.org (full text, mbox):

From: Thomas Hood <jdthood@aglu.demon.nl>
To: 278495@bugs.debian.org
Subject: Update, please
Date: Sat, 22 Jan 2005 11:20:15 +0100
Hi.  What is happening with this bug?  It's still rated RC and there
hasn't been any visible (in the log) activity for a couple of months
now.
-- 
Thomas Hood <jdthood@aglu.demon.nl>




Information forwarded to debian-bugs-dist@lists.debian.org, Adam Di Carlo <aph@debian.org>:
Bug#278495; Package doc-base. Full text and rfc822 format available.

Acknowledgement sent to Frank Lichtenheld <djpig@debian.org>:
Extra info received and forwarded to list. Copy sent to Adam Di Carlo <aph@debian.org>. Full text and rfc822 format available.

Message #71 received at 278495@bugs.debian.org (full text, mbox):

From: Frank Lichtenheld <djpig@debian.org>
To: Thomas Hood <jdthood@aglu.demon.nl>, 278495@bugs.debian.org
Subject: Re: Bug#278495: Update, please
Date: Sat, 22 Jan 2005 15:06:25 +0100
On Sat, Jan 22, 2005 at 11:20:15AM +0100, Thomas Hood wrote:
> Hi.  What is happening with this bug?  It's still rated RC and there
> hasn't been any visible (in the log) activity for a couple of months
> now.

In 279232 (merged bug) there is a proposal for changing the perl
dependencies to solve this bug. Someone has to really try this out
and decide wether it is indeed the right solution. Obviously
nobody had the time yet to do that. Volunteer welcome.

Gruesse,
-- 
Frank Lichtenheld <djpig@debian.org>
www: http://www.djpig.de/



Information forwarded to debian-bugs-dist@lists.debian.org, Adam Di Carlo <aph@debian.org>:
Bug#278495; Package doc-base. Full text and rfc822 format available.

Acknowledgement sent to Christian Hammers <ch@debian.org>:
Extra info received and forwarded to list. Copy sent to Adam Di Carlo <aph@debian.org>. Full text and rfc822 format available.

Message #76 received at 278495@bugs.debian.org (full text, mbox):

From: Christian Hammers <ch@debian.org>
To: 278495@bugs.debian.org
Subject: Re: libglib1.2-dev: Upgrade to sarge fails
Date: Mon, 25 Apr 2005 01:28:38 +0200
Hello

This bug has the severity "serious" which is "release critical" and no
comment since month which is definetly too long :)

In the bug logs I see some proposals regarding the perl dependencies
and Frank's last mail which suggests that the problem is probably fixed
but not yet confirmed as such.

I'm not sure how to do that but I just created a woody chroot, installed
libglib1.2-dev and then dist-upgraded to sarge. Worked fine at least. :)
If I have to confirm a more special scenario, just tell, I can quickly
rsync the chroot back to Woody.

BTW: Maybe this bug should be retitled, too, as it the bug seems to be
     some race-condition between the installation of perl and doc-base?

bye,

-christian-




Information forwarded to debian-bugs-dist@lists.debian.org:
Bug#278495; Package doc-base. Full text and rfc822 format available.

Acknowledgement sent to Adam Di Carlo <aph@debian.org>:
Extra info received and forwarded to list. Full text and rfc822 format available.

Message #81 received at 278495@bugs.debian.org (full text, mbox):

From: Adam Di Carlo <aph@debian.org>
To: Christian Hammers <ch@debian.org>
Cc: 278495@bugs.debian.org
Subject: Re: Bug#278495: libglib1.2-dev: Upgrade to sarge fails
Date: Mon, 25 Apr 2005 11:11:19 -0400
Christian Hammers <ch@debian.org> writes:

> Hello
>
> This bug has the severity "serious" which is "release critical" and no
> comment since month which is definetly too long :)
>
> In the bug logs I see some proposals regarding the perl dependencies
> and Frank's last mail which suggests that the problem is probably fixed
> but not yet confirmed as such.
>
> I'm not sure how to do that but I just created a woody chroot, installed
> libglib1.2-dev and then dist-upgraded to sarge. Worked fine at least. :)
> If I have to confirm a more special scenario, just tell, I can quickly
> rsync the chroot back to Woody.
>
> BTW: Maybe this bug should be retitled, too, as it the bug seems to be
>      some race-condition between the installation of perl and doc-base?

Hmm. So if you were unable to reproduce it, maybe it's the right thing 
to tag it as unreproducible and lower the severity?  If not, I would 
take other suggestions on how to fix it.

-- 
.....Adam Di Carlo....adam@debian.org.....<URL:http://www.debian.org/>




Information forwarded to debian-bugs-dist@lists.debian.org, Adam Di Carlo <aph@debian.org>:
Bug#278495; Package doc-base. Full text and rfc822 format available.

Acknowledgement sent to Steve Langasek <vorlon@debian.org>:
Extra info received and forwarded to list. Copy sent to Adam Di Carlo <aph@debian.org>. Full text and rfc822 format available.

Message #86 received at 278495@bugs.debian.org (full text, mbox):

From: Steve Langasek <vorlon@debian.org>
To: Adam Di Carlo <aph@debian.org>, 278495@bugs.debian.org
Cc: Christian Hammers <ch@debian.org>
Subject: Re: Bug#278495: libglib1.2-dev: Upgrade to sarge fails
Date: Mon, 25 Apr 2005 16:14:14 -0700
[Message part 1 (text/plain, inline)]
On Mon, Apr 25, 2005 at 11:11:19AM -0400, Adam Di Carlo wrote:
> Christian Hammers <ch@debian.org> writes:

> > This bug has the severity "serious" which is "release critical" and no
> > comment since month which is definetly too long :)

> > In the bug logs I see some proposals regarding the perl dependencies
> > and Frank's last mail which suggests that the problem is probably fixed
> > but not yet confirmed as such.

> > I'm not sure how to do that but I just created a woody chroot, installed
> > libglib1.2-dev and then dist-upgraded to sarge. Worked fine at least. :)
> > If I have to confirm a more special scenario, just tell, I can quickly
> > rsync the chroot back to Woody.

> > BTW: Maybe this bug should be retitled, too, as it the bug seems to be
> >      some race-condition between the installation of perl and doc-base?

Yes, the bug title is clearly wrong; this bug has nothing to do with
libglib1.2-dev, except that libglib1.2-dev is one of the packages that *can*
fail when calling install-docs.

> Hmm. So if you were unable to reproduce it, maybe it's the right thing 
> to tag it as unreproducible and lower the severity?  If not, I would 
> take other suggestions on how to fix it.

It's certainly not unreproducible.  One of the release assistants also
followed up to this bug noting that he had seen the problem; and the
underlying cause has been analyzed and is definitely still present, we're
just missing a fix for the problem.

-- 
Steve Langasek
postmodern programmer
[signature.asc (application/pgp-signature, inline)]

Information forwarded to debian-bugs-dist@lists.debian.org, Adam Di Carlo <aph@debian.org>:
Bug#278495; Package doc-base. Full text and rfc822 format available.

Acknowledgement sent to Frank Lichtenheld <djpig@debian.org>:
Extra info received and forwarded to list. Copy sent to Adam Di Carlo <aph@debian.org>. Full text and rfc822 format available.

Message #91 received at 278495@bugs.debian.org (full text, mbox):

From: Frank Lichtenheld <djpig@debian.org>
To: Christian Hammers <ch@debian.org>, 278495@bugs.debian.org
Subject: Re: Bug#278495: libglib1.2-dev: Upgrade to sarge fails
Date: Mon, 25 Apr 2005 12:22:55 +0200
On Mon, Apr 25, 2005 at 01:28:38AM +0200, Christian Hammers wrote:
> This bug has the severity "serious" which is "release critical" and no
> comment since month which is definetly too long :)

Nobody knows what to say to it :/

> In the bug logs I see some proposals regarding the perl dependencies
> and Frank's last mail which suggests that the problem is probably fixed
> but not yet confirmed as such.

No, it is not fixed AFAIK and there were objections to the proposal
of changing the dependencies (e.g. by vorlon, IIRC)...

> I'm not sure how to do that but I just created a woody chroot, installed
> libglib1.2-dev and then dist-upgraded to sarge. Worked fine at least. :)
> If I have to confirm a more special scenario, just tell, I can quickly
> rsync the chroot back to Woody.

It's not that simple. The following list of installed packages is known
to give you the effect:
http://www.lichtenheld.de/debian/perlupdate.installed

> BTW: Maybe this bug should be retitled, too, as it the bug seems to be
>      some race-condition between the installation of perl and doc-base?

Yeah, feel free to do that. And to reassign it to perl as doc-base
doesn't really have anything to do with the problem, it just points it
out...

Gruesse,
-- 
Frank Lichtenheld <djpig@debian.org>
www: http://www.djpig.de/



Bug reassigned from package `doc-base' to `perl'. Request was from Frank Lichtenheld <djpig@debian.org> to control@bugs.debian.org. Full text and rfc822 format available.

Changed Bug title. Request was from Frank Lichtenheld <djpig@debian.org> to control@bugs.debian.org. Full text and rfc822 format available.

Information forwarded to debian-bugs-dist@lists.debian.org, Brendan O'Dea <bod@debian.org>:
Bug#278495; Package perl. Full text and rfc822 format available.

Acknowledgement sent to Colin Watson <cjwatson@debian.org>:
Extra info received and forwarded to list. Copy sent to Brendan O'Dea <bod@debian.org>. Full text and rfc822 format available.

Message #100 received at 278495@bugs.debian.org (full text, mbox):

From: Colin Watson <cjwatson@debian.org>
To: debian-perl@lists.debian.org, 278495@bugs.debian.org, 279232@bugs.debian.org, doc-base@packages.debian.org, Frank Lichtenheld <djpig@debian.org>
Cc: control@bugs.debian.org
Subject: Re: What about perl-bug #279232?
Date: Sat, 7 May 2005 15:12:54 +0100
# let's have this on both
reassign 279232 perl,doc-base
thanks

On Wed, May 04, 2005 at 09:25:06PM +1000, Brendan O'Dea wrote:
> On Fri, Apr 08, 2005 at 08:36:05AM +0200, Henning Glawe wrote:
> >it could be "fixed" by introducing a versioned pre-dependency of 
> >perl-modules on perl-base while letting perl-base conflict with too old
> >perl-modules, which forces apt to update both packages together; this
> >combination may be highly unstable (conflicts+pre-depends is a loop-like
> >construct), but results in the right behaviour.
> 
> Given an alternate option I'd really rather not do this.  It seems
> fragile at best, disasterous at worst.

I would be terrified of accepting a change like this into sarge. It
seems to me that it would have very complex and probably undesirable
effects on upgrades, causing large swathes of packages to be
deconfigured.

> Given the recent freeze announcement, I'd suggest that regardless of
> what other fixes are made, a good first step would be to get a fixed
> doc-base (i.e. one that works with the current stable perl-base only)
> package into stable-proposed-updates *now*.
> 
> If nothing else, this reduces the size of the problem if there's a point
> release prior to sarge.

I agree. Also, having a doc-base in sarge that's fixed in the way you
describe means that we shouldn't have this particular incarnation of the
problem again, and it would mean that at least we could tell people in
the release notes to upgrade doc-base first. I think that would be
acceptable as far as sarge is concerned.

On Fri, 29 Apr 2005 at 11:11:38PM +0200, Frank Lichtenheld wrote:
> On Fri, Apr 29, 2005 at 02:03:23PM -0500, Bill Allombert wrote:
> > install-docs should be shipped not executable in  doc-base .deb and
> > doc-base postinst should a+x it. (and prerm should a-x it).
> 
> This wouldn't help. doc-base doesn't need to be touched at all for the
> bug to appear. Perl gets itself in a non-working state...

You've said this a couple of times, but I don't think that's true at
all. Everything here seems to be working exactly the way it's been told
to work, and certainly perl appears to be doing nothing wrong.

/usr/bin/perl is working just fine (it's essential, and works even when
unconfigured the way it's supposed to). All modules in perl-base work
fine too. However, File::Basename is in perl-modules, which is not
essential, and therefore in order to ensure that it is usable you *must*
declare a dependency on it (or just on perl, as would be more usual).
This is all perfectly normal and in accordance with policy.

The problem is that the packages that call install-docs do so
opportunistically (only if it's available), and so they do not declare a
dependency on perl or doc-base. Thus, there is *no way* for them to make
sure that install-docs is actually usable; it may be unpacked but not
configured. Once the doc-base package enters the configured state, dpkg
will have made sure that perl is configured too (as per the definition
of Depends) and so install-docs will work fine. Bill's suggestion would
therefore fix this bug, although I haven't quite decided whether it's
more complicated than just making doc-base work with only essential
packages. I could go either way.

The following patch to doc-base avoids the use of File::Basename, so it
should work with only perl-base. I've tested the substituted functions
independently, but I have not yet tested the resulting package. Caveat
emptor. Bill's suggestion should definitely be tried out too, since it
would probably involve less code.

diff -Nru /tmp/At5JVh70EG/doc-base-0.7.18/debian/changelog /tmp/KqzthCt2IB/doc-base-0.7.18.1/debian/changelog
--- /tmp/At5JVh70EG/doc-base-0.7.18/debian/changelog	2003-03-30 18:14:12.000000000 +0100
+++ /tmp/KqzthCt2IB/doc-base-0.7.18.1/debian/changelog	2005-05-07 14:49:49.000000000 +0100
@@ -1,3 +1,11 @@
+doc-base (0.7.18.1) UNRELEASED; urgency=low
+
+  * Non-maintainer upload.
+  * Avoid File::Basename, in order to work even when perl is unconfigured
+    (closes: #278495).
+
+ -- Colin Watson <cjwatson@debian.org>  Sat,  7 May 2005 14:49:47 +0100
+
 doc-base (0.7.18) unstable; urgency=low
 
   * postinst: don't die if /usr/lib/menu doesn't exist; closes: #186707
diff -Nru /tmp/At5JVh70EG/doc-base-0.7.18/install-docs /tmp/KqzthCt2IB/doc-base-0.7.18.1/install-docs
--- /tmp/At5JVh70EG/doc-base-0.7.18/install-docs	2003-03-15 22:08:38.000000000 +0000
+++ /tmp/KqzthCt2IB/doc-base-0.7.18.1/install-docs	2005-05-07 14:49:45.000000000 +0100
@@ -16,7 +16,28 @@
 
 # ---end-of-configuration-part---
 
-use File::Basename;
+# This would normally be just 'use File::Basename;'. However, install-docs
+# often gets called opportunistically by packages if it's present, and
+# there's no way for those packages to make sure that perl is configured
+# when doing so, so it's possible that standard modules will not be usable.
+
+sub basename {
+  (my $basename = $_[0]) =~ s#.*/##s;
+  return $basename;
+}
+
+sub dirname {
+  my ($dirname, $basename) = ($_[0] =~ m#^(.*/)?(.*)#s);
+  $dirname = './' if not defined $dirname or $dirname eq '';
+  $dirname =~ s#(.)/*\z#$1#s;
+  unless (length $basename) {
+    ($dirname) = ($dirname =~ m#^(.*/)?#s);
+    $dirname = './' if not defined $dirname or $dirname eq '';
+    $dirname =~ s#(.)/*\z#$1#s;
+  }
+  return $dirname;
+}
+
 # set umask explicitly
 umask 022;
 

Long-term, it would be nice if there were a way for a package to have a
simple way to test whether another package is configured, to supersede
all these 'test -x' calls; perhaps a trivial wrapper around dpkg-query
provided by dpkg in order that everyone does it the same way.

Cheers,

-- 
Colin Watson                                       [cjwatson@debian.org]



Bug reassigned from package `perl' to `perl,doc-base'. Request was from Colin Watson <cjwatson@debian.org> to control@bugs.debian.org. Full text and rfc822 format available.

Information forwarded to debian-bugs-dist@lists.debian.org, Brendan O'Dea <bod@debian.org>, Adam Di Carlo <aph@debian.org>:
Bug#278495; Package perl,doc-base. Full text and rfc822 format available.

Acknowledgement sent to Steve Langasek <vorlon@debian.org>:
Extra info received and forwarded to list. Copy sent to Brendan O'Dea <bod@debian.org>, Adam Di Carlo <aph@debian.org>. Full text and rfc822 format available.

Message #107 received at 278495@bugs.debian.org (full text, mbox):

From: Steve Langasek <vorlon@debian.org>
To: debian-perl@lists.debian.org, 278495@bugs.debian.org, 279232@bugs.debian.org, doc-base@packages.debian.org, Frank Lichtenheld <djpig@debian.org>
Subject: Re: Bug#279232: What about perl-bug #279232?
Date: Sat, 7 May 2005 19:20:02 -0700
[Message part 1 (text/plain, inline)]
On Sat, May 07, 2005 at 03:12:54PM +0100, Colin Watson wrote:

> > Given the recent freeze announcement, I'd suggest that regardless of
> > what other fixes are made, a good first step would be to get a fixed
> > doc-base (i.e. one that works with the current stable perl-base only)
> > package into stable-proposed-updates *now*.

> > If nothing else, this reduces the size of the problem if there's a point
> > release prior to sarge.

> I agree. Also, having a doc-base in sarge that's fixed in the way you
> describe means that we shouldn't have this particular incarnation of the
> problem again, and it would mean that at least we could tell people in
> the release notes to upgrade doc-base first. I think that would be
> acceptable as far as sarge is concerned.

I agree that requiring upgrade of doc-base first (along with the handful of
other packages we currently recommend upgrading first) is acceptable.

> > This wouldn't help. doc-base doesn't need to be touched at all for the
> > bug to appear. Perl gets itself in a non-working state...

> You've said this a couple of times, but I don't think that's true at
> all. Everything here seems to be working exactly the way it's been told
> to work, and certainly perl appears to be doing nothing wrong.

Well, <http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=279232&msg=44>
provided a pointer back to Bill's upgrade test at
<http://lists.debian.org/debian-devel/2005/04/msg01110.html>, suggesting
that this problem also hits defoma.

FWIW, gs-common in both sarge and woody depends on defoma, and defoma
depends on perl; and the problematic call to defoma-app happens in the prerm
script, which means that perl *should* still be in a configured state at
this point.

For gsfonts, the failure happens in the postrm script of the woody package.
In the sarge version, the font unregistering is (correctly) done in the
prerm, so this should not be an issue -- if we can figure out why File::Copy
isn't being found in the prerm.

> The problem is that the packages that call install-docs do so
> opportunistically (only if it's available), and so they do not declare a
> dependency on perl or doc-base. Thus, there is *no way* for them to make
> sure that install-docs is actually usable; it may be unpacked but not
> configured. Once the doc-base package enters the configured state, dpkg
> will have made sure that perl is configured too (as per the definition
> of Depends) and so install-docs will work fine. Bill's suggestion would
> therefore fix this bug, although I haven't quite decided whether it's
> more complicated than just making doc-base work with only essential
> packages. I could go either way.

IMHO, Bill's fix is more complicated.  Most packages (i.e., those using
debhelper) do check for executability of install-docs via "which", but at
least some of them use command -v, which means either finding and fixing
those packages or creating a wrapper script; and using such a wrapper script
would then make it impossible for packages or other scripts to directly
handle errors from install-docs if this was their intent.

Since either fix would require woody users to upgrade doc-base before
dist-upgrading to sarge, I would prefer the more robust solution of making
install-docs work with only essential packages installed.

> The following patch to doc-base avoids the use of File::Basename, so it
> should work with only perl-base. I've tested the substituted functions
> independently, but I have not yet tested the resulting package. Caveat
> emptor. Bill's suggestion should definitely be tried out too, since it
> would probably involve less code.

All things considered, I think the amount of code involved is about the
same. :)

> Long-term, it would be nice if there were a way for a package to have a
> simple way to test whether another package is configured, to supersede
> all these 'test -x' calls; perhaps a trivial wrapper around dpkg-query
> provided by dpkg in order that everyone does it the same way.

Hmm, yes, agreed...

-- 
Steve Langasek
postmodern programmer
[signature.asc (application/pgp-signature, inline)]

Information forwarded to debian-bugs-dist@lists.debian.org, Brendan O'Dea <bod@debian.org>, Adam Di Carlo <aph@debian.org>:
Bug#278495; Package perl,doc-base. Full text and rfc822 format available.

Acknowledgement sent to Steve Langasek <vorlon@debian.org>:
Extra info received and forwarded to list. Copy sent to Brendan O'Dea <bod@debian.org>, Adam Di Carlo <aph@debian.org>. Full text and rfc822 format available.

Message #112 received at 278495@bugs.debian.org (full text, mbox):

From: Steve Langasek <vorlon@debian.org>
To: 278495@bugs.debian.org
Cc: debian-release@lists.debian.org
Subject: Re: perl can be in an unusable state during upgrade
Date: Wed, 11 May 2005 18:50:45 -0700
[Message part 1 (text/plain, inline)]
Ok, after further analysis on IRC, it seems that the error in Bill's upgrade
happens only because the packages are being removed, and apt removed some
packages in an order that was not consistent with the declared dependencies.
Since there's no reason to think apt is playing fast and loose with
dependencies on *upgrade*, and even if it is that's not a perl bug, I think
we can ignore that case for now.

I think we should go ahead and fix doc-base to only depend on Essential, and
consider this issue closed.  Adam, do you have any objections to Colin's
patch?  If not, do you want to upload it, or should I go ahead with an NMU?

I'd like to get this resolved in the next day or two, so that we can send
out the call for serious upgrade testing.

Thanks,
-- 
Steve Langasek
postmodern programmer
[signature.asc (application/pgp-signature, inline)]

Information forwarded to debian-bugs-dist@lists.debian.org, Brendan O'Dea <bod@debian.org>, Adam Di Carlo <aph@debian.org>:
Bug#278495; Package perl,doc-base. Full text and rfc822 format available.

Acknowledgement sent to Steve Langasek <vorlon@debian.org>:
Extra info received and forwarded to list. Copy sent to Brendan O'Dea <bod@debian.org>, Adam Di Carlo <aph@debian.org>. Full text and rfc822 format available.

Message #117 received at 278495@bugs.debian.org (full text, mbox):

From: Steve Langasek <vorlon@debian.org>
To: 278495@bugs.debian.org
Cc: debian-release@lists.debian.org
Subject: Re: perl can be in an unusable state during upgrade
Date: Thu, 12 May 2005 17:39:56 -0700
[Message part 1 (text/plain, inline)]
tags 278495 patch
thanks

Hi folks,

I've prepared an NMU for this bug with the attached patch (should look
familiar), and will be uploading shortly.

-release, please consider doc-base 0.7.18-0.1 for sarge.

Thanks,
-- 
Steve Langasek
postmodern programmer
[doc-base-278495.diff (text/plain, attachment)]
[signature.asc (application/pgp-signature, inline)]

Tags added: patch Request was from Steve Langasek <vorlon@debian.org> to control@bugs.debian.org. Full text and rfc822 format available.

Tags added: fixed Request was from Steve Langasek <vorlon@debian.org> to control@bugs.debian.org. Full text and rfc822 format available.

Information forwarded to debian-bugs-dist@lists.debian.org, Brendan O'Dea <bod@debian.org>, Adam Di Carlo <aph@debian.org>:
Bug#278495; Package perl,doc-base. Full text and rfc822 format available.

Acknowledgement sent to Frank Lichtenheld <djpig@debian.org>:
Extra info received and forwarded to list. Copy sent to Brendan O'Dea <bod@debian.org>, Adam Di Carlo <aph@debian.org>. Full text and rfc822 format available.

Message #126 received at 278495@bugs.debian.org (full text, mbox):

From: Frank Lichtenheld <djpig@debian.org>
To: 278495@bugs.debian.org, debian-release@lists.debian.org
Subject: Re: perl can be in an unusable state during upgrade
Date: Fri, 13 May 2005 22:48:35 +0200
On Thu, May 12, 2005 at 05:39:56PM -0700, Steve Langasek wrote:
> I've prepared an NMU for this bug with the attached patch (should look
> familiar), and will be uploading shortly.
> 
> -release, please consider doc-base 0.7.18-0.1 for sarge.

Approved

Gruesse,
-- 
Frank Lichtenheld <djpig@debian.org>
www: http://www.djpig.de/



Bug reassigned from package `perl,doc-base' to `doc-base'. Request was from Brendan O'Dea <bod@debian.org> to control@bugs.debian.org. Full text and rfc822 format available.

Reply sent to Robert Luberda <robert@debian.org>:
You have taken responsibility. Full text and rfc822 format available.

Notification sent to Wolfram Quester <wolfi@mittelerde.physik.uni-konstanz.de>:
Bug acknowledged by developer. Full text and rfc822 format available.

Message #133 received at 278495-close@bugs.debian.org (full text, mbox):

From: Robert Luberda <robert@debian.org>
To: 278495-close@bugs.debian.org
Subject: Bug#278495: fixed in doc-base 0.7.20
Date: Sun, 02 Apr 2006 05:47:08 -0700
Source: doc-base
Source-Version: 0.7.20

We believe that the bug you reported is fixed in the latest version of
doc-base, which is due to be installed in the Debian FTP archive:

doc-base_0.7.20.dsc
  to pool/main/d/doc-base/doc-base_0.7.20.dsc
doc-base_0.7.20.tar.gz
  to pool/main/d/doc-base/doc-base_0.7.20.tar.gz
doc-base_0.7.20_all.deb
  to pool/main/d/doc-base/doc-base_0.7.20_all.deb



A summary of the changes between this version and the previous one is
attached.

Thank you for reporting the bug, which will now be closed.  If you
have further comments please address them to 278495@bugs.debian.org,
and the maintainer will reopen the bug report if appropriate.

Debian distribution maintenance software
pp.
Robert Luberda <robert@debian.org> (supplier of updated doc-base package)

(This message was generated automatically at their request; if you
believe that there is a problem with it please contact the archive
administrators by mailing ftpmaster@debian.org)


-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Format: 1.7
Date: Sun,  2 Apr 2006 14:26:47 +0200
Source: doc-base
Binary: doc-base
Architecture: source all
Version: 0.7.20
Distribution: unstable
Urgency: low
Maintainer: Robert Luberda <robert@debian.org>
Changed-By: Robert Luberda <robert@debian.org>
Description: 
 doc-base   - utilities to manage online documentation
Closes: 114877 278495 289448 292967
Changes: 
 doc-base (0.7.20) unstable; urgency=low
 .
   * doc-base.sgml:
     + document common practice that value of `Files' field is a space
       separated list of filenames or glob patterns
     + also explicitly document the meaning of lines starting with two
       or more spaces
     + add the missing word (closes: #289448)
   * install-docs:
     + encode HTML special characters when generating the .dhelp files
       (closes: #114877)
     + correctly handle the verbatim text and blank line for the .dhelp files
     + warn if files referred by the doc-base files does not exist.
   * debian/postinst: Reregister all the doc-base files because of the above
     install-docs changes.
   * Remove ancient stuff from postinst & prerm scripts, remove preinst
     entirely.
   * Use `which' instead of`command -v' in the scripts (closes: #292967).
   * debian/copyright: update.
   * debian/control: suggest doc-central as an alternative to dhelp or dwww.
   * Ack NMU (closes: #278495).
Files: 
 fe0b163308fd16b74925b9e11a80c0db 533 doc optional doc-base_0.7.20.dsc
 046407b3020c733f60a23bdbd2f5b9b8 18212 doc optional doc-base_0.7.20.tar.gz
 3442b016850993a4bdd256dc6baf98fe 34144 doc optional doc-base_0.7.20_all.deb

-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.2.2 (GNU/Linux)

iD8DBQFEL8M8Thh1cJ0wnDsRAqTNAJ9H8wzIFFWc0NyINUZOFwQJq72lFgCcCr2W
3/B+8yiaNhLQnHHtHtFBIKY=
=HaFl
-----END PGP SIGNATURE-----




Tags added: patch Request was from Heine Larsen <heine@skjulhoj.dk> to control@bugs.debian.org. Full text and rfc822 format available.

Bug archived. Request was from Debbugs Internal Request <owner@bugs.debian.org> to internal_control@bugs.debian.org. (Mon, 25 Jun 2007 03:09:32 GMT) Full text and rfc822 format available.

Send a report that this bug log contains spam.


Debian bug tracking system administrator <owner@bugs.debian.org>. Last modified: Wed Apr 16 13:30:14 2014; Machine Name: beach.debian.org

Debian Bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson.