chirpstack-api icon indicating copy to clipboard operation
chirpstack-api copied to clipboard

Wish list: Update API and associated projects to Go protobuf V2

Open bconway opened this issue 4 years ago • 2 comments

  • [ ] I have searched the issues of this repository and believe that this is not a duplicate.

Summary

Go protobuf V2 (https://pkg.go.dev/google.golang.org/protobuf) was released a while ago. It would be nice to have the API updated to V2 to better unify code bases that are integrated with ChirpStack and permanently get rid of those deprecated linter warnings.

What is the use-case?

To make life easier for projects that integrate using chirpstack-api. The current integration messages, for example, do not implement the proto reflect methods necessary to use the V2 protobuf API.

Implementation description

Presumably this would require a significant search-and-replace of this repo and all associated projects. I imagine there would be limited changes to logic, if any.

Can you implement this by yourself and make a pull request?

Maybe, kinda busy. ;)

bconway avatar Feb 03 '21 18:02 bconway

Yes, I think this is a good idea :)

From the chirpstack-api side, I think there might be no find and replace needed? I think if we update to the new Go Protobuf code generator, then this should take care of generating the new Go code. Then after updating the other components, I expect that we need to change to the new protobuf package (for which we might need to do a find & replace).

brocaar avatar Feb 04 '21 16:02 brocaar

Yes, good point. There is a V2 version of the grpc-gateway generator, as well. My own projects are using:

go get google.golang.org/protobuf/cmd/protoc-gen-go \
google.golang.org/grpc/cmd/protoc-gen-go-grpc \
github.com/grpc-ecosystem/grpc-gateway/v2/protoc-gen-grpc-gateway \
github.com/grpc-ecosystem/grpc-gateway/v2/protoc-gen-openapiv2

in their build process.

bconway avatar Feb 04 '21 16:02 bconway

Long since resolved in v4.

bconway avatar Nov 18 '23 22:11 bconway