Hi Reinhard, * Reinhard Tartler <siretart@gmail.com> [2025-07-28 18:55]:
So, I've locally build a new package with https://salsa.debian.org/go-team/packages/golang-github-golang-protobuf-1-5/-/commit/2739999e3baf72f7e534fccc40918c8d5ce94229 included, and it seems that with your test case above, no packages are held back and the upgrade passes. My understanding is that the "Replaces" relationship give apt the hint that it is fine to remove golang-github-golang-protobuf-1-3-dev, which is the intended outcome.
Can you explain how you tested this? I tried to reproduce it like this: mmdebstrap --chrooted-customize-hook="set -x ; apt -y install golang-github-denverdino-aliyungo-dev \ && sed -e s/bookworm/trixie/ -i /etc/apt/sources.list && apt update \ && sed -i -e 's/Package: golang-github-golang-protobuf-1-5-dev/&\nBreaks: golang-github-golang-protobuf-1-3-dev (<< 1.5)\nReplaces: golang-github-golang-protobuf-1-3-dev (<< 1.5)/' \ -e 's/Package: protoc-gen-go-1-5/&\nBreaks: protoc-gen-go-1-3 (<< 1.5)\nReplaces: protoc-gen-go-1-3 (<< 1.5)/' \ /var/lib/apt/lists/deb.debian.org_debian_dists_trixie_main_binary-amd64_Packages \ && apt dist-upgrade" bookworm /dev/null But still see: The following packages have been kept back: golang-github-denverdino-aliyungo-dev Did I miss anything?Also note that marking 1-5 replace 1-3 would/could make golang-gopkg-rethinkdb-rethinkdb-go.v6 FTBFS as I wrote in 1109513#30.
In fact, all of the packages of the cloned bug no longer reference golang-github-golang-protobuf-1-3 at all. However, it is very easy to end up with a system that has golang-github-golang-protobuf-1-3-dev installed in bookworm, and we would rather have apt uninstall it for trixie ugprades in favor of golang-github-golang-protobuf-1-5.
I think the only working way is to finish the 1-5 transition and make 1-3 a transitional dummy package as per
https://wiki.debian.org/RenamingPackages and as outlined in 1109513#25. Cheers Jochen
Attachment:
signature.asc
Description: PGP signature