Bug#1109655: bookworm -> trixie upgrade issues with protobuf dependencies

2025-07-28 Thread Jérémy Lal
Le lun. 28 juil. 2025, 12:02, Reinhard Tartler  a
écrit :

>
>
> On Mon, Jul 28, 2025 at 10:51 AM Jérémy Lal  wrote:
>
>>
>>
>> Le lun. 28 juil. 2025, 10:03, Reinhard Tartler  a
>> écrit :
>>
>>> I believe Simon is on the right track, but I see that the patches
>>> completely remove the "Conflicts" relationship. Given that the following
>>> package do have file conflicts, I think that change is incomplete:
>>>
>>>
>>> https://packages.debian.org/bookworm/all/golang-github-golang-protobuf-1-3-dev/filelist
>>>
>>> https://packages.debian.org/trixie/all/golang-github-golang-protobuf-1-5-dev/filelist
>>>
>>> I am thinking that the "Conflicts" relationship needs to remain, but
>>> needs to be accompanied with a mutual "Breaks" relationship.
>>>
>>
>>
>> I do not believe this is what Debian policy explains, in case of files
>> conflict.
>>
>>
> Quoting from
> https://www.debian.org/doc/debian-policy/ch-relationships.html#conflicting-binary-packages-conflicts
> :
>
>
>Conflicts should be used
>-
>
>   when two packages provide the same file and will continue to do so,
>
> The filelist links above indicate that this is indeed the case in this
> situation.
>
> Jeremy, can you please elaborate what I might be overlooking?
>

Well, i was seeing 1-5 as eventually replacing 1-3, but if both are meant
to stay they should indeed conflict.

>
> Best,
>
>


Bug#1109655: bookworm -> trixie upgrade issues with protobuf dependencies

2025-07-28 Thread Reinhard Tartler
On Mon, Jul 28, 2025 at 10:51 AM Jérémy Lal  wrote:

>
>
> Le lun. 28 juil. 2025, 10:03, Reinhard Tartler  a
> écrit :
>
>> I believe Simon is on the right track, but I see that the patches
>> completely remove the "Conflicts" relationship. Given that the following
>> package do have file conflicts, I think that change is incomplete:
>>
>>
>> https://packages.debian.org/bookworm/all/golang-github-golang-protobuf-1-3-dev/filelist
>>
>> https://packages.debian.org/trixie/all/golang-github-golang-protobuf-1-5-dev/filelist
>>
>> I am thinking that the "Conflicts" relationship needs to remain, but
>> needs to be accompanied with a mutual "Breaks" relationship.
>>
>
>
> I do not believe this is what Debian policy explains, in case of files
> conflict.
>
>
Quoting from
https://www.debian.org/doc/debian-policy/ch-relationships.html#conflicting-binary-packages-conflicts
:


   Conflicts should be used
   -

  when two packages provide the same file and will continue to do so,

The filelist links above indicate that this is indeed the case in this
situation.

Jeremy, can you please elaborate what I might be overlooking?

Best,


Bug#1109655: bookworm -> trixie upgrade issues with protobuf dependencies

2025-07-28 Thread Jérémy Lal
Le lun. 28 juil. 2025, 10:03, Reinhard Tartler  a
écrit :

> I believe Simon is on the right track, but I see that the patches
> completely remove the "Conflicts" relationship. Given that the following
> package do have file conflicts, I think that change is incomplete:
>
>
> https://packages.debian.org/bookworm/all/golang-github-golang-protobuf-1-3-dev/filelist
>
> https://packages.debian.org/trixie/all/golang-github-golang-protobuf-1-5-dev/filelist
>
> I am thinking that the "Conflicts" relationship needs to remain, but needs
> to be accompanied with a mutual "Breaks" relationship.
>


I do not believe this is what Debian policy explains, in case of files
conflict.

Additionally, I suggest modifying the golang-github-golang-protobuf-1-5-dev
> package to declare a "Replaces" relationship against the package
> golang-github-golang-protobuf-1-3-dev. The thinking here is to help apt to
> prefer packages that do work with protobuf 1.5 in favor of those that don't.
>
> In general, Matthias is correct and protobuf 1.3 and 1.5 are known to
> cause runtime crashes. As such, packages that still require 1.3 need to be
> updated or removed from testing.
>
> -rt
>
> On Mon, Jul 21, 2025 at 10:39 AM Simon Josefsson 
> wrote:
>
>> So are these the right patches?  It seems both
>> golang-github-golang-protobuf-1-3 and golang-github-golang-protobuf-1-5
>> uses Conflicts and needs to be modified.  The first patch below is for
>> 1-3 and the last one for 1-5.  I have limited time so if anyone has time
>> to test, revise patches and do the upload, please don't wait for me.
>>
>> /Simon
>>
>
>
> --
> regards,
> Reinhard
>


Bug#1109655: bookworm -> trixie upgrade issues with protobuf dependencies

2025-07-28 Thread Reinhard Tartler
I believe Simon is on the right track, but I see that the patches
completely remove the "Conflicts" relationship. Given that the following
package do have file conflicts, I think that change is incomplete:

https://packages.debian.org/bookworm/all/golang-github-golang-protobuf-1-3-dev/filelist
https://packages.debian.org/trixie/all/golang-github-golang-protobuf-1-5-dev/filelist

I am thinking that the "Conflicts" relationship needs to remain, but needs
to be accompanied with a mutual "Breaks" relationship. Additionally, I
suggest modifying the golang-github-golang-protobuf-1-5-dev package to
declare a "Replaces" relationship against the package
golang-github-golang-protobuf-1-3-dev. The thinking here is to help apt to
prefer packages that do work with protobuf 1.5 in favor of those that don't.

In general, Matthias is correct and protobuf 1.3 and 1.5 are known to cause
runtime crashes. As such, packages that still require 1.3 need to be
updated or removed from testing.

-rt

On Mon, Jul 21, 2025 at 10:39 AM Simon Josefsson 
wrote:

> So are these the right patches?  It seems both
> golang-github-golang-protobuf-1-3 and golang-github-golang-protobuf-1-5
> uses Conflicts and needs to be modified.  The first patch below is for
> 1-3 and the last one for 1-5.  I have limited time so if anyone has time
> to test, revise patches and do the upload, please don't wait for me.
>
> /Simon
>


-- 
regards,
Reinhard


Bug#1109655: bookworm -> trixie upgrade issues with protobuf dependencies

2025-07-21 Thread Simon Josefsson
So are these the right patches?  It seems both
golang-github-golang-protobuf-1-3 and golang-github-golang-protobuf-1-5
uses Conflicts and needs to be modified.  The first patch below is for
1-3 and the last one for 1-5.  I have limited time so if anyone has time
to test, revise patches and do the upload, please don't wait for me.

/Simon
From f54c8aee95597558491fbbbff6fe87d406ff9722 Mon Sep 17 00:00:00 2001
From: Simon Josefsson 
Date: Mon, 21 Jul 2025 10:33:31 +0200
Subject: [PATCH] Use Breaks: instead of Conflicts:.

---
 debian/control | 8 
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/debian/control b/debian/control
index ce48496..f98eae7 100644
--- a/debian/control
+++ b/debian/control
@@ -31,8 +31,8 @@ Package: golang-github-golang-protobuf-1-3-dev
 Architecture: all
 Multi-Arch: foreign
 Depends: ${misc:Depends},
-Conflicts: golang-github-golang-protobuf-1-5-dev,
-Breaks: golang-goprotobuf-dev (<< 1.3.5-1~),
+Breaks: golang-github-golang-protobuf-1-5-dev,
+golang-goprotobuf-dev (<< 1.3.5-1~),
 Replaces: golang-goprotobuf-dev (<< 1.3.5-1~),
 Description: Go support for protocol buffers (version v1.3.x)
  This module (github.com/golang/protobuf) contains Go bindings for protocol
@@ -50,8 +50,8 @@ Depends: libprotobuf-dev,
  ${misc:Depends},
  ${shlibs:Depends},
 Breaks: golang-goprotobuf-dev (<< 1.3.5-1~),
-Conflicts: protoc-gen-go,
-   protoc-gen-go-1-5,
+protoc-gen-go,
+protoc-gen-go-1-5,
 Replaces: golang-goprotobuf-dev (<< 1.3.5-1~),
 Description: Go plugin for protobuf compiler (version v1.3.x)
  This protobuf compiler plugin is from github.com/golang/protobuf module.
-- 
2.50.0

From 65b600a138ff6b4e7ef9db7b8158dcd6865ccf99 Mon Sep 17 00:00:00 2001
From: Simon Josefsson 
Date: Mon, 21 Jul 2025 10:32:25 +0200
Subject: [PATCH] Use Breaks/Replaces instead of Conflicts.

---
 debian/control | 15 ++-
 1 file changed, 10 insertions(+), 5 deletions(-)

diff --git a/debian/control b/debian/control
index 202cb2d..c803b48 100644
--- a/debian/control
+++ b/debian/control
@@ -22,8 +22,10 @@ Multi-Arch: foreign
 Depends: golang-github-google-go-cmp-dev (>= 0.5.5),
  golang-google-protobuf-dev (>= 1.33.0),
  ${misc:Depends},
-Conflicts: golang-github-golang-protobuf-1-3-dev,
-   golang-goprotobuf-dev,
+Breaks: golang-github-golang-protobuf-1-3-dev,
+golang-goprotobuf-dev,
+Replaces: golang-github-golang-protobuf-1-3-dev,
+  golang-goprotobuf-dev,
 Description: Go support for protocol buffers (version v1.5.x)
  This module (github.com/golang/protobuf) contains Go bindings for protocol
  buffers.
@@ -39,9 +41,12 @@ Depends: libprotobuf-dev,
  protobuf-compiler,
  ${misc:Depends},
  ${shlibs:Depends},
-Conflicts: golang-goprotobuf-dev,
-   protoc-gen-go,
-   protoc-gen-go-1-3,
+Breaks: golang-goprotobuf-dev,
+protoc-gen-go,
+protoc-gen-go-1-3,
+Replaces: golang-goprotobuf-dev,
+  protoc-gen-go,
+  protoc-gen-go-1-3,
 Description: Go plugin for protobuf compiler (version v1.5.x)
  This protobuf compiler plugin is from github.com/golang/protobuf module,
  which is deprecated.
-- 
2.50.0



signature.asc
Description: PGP signature