Thanks Andreas,

I've patched and pushed to salsa the -5 version of the package which correct this bug, adding the missing breaks entry.

Regards,

Philou.


On 2020-11-09 14:49, Andreas Beckmann wrote:
Package: kconfig-frontends
Version: 4.11.0.1+dfsg-4
Severity: serious
User: debian...@lists.debian.org
Usertags: piuparts replaces-without-breaks

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 kconfig-frontends-nox
  # (1)
  apt-get install kconfig-frontends
  apt-get remove kconfig-frontends
  # (2)

The list of installed files at points (1) and (2) should be identical,
but the following files have disappeared:

  /usr/bin/kconfig
  /usr/bin/kconfig-conf
  /usr/bin/kconfig-diff
  /usr/bin/kconfig-gettext
  /usr/bin/kconfig-mconf
  /usr/bin/kconfig-merge
  /usr/bin/kconfig-nconf
  /usr/bin/kconfig-tweak
  /usr/include/kconfig/expr.h
  /usr/include/kconfig/list.h
  /usr/include/kconfig/lkc.h
  /usr/include/kconfig/lkc_proto.h
  /usr/lib/x86_64-linux-gnu/libkconfig-parser-4.11.0.so
  /usr/lib/x86_64-linux-gnu/libkconfig-parser.la
/usr/lib/x86_64-linux-gnu/libkconfig-parser.so -> libkconfig-parser-4.11.0.so
  /usr/lib/x86_64-linux-gnu/pkgconfig/kconfig-parser.pc
  /usr/share/doc/kconfig-frontends/kconfig-language.txt.gz
  /usr/share/doc/kconfig-frontends/kconfig.txt.gz
  /usr/share/man/man1/kconfig-conf.1.gz
  /usr/share/man/man1/kconfig-diff.1.gz
  /usr/share/man/man1/kconfig-gettext.1.gz
  /usr/share/man/man1/kconfig-mconf.1.gz
  /usr/share/man/man1/kconfig-merge.1.gz
  /usr/share/man/man1/kconfig-nconf.1.gz
  /usr/share/man/man1/kconfig-tweak.1.gz
  /usr/share/man/man1/kconfig.1.gz


This is a serious bug violating policy 7.6, see
https://www.debian.org/doc/debian-policy/ch-relationships.html#overwriting-files-and-replacing-packages-replaces
and also see the footnote that describes this incorrect behavior:
https://www.debian.org/doc/debian-policy/ch-relationships.html#id13

The kconfig-frontends package has the following relationships with
kconfig-frontends-nox:

  Conflicts: n/a
  Breaks:    n/a
  Replaces:  kconfig-frontends-nox
  Provides:  kconfig-frontends-nox

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

0m41.3s ERROR: FAIL: After purging files have disappeared:
  /usr/bin/kconfig       owned by: kconfig-frontends
  /usr/bin/kconfig-conf  owned by: kconfig-frontends
  /usr/bin/kconfig-diff  owned by: kconfig-frontends
  /usr/bin/kconfig-gettext       owned by: kconfig-frontends
  /usr/bin/kconfig-mconf         owned by: kconfig-frontends
  /usr/bin/kconfig-merge         owned by: kconfig-frontends
  /usr/bin/kconfig-nconf         owned by: kconfig-frontends
  /usr/bin/kconfig-tweak         owned by: kconfig-frontends
  /usr/include/kconfig/expr.h    owned by: kconfig-frontends
  /usr/include/kconfig/list.h    owned by: kconfig-frontends
  /usr/include/kconfig/lkc.h     owned by: kconfig-frontends
  /usr/include/kconfig/lkc_proto.h       owned by: kconfig-frontends
  /usr/lib/x86_64-linux-gnu/libkconfig-parser-4.11.0.so  owned by:
kconfig-frontends
  /usr/lib/x86_64-linux-gnu/libkconfig-parser.la         owned by:
kconfig-frontends
  /usr/lib/x86_64-linux-gnu/libkconfig-parser.so ->
libkconfig-parser-4.11.0.so  owned by: kconfig-frontends
  /usr/lib/x86_64-linux-gnu/pkgconfig/kconfig-parser.pc  owned by:
kconfig-frontends
  /usr/share/doc/kconfig-frontends/kconfig-language.txt.gz       owned
by: kconfig-frontends
  /usr/share/doc/kconfig-frontends/kconfig.txt.gz        owned by:
kconfig-frontends
  /usr/share/man/man1/kconfig-conf.1.gz  owned by: kconfig-frontends
  /usr/share/man/man1/kconfig-diff.1.gz  owned by: kconfig-frontends
/usr/share/man/man1/kconfig-gettext.1.gz owned by: kconfig-frontends /usr/share/man/man1/kconfig-mconf.1.gz owned by: kconfig-frontends /usr/share/man/man1/kconfig-merge.1.gz owned by: kconfig-frontends /usr/share/man/man1/kconfig-nconf.1.gz owned by: kconfig-frontends /usr/share/man/man1/kconfig-tweak.1.gz owned by: kconfig-frontends
  /usr/share/man/man1/kconfig.1.gz       owned by: kconfig-frontends

0m41.3s ERROR: FAIL: After purging files have been modified:
  /var/lib/dpkg/info/kconfig-frontends-nox.list  not owned


cheers,

Andreas

Reply via email to