Package: r-cran-dt
Version: 0.11+dfsg-1
Severity: serious
User: [email protected]
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:

  buster -> bullseye

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:
https://www.debian.org/doc/debian-policy/ch-docs.html#copyright-information

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
https://www.debian.org/doc/debian-policy/ch-maintainerscripts.html#details-of-unpack-phase-of-installation-or-upgrade

It is recommended to use the dpkg-maintscript-helper commands
'dir_to_symlink' and 'symlink_to_dir' (available since dpkg 1.17.14)
to perform the conversion, ideally using d/$PACKAGE.maintscript.
See dpkg-maintscript-helper(1) and dh_installdeb(1) for details.


>From the attached log (scroll to the bottom...):

2m27.3s ERROR: FAIL: silently overwrites files via directory symlinks:
  /usr/lib/R/site-library/DT/htmlwidgets/lib/datatables-extensions/AutoFill 
(r-cran-dt) != /usr/share/javascript/jquery-datatables-extensions/AutoFill 
(libjs-jquery-datatables-extensions)
    /usr/lib/R/site-library/DT/htmlwidgets/lib/datatables-extensions -> 
../../../../../../share/javascript/jquery-datatables-extensions
  /usr/lib/R/site-library/DT/htmlwidgets/lib/datatables-extensions/Buttons 
(r-cran-dt) != /usr/share/javascript/jquery-datatables-extensions/Buttons 
(libjs-jquery-datatables-extensions)
    /usr/lib/R/site-library/DT/htmlwidgets/lib/datatables-extensions -> 
../../../../../../share/javascript/jquery-datatables-extensions
  /usr/lib/R/site-library/DT/htmlwidgets/lib/datatables-extensions/Buttons/css 
(r-cran-dt) != /usr/share/javascript/jquery-datatables-extensions/Buttons/css 
(libjs-jquery-datatables-extensions)
    /usr/lib/R/site-library/DT/htmlwidgets/lib/datatables-extensions -> 
../../../../../../share/javascript/jquery-datatables-extensions
  /usr/lib/R/site-library/DT/htmlwidgets/lib/datatables-extensions/Buttons/js 
(r-cran-dt) != /usr/share/javascript/jquery-datatables-extensions/Buttons/js 
(libjs-jquery-datatables-extensions)
    /usr/lib/R/site-library/DT/htmlwidgets/lib/datatables-extensions -> 
../../../../../../share/javascript/jquery-datatables-extensions
  
/usr/lib/R/site-library/DT/htmlwidgets/lib/datatables-extensions/Buttons/js/buttons.bootstrap.js
 (r-cran-dt) != 
/usr/share/javascript/jquery-datatables-extensions/Buttons/js/buttons.bootstrap.js
 (libjs-jquery-datatables-extensions)
    /usr/lib/R/site-library/DT/htmlwidgets/lib/datatables-extensions -> 
../../../../../../share/javascript/jquery-datatables-extensions
  
/usr/lib/R/site-library/DT/htmlwidgets/lib/datatables-extensions/Buttons/js/buttons.bootstrap.min.js
 (r-cran-dt) != 
/usr/share/javascript/jquery-datatables-extensions/Buttons/js/buttons.bootstrap.min.js
 (libjs-jquery-datatables-extensions)
    /usr/lib/R/site-library/DT/htmlwidgets/lib/datatables-extensions -> 
../../../../../../share/javascript/jquery-datatables-extensions
  
/usr/lib/R/site-library/DT/htmlwidgets/lib/datatables-extensions/Buttons/js/buttons.colVis.js
 (r-cran-dt) != 
/usr/share/javascript/jquery-datatables-extensions/Buttons/js/buttons.colVis.js 
(libjs-jquery-datatables-extensions)
    /usr/lib/R/site-library/DT/htmlwidgets/lib/datatables-extensions -> 
../../../../../../share/javascript/jquery-datatables-extensions
  
/usr/lib/R/site-library/DT/htmlwidgets/lib/datatables-extensions/Buttons/js/buttons.colVis.min.js
 (r-cran-dt) != 
/usr/share/javascript/jquery-datatables-extensions/Buttons/js/buttons.colVis.min.js
 (libjs-jquery-datatables-extensions)
    /usr/lib/R/site-library/DT/htmlwidgets/lib/datatables-extensions -> 
../../../../../../share/javascript/jquery-datatables-extensions
  
/usr/lib/R/site-library/DT/htmlwidgets/lib/datatables-extensions/Buttons/js/buttons.foundation.js
 (r-cran-dt) != 
/usr/share/javascript/jquery-datatables-extensions/Buttons/js/buttons.foundation.js
 (libjs-jquery-datatables-extensions)
    /usr/lib/R/site-library/DT/htmlwidgets/lib/datatables-extensions -> 
../../../../../../share/javascript/jquery-datatables-extensions
  
/usr/lib/R/site-library/DT/htmlwidgets/lib/datatables-extensions/Buttons/js/buttons.foundation.min.js
 (r-cran-dt) != 
/usr/share/javascript/jquery-datatables-extensions/Buttons/js/buttons.foundation.min.js
 (libjs-jquery-datatables-extensions)
    /usr/lib/R/site-library/DT/htmlwidgets/lib/datatables-extensions -> 
../../../../../../share/javascript/jquery-datatables-extensions
  
/usr/lib/R/site-library/DT/htmlwidgets/lib/datatables-extensions/Buttons/js/buttons.html5.js
 (r-cran-dt) != 
/usr/share/javascript/jquery-datatables-extensions/Buttons/js/buttons.html5.js 
(libjs-jquery-datatables-extensions)
    /usr/lib/R/site-library/DT/htmlwidgets/lib/datatables-extensions -> 
../../../../../../share/javascript/jquery-datatables-extensions
  
/usr/lib/R/site-library/DT/htmlwidgets/lib/datatables-extensions/Buttons/js/buttons.html5.min.js
 (r-cran-dt) != 
/usr/share/javascript/jquery-datatables-extensions/Buttons/js/buttons.html5.min.js
 (libjs-jquery-datatables-extensions)
    /usr/lib/R/site-library/DT/htmlwidgets/lib/datatables-extensions -> 
../../../../../../share/javascript/jquery-datatables-extensions
  
/usr/lib/R/site-library/DT/htmlwidgets/lib/datatables-extensions/Buttons/js/buttons.jqueryui.js
 (r-cran-dt) != 
/usr/share/javascript/jquery-datatables-extensions/Buttons/js/buttons.jqueryui.js
 (libjs-jquery-datatables-extensions)
    /usr/lib/R/site-library/DT/htmlwidgets/lib/datatables-extensions -> 
../../../../../../share/javascript/jquery-datatables-extensions
  
/usr/lib/R/site-library/DT/htmlwidgets/lib/datatables-extensions/Buttons/js/buttons.jqueryui.min.js
 (r-cran-dt) != 
/usr/share/javascript/jquery-datatables-extensions/Buttons/js/buttons.jqueryui.min.js
 (libjs-jquery-datatables-extensions)
    /usr/lib/R/site-library/DT/htmlwidgets/lib/datatables-extensions -> 
../../../../../../share/javascript/jquery-datatables-extensions
  
/usr/lib/R/site-library/DT/htmlwidgets/lib/datatables-extensions/Buttons/js/buttons.print.js
 (r-cran-dt) != 
/usr/share/javascript/jquery-datatables-extensions/Buttons/js/buttons.print.js 
(libjs-jquery-datatables-extensions)
    /usr/lib/R/site-library/DT/htmlwidgets/lib/datatables-extensions -> 
../../../../../../share/javascript/jquery-datatables-extensions
  
/usr/lib/R/site-library/DT/htmlwidgets/lib/datatables-extensions/Buttons/js/buttons.print.min.js
 (r-cran-dt) != 
/usr/share/javascript/jquery-datatables-extensions/Buttons/js/buttons.print.min.js
 (libjs-jquery-datatables-extensions)
    /usr/lib/R/site-library/DT/htmlwidgets/lib/datatables-extensions -> 
../../../../../../share/javascript/jquery-datatables-extensions
  
/usr/lib/R/site-library/DT/htmlwidgets/lib/datatables-extensions/Buttons/js/dataTables.buttons.js
 (r-cran-dt) != 
/usr/share/javascript/jquery-datatables-extensions/Buttons/js/dataTables.buttons.js
 (libjs-jquery-datatables-extensions)
    /usr/lib/R/site-library/DT/htmlwidgets/lib/datatables-extensions -> 
../../../../../../share/javascript/jquery-datatables-extensions
  
/usr/lib/R/site-library/DT/htmlwidgets/lib/datatables-extensions/Buttons/js/dataTables.buttons.min.js
 (r-cran-dt) != 
/usr/share/javascript/jquery-datatables-extensions/Buttons/js/dataTables.buttons.min.js
 (libjs-jquery-datatables-extensions)
    /usr/lib/R/site-library/DT/htmlwidgets/lib/datatables-extensions -> 
../../../../../../share/javascript/jquery-datatables-extensions
  
/usr/lib/R/site-library/DT/htmlwidgets/lib/datatables-extensions/Buttons/js/jszip.min.js
 (r-cran-dt) != 
/usr/share/javascript/jquery-datatables-extensions/Buttons/js/jszip.min.js (?)
    /usr/lib/R/site-library/DT/htmlwidgets/lib/datatables-extensions -> 
../../../../../../share/javascript/jquery-datatables-extensions
  
/usr/lib/R/site-library/DT/htmlwidgets/lib/datatables-extensions/Buttons/js/pdfmake.min.js
 (r-cran-dt) != 
/usr/share/javascript/jquery-datatables-extensions/Buttons/js/pdfmake.min.js (?)
    /usr/lib/R/site-library/DT/htmlwidgets/lib/datatables-extensions -> 
../../../../../../share/javascript/jquery-datatables-extensions
  /usr/lib/R/site-library/DT/htmlwidgets/lib/datatables-extensions/ColReorder 
(r-cran-dt) != /usr/share/javascript/jquery-datatables-extensions/ColReorder 
(libjs-jquery-datatables-extensions)
    /usr/lib/R/site-library/DT/htmlwidgets/lib/datatables-extensions -> 
../../../../../../share/javascript/jquery-datatables-extensions
  /usr/lib/R/site-library/DT/htmlwidgets/lib/datatables-extensions/FixedColumns 
(r-cran-dt) != /usr/share/javascript/jquery-datatables-extensions/FixedColumns 
(libjs-jquery-datatables-extensions)
    /usr/lib/R/site-library/DT/htmlwidgets/lib/datatables-extensions -> 
../../../../../../share/javascript/jquery-datatables-extensions
  /usr/lib/R/site-library/DT/htmlwidgets/lib/datatables-extensions/FixedHeader 
(r-cran-dt) != /usr/share/javascript/jquery-datatables-extensions/FixedHeader 
(libjs-jquery-datatables-extensions)
    /usr/lib/R/site-library/DT/htmlwidgets/lib/datatables-extensions -> 
../../../../../../share/javascript/jquery-datatables-extensions
  /usr/lib/R/site-library/DT/htmlwidgets/lib/datatables-extensions/JSZip 
(r-cran-dt) != /usr/share/javascript/jquery-datatables-extensions/JSZip 
(libjs-jquery-datatables-extensions)
    /usr/lib/R/site-library/DT/htmlwidgets/lib/datatables-extensions -> 
../../../../../../share/javascript/jquery-datatables-extensions
  /usr/lib/R/site-library/DT/htmlwidgets/lib/datatables-extensions/KeyTable 
(r-cran-dt) != /usr/share/javascript/jquery-datatables-extensions/KeyTable 
(libjs-jquery-datatables-extensions)
    /usr/lib/R/site-library/DT/htmlwidgets/lib/datatables-extensions -> 
../../../../../../share/javascript/jquery-datatables-extensions
  /usr/lib/R/site-library/DT/htmlwidgets/lib/datatables-extensions/Responsive 
(r-cran-dt) != /usr/share/javascript/jquery-datatables-extensions/Responsive 
(libjs-jquery-datatables-extensions)
    /usr/lib/R/site-library/DT/htmlwidgets/lib/datatables-extensions -> 
../../../../../../share/javascript/jquery-datatables-extensions
  /usr/lib/R/site-library/DT/htmlwidgets/lib/datatables-extensions/RowReorder 
(r-cran-dt) != /usr/share/javascript/jquery-datatables-extensions/RowReorder 
(libjs-jquery-datatables-extensions)
    /usr/lib/R/site-library/DT/htmlwidgets/lib/datatables-extensions -> 
../../../../../../share/javascript/jquery-datatables-extensions
  /usr/lib/R/site-library/DT/htmlwidgets/lib/datatables-extensions/Scroller 
(r-cran-dt) != /usr/share/javascript/jquery-datatables-extensions/Scroller 
(libjs-jquery-datatables-extensions)
    /usr/lib/R/site-library/DT/htmlwidgets/lib/datatables-extensions -> 
../../../../../../share/javascript/jquery-datatables-extensions
  /usr/lib/R/site-library/DT/htmlwidgets/lib/datatables-extensions/Select 
(r-cran-dt) != /usr/share/javascript/jquery-datatables-extensions/Select 
(libjs-jquery-datatables-extensions)
    /usr/lib/R/site-library/DT/htmlwidgets/lib/datatables-extensions -> 
../../../../../../share/javascript/jquery-datatables-extensions
  /usr/lib/R/site-library/DT/htmlwidgets/lib/datatables-extensions/pdfmake 
(r-cran-dt) != /usr/share/javascript/jquery-datatables-extensions/pdfmake 
(libjs-jquery-datatables-extensions)
    /usr/lib/R/site-library/DT/htmlwidgets/lib/datatables-extensions -> 
../../../../../../share/javascript/jquery-datatables-extensions
  /usr/lib/R/site-library/DT/htmlwidgets/lib/datatables/css (r-cran-dt) != 
/usr/share/javascript/jquery-datatables/css (libjs-jquery-datatables)
    /usr/lib/R/site-library/DT/htmlwidgets/lib/datatables -> 
../../../../../../share/javascript/jquery-datatables
  
/usr/lib/R/site-library/DT/htmlwidgets/lib/datatables/css/dataTables.bootstrap.css
 (r-cran-dt) != 
/usr/share/javascript/jquery-datatables/css/dataTables.bootstrap.css 
(libjs-jquery-datatables)
    /usr/lib/R/site-library/DT/htmlwidgets/lib/datatables -> 
../../../../../../share/javascript/jquery-datatables
  
/usr/lib/R/site-library/DT/htmlwidgets/lib/datatables/css/dataTables.bootstrap.min.css
 (r-cran-dt) != 
/usr/share/javascript/jquery-datatables/css/dataTables.bootstrap.min.css 
(libjs-jquery-datatables)
    /usr/lib/R/site-library/DT/htmlwidgets/lib/datatables -> 
../../../../../../share/javascript/jquery-datatables
  
/usr/lib/R/site-library/DT/htmlwidgets/lib/datatables/css/dataTables.bootstrap4.css
 (r-cran-dt) != 
/usr/share/javascript/jquery-datatables/css/dataTables.bootstrap4.css 
(libjs-jquery-datatables)
    /usr/lib/R/site-library/DT/htmlwidgets/lib/datatables -> 
../../../../../../share/javascript/jquery-datatables
  
/usr/lib/R/site-library/DT/htmlwidgets/lib/datatables/css/dataTables.bootstrap4.min.css
 (r-cran-dt) != 
/usr/share/javascript/jquery-datatables/css/dataTables.bootstrap4.min.css 
(libjs-jquery-datatables)
    /usr/lib/R/site-library/DT/htmlwidgets/lib/datatables -> 
../../../../../../share/javascript/jquery-datatables
  
/usr/lib/R/site-library/DT/htmlwidgets/lib/datatables/css/dataTables.foundation.css
 (r-cran-dt) != 
/usr/share/javascript/jquery-datatables/css/dataTables.foundation.css 
(libjs-jquery-datatables)
    /usr/lib/R/site-library/DT/htmlwidgets/lib/datatables -> 
../../../../../../share/javascript/jquery-datatables
  
/usr/lib/R/site-library/DT/htmlwidgets/lib/datatables/css/dataTables.foundation.min.css
 (r-cran-dt) != 
/usr/share/javascript/jquery-datatables/css/dataTables.foundation.min.css 
(libjs-jquery-datatables)
    /usr/lib/R/site-library/DT/htmlwidgets/lib/datatables -> 
../../../../../../share/javascript/jquery-datatables
  
/usr/lib/R/site-library/DT/htmlwidgets/lib/datatables/css/dataTables.jqueryui.css
 (r-cran-dt) != 
/usr/share/javascript/jquery-datatables/css/dataTables.jqueryui.css 
(libjs-jquery-datatables)
    /usr/lib/R/site-library/DT/htmlwidgets/lib/datatables -> 
../../../../../../share/javascript/jquery-datatables
  
/usr/lib/R/site-library/DT/htmlwidgets/lib/datatables/css/dataTables.jqueryui.min.css
 (r-cran-dt) != 
/usr/share/javascript/jquery-datatables/css/dataTables.jqueryui.min.css 
(libjs-jquery-datatables)
    /usr/lib/R/site-library/DT/htmlwidgets/lib/datatables -> 
../../../../../../share/javascript/jquery-datatables
  
/usr/lib/R/site-library/DT/htmlwidgets/lib/datatables/css/dataTables.material.css
 (r-cran-dt) != 
/usr/share/javascript/jquery-datatables/css/dataTables.material.css 
(libjs-jquery-datatables)
    /usr/lib/R/site-library/DT/htmlwidgets/lib/datatables -> 
../../../../../../share/javascript/jquery-datatables
  
/usr/lib/R/site-library/DT/htmlwidgets/lib/datatables/css/dataTables.material.min.css
 (r-cran-dt) != 
/usr/share/javascript/jquery-datatables/css/dataTables.material.min.css 
(libjs-jquery-datatables)
    /usr/lib/R/site-library/DT/htmlwidgets/lib/datatables -> 
../../../../../../share/javascript/jquery-datatables
  
/usr/lib/R/site-library/DT/htmlwidgets/lib/datatables/css/dataTables.semanticui.css
 (r-cran-dt) != 
/usr/share/javascript/jquery-datatables/css/dataTables.semanticui.css 
(libjs-jquery-datatables)
    /usr/lib/R/site-library/DT/htmlwidgets/lib/datatables -> 
../../../../../../share/javascript/jquery-datatables
  
/usr/lib/R/site-library/DT/htmlwidgets/lib/datatables/css/dataTables.semanticui.min.css
 (r-cran-dt) != 
/usr/share/javascript/jquery-datatables/css/dataTables.semanticui.min.css 
(libjs-jquery-datatables)
    /usr/lib/R/site-library/DT/htmlwidgets/lib/datatables -> 
../../../../../../share/javascript/jquery-datatables
  
/usr/lib/R/site-library/DT/htmlwidgets/lib/datatables/css/dataTables.uikit.css 
(r-cran-dt) != /usr/share/javascript/jquery-datatables/css/dataTables.uikit.css 
(libjs-jquery-datatables)
    /usr/lib/R/site-library/DT/htmlwidgets/lib/datatables -> 
../../../../../../share/javascript/jquery-datatables
  
/usr/lib/R/site-library/DT/htmlwidgets/lib/datatables/css/dataTables.uikit.min.css
 (r-cran-dt) != 
/usr/share/javascript/jquery-datatables/css/dataTables.uikit.min.css 
(libjs-jquery-datatables)
    /usr/lib/R/site-library/DT/htmlwidgets/lib/datatables -> 
../../../../../../share/javascript/jquery-datatables
  
/usr/lib/R/site-library/DT/htmlwidgets/lib/datatables/css/jquery.dataTables.css 
(r-cran-dt) != 
/usr/share/javascript/jquery-datatables/css/jquery.dataTables.css 
(libjs-jquery-datatables)
    /usr/lib/R/site-library/DT/htmlwidgets/lib/datatables -> 
../../../../../../share/javascript/jquery-datatables
  
/usr/lib/R/site-library/DT/htmlwidgets/lib/datatables/css/jquery.dataTables.extra.css
 (r-cran-dt) != 
/usr/share/javascript/jquery-datatables/css/jquery.dataTables.extra.css (?)
    /usr/lib/R/site-library/DT/htmlwidgets/lib/datatables -> 
../../../../../../share/javascript/jquery-datatables
  
/usr/lib/R/site-library/DT/htmlwidgets/lib/datatables/css/jquery.dataTables.min.css
 (r-cran-dt) != 
/usr/share/javascript/jquery-datatables/css/jquery.dataTables.min.css 
(libjs-jquery-datatables)
    /usr/lib/R/site-library/DT/htmlwidgets/lib/datatables -> 
../../../../../../share/javascript/jquery-datatables
  /usr/lib/R/site-library/DT/htmlwidgets/lib/datatables/js (r-cran-dt) != 
/usr/share/javascript/jquery-datatables/js (?)
    /usr/lib/R/site-library/DT/htmlwidgets/lib/datatables -> 
../../../../../../share/javascript/jquery-datatables


cheers,

Andreas

Attachment: r-cran-dt_0.11+dfsg-1.log.gz
Description: application/gzip

Reply via email to