reassign 410951 r-other-gking-matchit
tags 410951 -pending
thanks
On Fri, Mar 02, 2007 at 04:19:15PM -0300, Gustavo Franco wrote:
reassign 410951 r-cran-matchit
tags 410951 pending
thanks
I've found that r-other-gking-matchit sarge to etch upgrade fails due
to the relaxed dependency on r-cran-matchit [ Depends: r-base-core (
2.2.0) ], if r-cran-matchit works with r-base-core = 2.4, please
update the Depends field to = 2.4.0.20061125-1, otherwhise
r-other-gking-matchit, r-cran-matchit and maybe others should be
removed.
The error message is due to the missing ldpaths on r-base-core 2.2
that is running in the sarge system and satisfies the r-cran-matchit
dependency. ldpaths exists on r-base-core 2.4 though.
I don't see any problems with the dependencies of r-cran-matchit.
r-cran-matchit has a correct, *versioned* dependency on r-base-core (
2.2.0). This isn't satisfied by any r-base-core package in sarge, only by
the r-base-core_2.4.0.20061125-1 package in etch.
Furthermore, it's not r-cran-matchit that's failing here. This failure is
from the postrm of the *old* version of r-other-gking-matchit, which depends
on having a fully-configured r-base-core package installed at the point of
postrm upgrade -- a condition which is not guaranteed by policy.
The new version of r-base-core is /unpacked/ at this stage, but
/usr/lib/R/etc/ldpaths is left as a dangling symlink pointing to
/etc/R/ldpaths, which is only created in the r-base-core postinst.
So the real bug is in the postrm of the old version of r-other-gking-matchit
in sarge.
Here's the full sequence in more detail, from an aptitude dist-upgrade:
[...]
Preparing to replace r-base-core 2.1.0-1 (using
.../r-base-core_2.4.0.20061125-1_i386.deb) ...
Unpacking replacement r-base-core ...
[...]
Unpacking replacement r-other-gking-matchit ...
/usr/bin/R: line 113: /usr/lib/R/etc/ldpaths: No such file or directory
dpkg: warning - old post-removal script returned error exit status 1
dpkg - trying script from the new package instead ...
dpkg: error processing
/mirror/pool/main/m/matchit/r-other-gking-matchit_2.2-11-1_all.deb (--unpack):
there is no script in the new version of the package - giving up
[...]
Selecting previously deselected package r-cran-matchit.
dpkg: considering removing r-other-gking-matchit in favour of r-cran-matchit ...
dpkg: yes, will remove r-other-gking-matchit in favour of r-cran-matchit.
Unpacking r-cran-matchit (from .../r-cran-matchit_2.2-11-1_all.deb) ...
/usr/bin/R: line 113: /usr/lib/R/etc/ldpaths: No such file or directory
dpkg: error processing
/mirror/pool/main/m/matchit/r-cran-matchit_2.2-11-1_all.deb (--unpack):
subprocess post-removal script returned error exit status 1
[...]
snip bit where dpkg becomes impressively confused about whose postinst is
whose, and gives a postrm error from sudo citing the same problem
[...]
Setting up r-cran-matchit (2.2-11-1) ...
Reading Package Lists... Done
Building Dependency Tree
Reading extended state information
Initializing package states... Done
$ dpkg -l r-other-gking-matchit
Desired=Unknown/Install/Remove/Purge/Hold
| Status=Not/Installed/Config-files/Unpacked/Failed-config/Half-installed
|/ Err?=(none)/Hold/Reinst-required/X=both-problems (Status,Err: uppercase=bad)
||/ Name VersionDescription
+++-==-==-
iH r-other-gking- 1.0-1-1GNU R package of nonparametric matching meth
$
Note that at this point, it's trivial to get r-other-gking-matchit properly
installed -- all it takes is a second aptitude dist-upgrade or a dpkg
--configure --pending. But it does add to the complexity of the upgrade
path, and each bug like this increases the probability that a user will end
up with a wedged system in the middle of an upgrade.
So I'm reassigning this bug back to r-other-gking-matchit, which is both the
package with the bug and the only package that can fix the bug. In this
case, the fix is simple: all we need is a no-op postrm script to be included
in the new version of the r-other-gking-matchit package, which will handle
the failed-upgrade case gracefully.
For reference, the only thing that the old version of r-other-gking-matchit
does in its postrm is:
R CMD perl /usr/lib/R/share/perl/build-help.pl --htmllists
If that's actually an important thing to have done during the upgrade (the
new version of r-other-gking-matchit no longer does this), then it can be
cleaned up in the postinst instead.
Cheers,
--
Steve Langasek Give me a lever long enough and a Free OS
Debian Developer to set it on, and I can move the world.
[EMAIL PROTECTED] http://www.debian.org/
--
To UNSUBSCRIBE, email to [EMAIL PROTECTED]
with a subject of unsubscribe. Trouble? Contact [EMAIL PROTECTED]