On 26/02/2025 00:10, Guillem Jover wrote:
> On Tue, 2025-02-25 at 08:14:52 -0800, Otto Kekäläinen wrote:
>> $ check_for_missing_breaks_replaces.py -o
>> ${WORKING_DIR}/missing_breaks.xml --changes-file
>> ${WORKING_DIR}/*.changes
>> [ERROR] Missing Breaks/Replaces found
>> [ERROR] foo conflicts with bar files: {'/usr/share/man/man8/example.8.gz'}
> …and this advice, are not ideal, and can lead to potentially worse
> problems.
>
> I think the check should be renamed to something like
> check-file-conflicts (probably with compat names for existing repos
> using the old name). And the advice should probably point to a Wiki
> page or similar, where the various cases can be explained, and how to
> solve them. For example for conflicting programs with different
> interfaces the advice would incur in a policy violation, for conflicts
> between a current shared library SOVERSION and the one in the archive
> with a lower SOVERSION that makes upgrades and transitions harder,
> etc.

I suppose there are two main situations:

1) package includes the offending file(s) by mistake, in that case the
fix is to stop distributing the file (and NOT to use Breaks/Replaces)

2) package includes the file(s) for good reason, in that case it's as
Guillem said above

Maybe the error message could clarify for situation 1, something like:

> [ERROR] You might want to rename/remove the offending files if that's
suitable

For situation 2, maybe point to Debian Policy:
https://www.debian.org/doc/debian-policy/ch-relationships.html, in
particular sections 7.3, 7.4 and 7.6? Unless there's a better piece of
doc on this topic?

Best,
Arnaud

Reply via email to