[xml/sgml-pkgs] Bug#482140: etch -> lenny upgrade fails, because @INC does not contain 5.10 paths

Agustin Martin agmartin at debian.org
Fri Oct 10 14:14:27 UTC 2008


On Wed, Oct 08, 2008 at 08:29:02PM +0200, Agustin Martin wrote:

> I am afraid the only way to make sure is following Niko proposal about
> pre-dependencies on a newer and fixed xml-core.

Me may be lucky and do not need any of this. See below for a possible fix.

On Tue, Oct 07, 2008 at 05:51:20PM +0200, Daniel Leidert wrote:
> Hi all,
> 
> Examining bug #482140 I found, that update-xmlcatalog fails during
> dist-upgrade from Etch to Lenny with an Error, that Functions.pm cannot
> be found in @INC (the same goes for defoma-app, IIRC there Copy.pm was
> not found). The paths in @INC were only the generic paths and the 5.8
> paths, but the 5.10 paths were missing.
> 
> I wonder, how to solve the problem. The problem is reprosucible in my
> pbuilder (Etch-)CHROOT doing:
> 
> apt-get install docbook-xml vim
> apt-get install gnome

Finally reproduced. Do not know what gnome triggers here, probably changes
package installation ordering, causing the error condition. Trying without
gnome installed I could not reproduce the error.

The *good news* are that seems I have a patch to xml-core that makes this
bug not being triggered, at least with gnome. An xml-core package with
the changes is available through

deb http://people.debian.org/~agmartin/debian-store/experimental ./

For inclusion with 'apt-key add', repository is signed with my Debian key,
available from the Debian keyring. It contains a number of changes that
should IMHO, go into xml-core,

* tools/update-xmlcatalog:
  - Use perl-base File::Spec rather than perl-modules File::Spec::Functions.
  - Call catfile as a File::Spec method instead of as a function.
* debian/rules:
  - Pass -d option to dh_perl, we no longer use anything outside perl-base.

This is important, because, unless I am wrong it was the only call to something
outside perl-base. Seems that after the change all perl modules used in
xml-core update-xmlcatalogs

File::Spec
Getopt::Long
vars

are now in perl-base (or in debhelper for Debian::Debhelper::Dh_Lib use in
dh_installxmlcatalogs), so we can drop the dependency on full perl (better
pass -d option to dh_perl, so looks for versioned dependency in perl-base
if any)

*This really needs to be double-checked*, but seems I did not miss any non
perl-base module.

* debian/rules:
  - Make sure auto-generated man pages are removed on clean target.
* tools/update-xmlcatalog:
  - Be more verbose if error is signalled on already registered entity.

As you see above, I added a couple of things in the patch. Make failure a bit
more verbose and remove auto-generated man pages from clean target.

Note that I finally used the File::Spec->catfile way, so full portability is
preserved. 

I am not a perl wizard, so I keep debian-perl cc'ed in case people there
see problems I am missing.

Not sure that this will fix all uses, but seems that at least works well
with the interaction with gnome.

For further checking, and may be (I hope not) to identify other scenarios
for this bug, I am Bcc'ing the people that reported reproducing the bug, in
case they want to try with my package. Sorry if I missed someone.

As told above, my repo is signed with my gpg key, available at the Debian
keyring.

Patch is attached.

-- 
Agustin
-------------- next part --------------
A non-text attachment was scrubbed...
Name: xml-core_0.11_fix-update-xmlcatalogs.diff
Type: text/x-diff
Size: 4542 bytes
Desc: not available
Url : http://lists.alioth.debian.org/pipermail/debian-xml-sgml-pkgs/attachments/20081010/6bc57569/attachment.diff 


More information about the debian-xml-sgml-pkgs mailing list