On Fri, Jun 7, 2024 at 3:22 AM Shengjing Zhu <z...@debian.org> wrote:
> These apiv1 packages are going to cause a mess as well. Because the > old and new versions are the same module, they will conflict with each > other, just like the golang-github-golang-protobuf-1-{3,5}-dev > packages. An application can only use one at a time. > > Moreover, if a package is compatible with > golang-github-golang-protobuf-1-3-dev as runtime, it should (in > theory) be compatible with golang-github-golang-protobuf-1-5-dev. > However if a package can use apiv1 pb.go files, it can't use apiv2 > pb.go files, which looks worse then the runtime dependencies. > Okay, so how about we try to clean-out the golang-github-golang-protobuf-1-3-dev packages from sid by updating existing packages to build against golang-github-golang-protobuf-1-5-dev instead? I've managed to get golang-google-grpc in sid to build against golang/protobuf@v1.5 [1]. Moreover, I've managed to get notary, gnostic and docker.io (all in sid) rebuilt on v1.5. I've verified that in all cases, we end up with a dependency on golang-google-protobuf-dev. This is expected, as golang/protobuf@v1.5 exposes the APIv1, but essentially produces forwarding code that uses the code from APIv2 in the golang-google-protobuf. Maybe we should update the package description of the to golang-github-golang-protobuf-1-5 package capture this point (better), right now I find it a bit misleading. I expect this to cause some packages to break, because protoc-gen-go-1-5 is implemented as a "thin wrapper" around protoc-gen-go from the golang-google-protobuf package. This change was introduced in golang/protbuf@v1.4.0 [2] and causes some subtle behavioral changes. For instance, in the GRPC package I noticed that the new code generator is sensitive to non-existing include paths. in v1.3, you got away with a warning, I had to update the patch to avoid a compilation failure. There may be additional subtleties. However, this fallout should be somewhat manageable -- I was able to get to docker.io fairly quickly. Any concerns or thoughts with my going ahead and updating dependencies to avoid golang-github-golang-protobuf-1-3-dev so that we can hopefully remove src:golang-github-golang-protobuf-1-3 from sid? [1] https://salsa.debian.org/go-team/packages/golang-google-grpc/-/merge_requests/2 [2] https://github.com/golang/protobuf/releases/tag/v1.4.0#v1.4-generated-code -- regards, Reinhard