Bug#700789: autoconf-archive: unhandled symlink to directory conversion: /usr/share/doc/PACKAGE

2013-02-19 Thread Andreas Beckmann
Followup-For: Bug #700789
Control: tag -1 pending

Hi,

uploaded with two minor fixes to DELAYED/3:

* also remove a leftover empty /usr/share/autoconf-archive
* make the preinst actually work: remove trailing slash from path
test -L /path/to/link/
  will never return 'true' because the trailing slash causes a symlink
  to be followed


In general I'd not add the boilerplate comments to maintainer scripts,
and the final 'exit 0' is also useless in a script that uses 'set -e'.
And maybe the preinst could have been restricted to
  if [ $1 = install ] || [ $1 = upgrade ]

But I really liked the comments you added, especially setting a expiry
date for the cleanup code :-)


To avoid requesting yet another upload from you to mentors with just my
patch applied, I uploaded the package with these fixes to DELAYED/3 - so
you have chance to review, comment, and change things again.
But if there is no further action required, the package will be
automatically uploaded in 3 days (e.g. once the delay has expired). 


Andreas
diffstat for autoconf-archive-20111221 autoconf-archive-20111221

 autoconf-archive.postinst |3 ++-
 autoconf-archive.preinst  |4 ++--
 2 files changed, 4 insertions(+), 3 deletions(-)

diff -Nru autoconf-archive-20111221/debian/autoconf-archive.postinst autoconf-archive-20111221/debian/autoconf-archive.postinst
--- autoconf-archive-20111221/debian/autoconf-archive.postinst	2013-02-18 22:22:47.0 +0100
+++ autoconf-archive-20111221/debian/autoconf-archive.postinst	2013-02-20 01:24:39.0 +0100
@@ -9,6 +9,7 @@
 # remove after squeeze + 2
 if [ -d $OLDHTMLDOCDIR ]; then
rm -rf $OLDHTMLDOCDIR
+   rmdir /usr/share/autoconf-archive 2/dev/null || true
 fi
 
 
@@ -17,4 +18,4 @@
 
 #DEBHELPER#
 
-exit 0
\ No newline at end of file
+exit 0
diff -Nru autoconf-archive-20111221/debian/autoconf-archive.preinst autoconf-archive-20111221/debian/autoconf-archive.preinst
--- autoconf-archive-20111221/debian/autoconf-archive.preinst	2013-02-18 22:22:47.0 +0100
+++ autoconf-archive-20111221/debian/autoconf-archive.preinst	2013-02-20 01:25:25.0 +0100
@@ -2,7 +2,7 @@
 
 set -e
 
-HTMLDOCDIR=/usr/share/doc/autoconf-archive/html/
+HTMLDOCDIR=/usr/share/doc/autoconf-archive/html
 
 # fix bug 700789
 # remove old squeeze symlink
@@ -16,4 +16,4 @@
 
 #DEBHELPER#
 
-exit 0
\ No newline at end of file
+exit 0


Bug#700789: autoconf-archive: unhandled symlink to directory conversion: /usr/share/doc/PACKAGE

2013-02-18 Thread roucaries bastien
On Mon, Feb 18, 2013 at 4:22 AM, Andreas Beckmann a...@debian.org wrote:
 On 2013-02-17 21:08, roucaries bastien wrote:
 Thanks waiting under mentors to be uploaded

 * missing #DEBHELPER# token in both new maintainer scripts
 * use the real path in the changelog entry, not the placeholder from my
 bug reporting template: /usr/share/doc/autoconf-archive/html (and
 retitle this bug if you want)
 * new file debian/source/git-patches - why? unneeded change the RT may
 not like for unblocking
 * otherwise looks fine, although I didn't test it yet
 * need a sponsor for the next iteration?


Normally done :) yes i need a sponsor

 Andreas


-- 
To UNSUBSCRIBE, email to debian-bugs-dist-requ...@lists.debian.org
with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org



Bug#700789: autoconf-archive: unhandled symlink to directory conversion: /usr/share/doc/PACKAGE

2013-02-17 Thread Andreas Beckmann
Package: autoconf-archive
Version: 20111221-1
Severity: serious
User: debian...@lists.debian.org
Usertags: piuparts

Hi,

an upgrade test with piuparts revealed that your package installs files
over existing symlinks and possibly overwrites files owned by other
packages. This usually means an old version of the package shipped a
symlink but that was later replaced by a real (and non-empty)
directory. This kind of overwriting another package's files cannot be
detected by dpkg.

This was observed on the following upgrade paths:

  squeeze - wheezy

For /usr/share/doc/PACKAGE this may not be problematic as long as both
packages are installed, ship byte-for-byte identical files and are
upgraded in lockstep. But once one of the involved packages gets
removed, the other one will lose its documentation files, too,
including the copyright file, which is a violation of Policy 12.5:
http://www.debian.org/doc/debian-policy/ch-docs.html#s-copyrightfile

For other overwritten locations anything interesting may happen.

Note that dpkg intentionally does not replace directories with symlinks
and vice versa, you need the maintainer scripts to do this.
See in particular the end of point 4 in
http://www.debian.org/doc/debian-policy/ch-maintainerscripts.html#s-unpackphase

For switching from a symlink to a directory, the *preinst* script
should do something like this:

DOCDIR=/usr/share/doc/@@PACKAGE@@

if [ -L $DOCDIR ]; then
rm $DOCDIR
fi


From the attached log (usually somewhere in the middle...):

0m49.6s INFO: dirname part contains a symlink:
  /usr/share/doc/autoconf-archive/html/Downloads.html (autoconf-archive) != 
/usr/share/autoconf-archive/html/Downloads.html (?)
  /usr/share/doc/autoconf-archive/html/GNU-Free-Documentation-License.html 
(autoconf-archive) != 
/usr/share/autoconf-archive/html/GNU-Free-Documentation-License.html (?)
  /usr/share/doc/autoconf-archive/html/How-to-contribute.html 
(autoconf-archive) != /usr/share/autoconf-archive/html/How-to-contribute.html 
(?)
  /usr/share/doc/autoconf-archive/html/Introduction.html (autoconf-archive) != 
/usr/share/autoconf-archive/html/Introduction.html (?)
  /usr/share/doc/autoconf-archive/html/The-Macros.html (autoconf-archive) != 
/usr/share/autoconf-archive/html/The-Macros.html (?)
  /usr/share/doc/autoconf-archive/html/ax_005fabsolute_005fheader.html 
(autoconf-archive) != 
/usr/share/autoconf-archive/html/ax_005fabsolute_005fheader.html (?)
  
/usr/share/doc/autoconf-archive/html/ax_005fac_005fappend_005fto_005ffile.html 
(autoconf-archive) != 
/usr/share/autoconf-archive/html/ax_005fac_005fappend_005fto_005ffile.html (?)
  /usr/share/doc/autoconf-archive/html/ax_005fac_005fprint_005fto_005ffile.html 
(autoconf-archive) != 
/usr/share/autoconf-archive/html/ax_005fac_005fprint_005fto_005ffile.html (?)
  /usr/share/doc/autoconf-archive/html/ax_005fadd_005fam_005fmacro.html 
(autoconf-archive) != 
/usr/share/autoconf-archive/html/ax_005fadd_005fam_005fmacro.html (?)
  
/usr/share/doc/autoconf-archive/html/ax_005fadd_005fam_005fmacro_005fstatic.html
 (autoconf-archive) != 
/usr/share/autoconf-archive/html/ax_005fadd_005fam_005fmacro_005fstatic.html (?)
  
/usr/share/doc/autoconf-archive/html/ax_005fadd_005fam_005ftrilinos_005fmakefile_005fexport.html
 (autoconf-archive) != 
/usr/share/autoconf-archive/html/ax_005fadd_005fam_005ftrilinos_005fmakefile_005fexport.html
 (?)
  
/usr/share/doc/autoconf-archive/html/ax_005fadd_005frecursive_005fam_005fmacro.html
 (autoconf-archive) != 
/usr/share/autoconf-archive/html/ax_005fadd_005frecursive_005fam_005fmacro.html 
(?)
  
/usr/share/doc/autoconf-archive/html/ax_005fadd_005frecursive_005fam_005fmacro_005fstatic.html
 (autoconf-archive) != 
/usr/share/autoconf-archive/html/ax_005fadd_005frecursive_005fam_005fmacro_005fstatic.html
 (?)
  /usr/share/doc/autoconf-archive/html/ax_005fafs.html (autoconf-archive) != 
/usr/share/autoconf-archive/html/ax_005fafs.html (?)
[...]

I have no idea how to properly clean up currently messed up installations ...


cheers,

Andreas


autoconf-archive_20111221-1.log.gz
Description: GNU Zip compressed data


Bug#700789: autoconf-archive: unhandled symlink to directory conversion: /usr/share/doc/PACKAGE

2013-02-17 Thread roucaries bastien
control: tags -1 pending
On Sun, Feb 17, 2013 at 3:22 PM, Andreas Beckmann a...@debian.org wrote:
 Package: autoconf-archive
 Version: 20111221-1
 Severity: serious
 User: debian...@lists.debian.org
 Usertags: piuparts

 Hi,

 an upgrade test with piuparts revealed that your package installs files
 over existing symlinks and possibly overwrites files owned by other
 packages. This usually means an old version of the package shipped a
 symlink but that was later replaced by a real (and non-empty)
 directory. This kind of overwriting another package's files cannot be
 detected by dpkg.

 This was observed on the following upgrade paths:

   squeeze - wheezy

 For /usr/share/doc/PACKAGE this may not be problematic as long as both
 packages are installed, ship byte-for-byte identical files and are
 upgraded in lockstep. But once one of the involved packages gets
 removed, the other one will lose its documentation files, too,
 including the copyright file, which is a violation of Policy 12.5:
 http://www.debian.org/doc/debian-policy/ch-docs.html#s-copyrightfile

 For other overwritten locations anything interesting may happen.

 Note that dpkg intentionally does not replace directories with symlinks
 and vice versa, you need the maintainer scripts to do this.
 See in particular the end of point 4 in
 http://www.debian.org/doc/debian-policy/ch-maintainerscripts.html#s-unpackphase

 For switching from a symlink to a directory, the *preinst* script
 should do something like this:

 DOCDIR=/usr/share/doc/@@PACKAGE@@

 if [ -L $DOCDIR ]; then
 rm $DOCDIR
 fi


 From the attached log (usually somewhere in the middle...):

 0m49.6s INFO: dirname part contains a symlink:
   /usr/share/doc/autoconf-archive/html/Downloads.html (autoconf-archive) != 
 /usr/share/autoconf-archive/html/Downloads.html (?)
   /usr/share/doc/autoconf-archive/html/GNU-Free-Documentation-License.html 
 (autoconf-archive) != 
 /usr/share/autoconf-archive/html/GNU-Free-Documentation-License.html (?)
   /usr/share/doc/autoconf-archive/html/How-to-contribute.html 
 (autoconf-archive) != /usr/share/autoconf-archive/html/How-to-contribute.html 
 (?)
   /usr/share/doc/autoconf-archive/html/Introduction.html (autoconf-archive) 
 != /usr/share/autoconf-archive/html/Introduction.html (?)
   /usr/share/doc/autoconf-archive/html/The-Macros.html (autoconf-archive) != 
 /usr/share/autoconf-archive/html/The-Macros.html (?)
   /usr/share/doc/autoconf-archive/html/ax_005fabsolute_005fheader.html 
 (autoconf-archive) != 
 /usr/share/autoconf-archive/html/ax_005fabsolute_005fheader.html (?)
   
 /usr/share/doc/autoconf-archive/html/ax_005fac_005fappend_005fto_005ffile.html
  (autoconf-archive) != 
 /usr/share/autoconf-archive/html/ax_005fac_005fappend_005fto_005ffile.html (?)
   
 /usr/share/doc/autoconf-archive/html/ax_005fac_005fprint_005fto_005ffile.html 
 (autoconf-archive) != 
 /usr/share/autoconf-archive/html/ax_005fac_005fprint_005fto_005ffile.html (?)
   /usr/share/doc/autoconf-archive/html/ax_005fadd_005fam_005fmacro.html 
 (autoconf-archive) != 
 /usr/share/autoconf-archive/html/ax_005fadd_005fam_005fmacro.html (?)
   
 /usr/share/doc/autoconf-archive/html/ax_005fadd_005fam_005fmacro_005fstatic.html
  (autoconf-archive) != 
 /usr/share/autoconf-archive/html/ax_005fadd_005fam_005fmacro_005fstatic.html 
 (?)
   
 /usr/share/doc/autoconf-archive/html/ax_005fadd_005fam_005ftrilinos_005fmakefile_005fexport.html
  (autoconf-archive) != 
 /usr/share/autoconf-archive/html/ax_005fadd_005fam_005ftrilinos_005fmakefile_005fexport.html
  (?)
   
 /usr/share/doc/autoconf-archive/html/ax_005fadd_005frecursive_005fam_005fmacro.html
  (autoconf-archive) != 
 /usr/share/autoconf-archive/html/ax_005fadd_005frecursive_005fam_005fmacro.html
  (?)
   
 /usr/share/doc/autoconf-archive/html/ax_005fadd_005frecursive_005fam_005fmacro_005fstatic.html
  (autoconf-archive) != 
 /usr/share/autoconf-archive/html/ax_005fadd_005frecursive_005fam_005fmacro_005fstatic.html
  (?)
   /usr/share/doc/autoconf-archive/html/ax_005fafs.html (autoconf-archive) != 
 /usr/share/autoconf-archive/html/ax_005fafs.html (?)
 [...]

 I have no idea how to properly clean up currently messed up installations ...


 cheers,

 Andreas
Thanks waiting under mentors to be uploaded

Bastien


-- 
To UNSUBSCRIBE, email to debian-bugs-dist-requ...@lists.debian.org
with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org



Bug#700789: autoconf-archive: unhandled symlink to directory conversion: /usr/share/doc/PACKAGE

2013-02-17 Thread Andreas Beckmann
On 2013-02-17 21:08, roucaries bastien wrote:
 Thanks waiting under mentors to be uploaded

* missing #DEBHELPER# token in both new maintainer scripts
* use the real path in the changelog entry, not the placeholder from my
bug reporting template: /usr/share/doc/autoconf-archive/html (and
retitle this bug if you want)
* new file debian/source/git-patches - why? unneeded change the RT may
not like for unblocking
* otherwise looks fine, although I didn't test it yet
* need a sponsor for the next iteration?

Andreas


-- 
To UNSUBSCRIBE, email to debian-bugs-dist-requ...@lists.debian.org
with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org