On Tue, Jul 21, 2015, 4:51 AM Andreas Beckmann <a...@debian.org> wrote:
Package: ffmpeg Version: 7:2.7.2-1 Severity: serious User: debian...@lists.debian.org Usertags: piuparts replaces-without-breaks Control: affects -1 + libav-tools Hi, during a test with piuparts and DOSE tools I noticed your package causes removal of files that also belong to another package. This is caused by using Replaces without corresponding Breaks. The installation sequence to reproduce this problem is apt-get install libav-tools # (1) apt-get install ffmpeg apt-get remove ffmpeg # (2) The list of installed files at points (1) and (2) should be identical, but the following files have disappeared: usr/bin/qt-faststart usr/share/man/man1/qt-faststart.1.gz This is a serious bug violating policy 7.6, see https <https://www.debian.org/doc/debian-policy/ch-relationships.html#s-replaces> :// <https://www.debian.org/doc/debian-policy/ch-relationships.html#s-replaces> www.debian.org <https://www.debian.org/doc/debian-policy/ch-relationships.html#s-replaces> /doc/ <https://www.debian.org/doc/debian-policy/ch-relationships.html#s-replaces> debian-policy <https://www.debian.org/doc/debian-policy/ch-relationships.html#s-replaces>/ <https://www.debian.org/doc/debian-policy/ch-relationships.html#s-replaces> ch-relationships.html#s-replaces <https://www.debian.org/doc/debian-policy/ch-relationships.html#s-replaces> and also see the footnote that describes this incorrect behavior https <https://www.debian.org/doc/debian-policy/footnotes.html#f53>:// <https://www.debian.org/doc/debian-policy/footnotes.html#f53>www.debian.org <https://www.debian.org/doc/debian-policy/footnotes.html#f53>/doc/ <https://www.debian.org/doc/debian-policy/footnotes.html#f53>debian-policy <https://www.debian.org/doc/debian-policy/footnotes.html#f53>/ <https://www.debian.org/doc/debian-policy/footnotes.html#f53> footnotes.html#f53 <https://www.debian.org/doc/debian-policy/footnotes.html#f53> The ffmpeg package has the following relationships with libav-tools: Conflicts: n/a Breaks: libav-tools (<< 6:9~), qt-faststart (<< 7:2.7.1-3~) Replaces: libav-tools (<< 6:12~), qt-faststart (<< 7:2.7.1-3~) The Breaks was not bumped to match the Replaces. >From the attached log (scroll to the bottom...): 1m28.2s ERROR: FAIL: After purging files have disappeared: /usr/bin/qt-faststart owned by: ffmpeg /usr/share/man/man1/qt-faststart.1.gz owned by: ffmpeg 1m28.2s ERROR: FAIL: After purging files have been modified: /var/lib/dpkg/info/libav-tools.list not owned Well, that was actually the purpose, the idea is to replace qt-faststart from libav-tools, and the problem is rather transitional until libav-tools is uninstalled. I guess the bug is that we don't ensure that this actually takes place. I've therefore made two commits in git: - one that tightens the Breaks relationship as suggested - one that renames libav-tools-links to libav-tools in src:ffmpeg. This should ensure a comprehensive transition. Feedback on these two commits are welcome. In particular, I saw a comment suggesting to transition command-line interface separately from the library interfaces. While this may make the transition slightly smaller, the benefits don't outweigh the confusion here, and would rather suggest to transition them both at the same time with the 2nd commit mentioned above. Best, Reinhard
_______________________________________________ pkg-multimedia-maintainers mailing list pkg-multimedia-maintainers@lists.alioth.debian.org http://lists.alioth.debian.org/cgi-bin/mailman/listinfo/pkg-multimedia-maintainers