[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

File moved from one package to another - use Conflicts/Replaces or Breaks/Replaces?


In MariaDB we have over the years moved files around. A file that was first in e.g. mariadb-server-10.3 might have been moved to mariadb-server-core-10.3 and some years later to mariadb-client-core-10.5. The result is a massive debian/control file with a lot of Conflicts/Breaks/Replaces [1]

While trying to clean up and simplify I started wondering, when should one use Conflicts/Replaces and when Breaks/Replaces?

Policy [2] says:
"Breaks should be used when moving a file from one package to another"

Man page [3] says:
"Conflicts: Lists packages that conflict with this one, for example by containing files with the same names."

Wiki page [4] implies to use Breaks/Replaces in the "ReOrg" scenario, but it does not directly apply here as it discusses changes to two packages, not only one as in the MariaDB case.

Looking at the MariaDB control file [1], how do you suggest I clean it up?

Examples of file moves and control file updates over the years: [5], [6]

[1] https://salsa.debian.org/mariadb-team/mariadb-10.5/-/blob/master/debian/control
[2] https://www.debian.org/doc/debian-policy/ch-relationships.html#s-conflicts
[3] https://manpages.debian.org/buster/dpkg-dev/deb-control.5.en.html
[4] https://wiki.debian.org/PackageTransition
[5] https://salsa.debian.org/mariadb-team/mariadb-10.5/-/commit/7bda76751754145a66239c8f9fd343d47fd1c1b0
[6] https://salsa.debian.org/mariadb-team/mariadb-10.5/-/commit/49ecd78307e0ddc65ccb7464321e612e423ddce3

Reply to: