Re: golang-github-grpc-ecosystem-grpc-gateway and v2 - should I make a new binary or use experimental/transition?
On Sun, May 30, 2021 at 1:40 pm, Shengjing Zhu <zhsj@debian.org> wrote:
Hi,
On Sun, May 30, 2021 at 1:38 AM Pirate Praveen
<praveen@onenetbeyond.org> wrote:
Hi,
I need github.com/grpc-ecosystem/grpc-gateway/v2 for a dependency of
gitlab (spamcheck)
It has 3 reverse build dependencies. Should I do it as a normal
transition using same package names or create a new binary package?
Using build-rdeps from devscripts.
$ build-rdeps golang-github-grpc-ecosystem-grpc-gateway-dev
Reverse Build-depends in main:
------------------------------
consul
crowdsec
docker-libkv
docker.io
etcd
flannel
gitlab-ci-multi-runner
golang-github-census-instrumentation-opencensus-proto
golang-github-containers-buildah
golang-github-containers-common
golang-github-containers-image
golang-github-docker-leadership
golang-github-fsouza-go-dockerclient
golang-github-openshift-imagebuilder
golang-github-optiopay-kafka
golang-github-samalba-dockerclient
golang-github-tonistiigi-fsutil
golang-github-xordataexchange-crypt
libpod
nomad
nomad-driver-lxc
nomad-driver-podman
prometheus
singularity-container
skopeo
vip-manager
golang-github-grpc-ecosystem-grpc-gateway-dev is used by some
important packages. Have you rebuilt the reverse? If all goes well
with /v2 (with patch or w/o patch), then you may don't need a new
source/binary package.
Build fails with
# github.com/grpc-ecosystem/grpc-gateway/runtime
src/github.com/grpc-ecosystem/grpc-gateway/runtime/handler.go:67:31:
impossible type assertion:
*httpbody.HttpBody does not implement protoreflect.ProtoMessage
(missing ProtoReflect method)
src/github.com/grpc-ecosystem/grpc-gateway/runtime/handler.go:199:34:
cannot use st.Proto() (type
*"google.golang.org/genproto/googleapis/rpc/status".Status) as type
protoreflect.ProtoMessage in map value:
*"google.golang.org/genproto/googleapis/rpc/status".Status does not
implement protoreflect.ProtoMessage (missing ProtoReflect method)
src/github.com/grpc-ecosystem/grpc-gateway/runtime/query.go:323:7:
cannot use fm (type *field_mask.FieldMask) as type
protoreflect.ProtoMessage in assignment:
*field_mask.FieldMask does not implement protoreflect.ProtoMessage
(missing ProtoReflect method)
and go.mod has google.golang.org/genproto
v0.0.0-20210426193834-eac7f76ac494
golang-google-genproto will need an update as well.
So this update looks like much more important packages will need to be
updated along with it.
Since spamcheck provides generated *_pb.rb files in the repo and gitlab
is already in contrib, I will upload spamcheck to contrib and work on
this update in a lower priority path.
PS, if you want to make a new binary package with a new import path,
it makes more sense to make a source package too.
I have pushed the changes to debian/experimental branch for now.
--
Shengjing Zhu
Reply to: