Hi all package maintainers who use Salsa CI,
Salsa CI has had for many years the job 'missing-breaks' that
complements piuparts by checking that the files a package introduce
don't clash with files shipped by any other package in the
distribution without having proper Breaks/Replaces in the
`debian/control` file. This job works well, being quick to run and has
had zero false positives in our experience.
We plan to enable this job next weekend, but allow the job to fail. In
a month from now we plan to switch it to enforcing mode so that this
job must pass for the pipeline to pass.
If you have any comments, feel free to reply to this email thread or
take part in the discussion at
https://salsa.debian.org/salsa-ci-team/pipeline/-/merge_requests/578
## Schedule
1. March 1st: Enable this job by default, but in allow_failure mode,
making Salsa CI yellow on packages that fail on this job
2. March 31st: Remove the allow_failure mode, potentially making the
Salsa CI red for packages that fail on this job
## Error examples
Example output when end users run into this category of issues:
$ apt upgrade
...
Unpacking example (from .../foo_1.0-1_all.deb) ...
dpkg: error processing /var/cache/apt/archives/foo_1.0-1_all.deb (--unpack):
trying to overwrite '/usr/share/man/man8/example.8.gz', which is also
in package bar 2.2
Example output from the job on failure:
$ 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'}
PS. If you are interested in many smaller improvements soon landing in
Salsa CI, you are welcome to read and comment (and review) the 32
currently open MRs at
https://salsa.debian.org/salsa-ci-team/pipeline/-/merge_requests
--- SoupGate-Win32 v1.05
* Origin: fsxNet Usenet Gateway (21:1/5)