Pin protobuf packages (#3715)

* Pin protobuf packages

It happened in the past that I ran with the wrong protobuf version
installed locally, and apparently there is even still some file wrong in
splithttp. Fix this issue once and for all.

* bump protobuf packages

* Revert "bump protobuf packages"

This reverts commit 7a3509346a.

* Revert "Revert "bump protobuf packages""

This reverts commit bb79707d15.

* fix deprecated grpc usage
This commit is contained in:
mmmray 2024-08-22 16:18:36 +02:00 committed by GitHub
parent 790f908f0b
commit 2be03c56cb
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
77 changed files with 544 additions and 559 deletions

View file

@ -34,7 +34,7 @@ func (c *gRPCServiceClient) TunCustomName(ctx context.Context, name, tun string,
if err != nil {
return nil, err
}
x := &gRPCServiceTunClient{stream}
x := &grpc.GenericClientStream[Hunk, Hunk]{ClientStream: stream}
return x, nil
}
@ -43,7 +43,7 @@ func (c *gRPCServiceClient) TunMultiCustomName(ctx context.Context, name, tunMul
if err != nil {
return nil, err
}
x := &gRPCServiceTunMultiClient{stream}
x := &grpc.GenericClientStream[MultiHunk, MultiHunk]{ClientStream: stream}
return x, nil
}

View file

@ -1,6 +1,6 @@
// Code generated by protoc-gen-go. DO NOT EDIT.
// versions:
// protoc-gen-go v1.34.1
// protoc-gen-go v1.34.2
// protoc v5.27.0
// source: transport/internet/grpc/encoding/stream.proto
@ -161,7 +161,7 @@ func file_transport_internet_grpc_encoding_stream_proto_rawDescGZIP() []byte {
}
var file_transport_internet_grpc_encoding_stream_proto_msgTypes = make([]protoimpl.MessageInfo, 2)
var file_transport_internet_grpc_encoding_stream_proto_goTypes = []interface{}{
var file_transport_internet_grpc_encoding_stream_proto_goTypes = []any{
(*Hunk)(nil), // 0: xray.transport.internet.grpc.encoding.Hunk
(*MultiHunk)(nil), // 1: xray.transport.internet.grpc.encoding.MultiHunk
}
@ -183,7 +183,7 @@ func file_transport_internet_grpc_encoding_stream_proto_init() {
return
}
if !protoimpl.UnsafeEnabled {
file_transport_internet_grpc_encoding_stream_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} {
file_transport_internet_grpc_encoding_stream_proto_msgTypes[0].Exporter = func(v any, i int) any {
switch v := v.(*Hunk); i {
case 0:
return &v.state
@ -195,7 +195,7 @@ func file_transport_internet_grpc_encoding_stream_proto_init() {
return nil
}
}
file_transport_internet_grpc_encoding_stream_proto_msgTypes[1].Exporter = func(v interface{}, i int) interface{} {
file_transport_internet_grpc_encoding_stream_proto_msgTypes[1].Exporter = func(v any, i int) any {
switch v := v.(*MultiHunk); i {
case 0:
return &v.state

View file

@ -1,6 +1,6 @@
// Code generated by protoc-gen-go-grpc. DO NOT EDIT.
// versions:
// - protoc-gen-go-grpc v1.3.0
// - protoc-gen-go-grpc v1.5.1
// - protoc v5.27.0
// source: transport/internet/grpc/encoding/stream.proto
@ -15,8 +15,8 @@ import (
// This is a compile-time assertion to ensure that this generated file
// is compatible with the grpc package it is being compiled against.
// Requires gRPC-Go v1.32.0 or later.
const _ = grpc.SupportPackageIsVersion7
// Requires gRPC-Go v1.64.0 or later.
const _ = grpc.SupportPackageIsVersion9
const (
GRPCService_Tun_FullMethodName = "/xray.transport.internet.grpc.encoding.GRPCService/Tun"
@ -27,8 +27,8 @@ const (
//
// For semantics around ctx use and closing/ending streaming RPCs, please refer to https://pkg.go.dev/google.golang.org/grpc/?tab=doc#ClientConn.NewStream.
type GRPCServiceClient interface {
Tun(ctx context.Context, opts ...grpc.CallOption) (GRPCService_TunClient, error)
TunMulti(ctx context.Context, opts ...grpc.CallOption) (GRPCService_TunMultiClient, error)
Tun(ctx context.Context, opts ...grpc.CallOption) (grpc.BidiStreamingClient[Hunk, Hunk], error)
TunMulti(ctx context.Context, opts ...grpc.CallOption) (grpc.BidiStreamingClient[MultiHunk, MultiHunk], error)
}
type gRPCServiceClient struct {
@ -39,88 +39,56 @@ func NewGRPCServiceClient(cc grpc.ClientConnInterface) GRPCServiceClient {
return &gRPCServiceClient{cc}
}
func (c *gRPCServiceClient) Tun(ctx context.Context, opts ...grpc.CallOption) (GRPCService_TunClient, error) {
stream, err := c.cc.NewStream(ctx, &GRPCService_ServiceDesc.Streams[0], GRPCService_Tun_FullMethodName, opts...)
func (c *gRPCServiceClient) Tun(ctx context.Context, opts ...grpc.CallOption) (grpc.BidiStreamingClient[Hunk, Hunk], error) {
cOpts := append([]grpc.CallOption{grpc.StaticMethod()}, opts...)
stream, err := c.cc.NewStream(ctx, &GRPCService_ServiceDesc.Streams[0], GRPCService_Tun_FullMethodName, cOpts...)
if err != nil {
return nil, err
}
x := &gRPCServiceTunClient{stream}
x := &grpc.GenericClientStream[Hunk, Hunk]{ClientStream: stream}
return x, nil
}
type GRPCService_TunClient interface {
Send(*Hunk) error
Recv() (*Hunk, error)
grpc.ClientStream
}
// This type alias is provided for backwards compatibility with existing code that references the prior non-generic stream type by name.
type GRPCService_TunClient = grpc.BidiStreamingClient[Hunk, Hunk]
type gRPCServiceTunClient struct {
grpc.ClientStream
}
func (x *gRPCServiceTunClient) Send(m *Hunk) error {
return x.ClientStream.SendMsg(m)
}
func (x *gRPCServiceTunClient) Recv() (*Hunk, error) {
m := new(Hunk)
if err := x.ClientStream.RecvMsg(m); err != nil {
return nil, err
}
return m, nil
}
func (c *gRPCServiceClient) TunMulti(ctx context.Context, opts ...grpc.CallOption) (GRPCService_TunMultiClient, error) {
stream, err := c.cc.NewStream(ctx, &GRPCService_ServiceDesc.Streams[1], GRPCService_TunMulti_FullMethodName, opts...)
func (c *gRPCServiceClient) TunMulti(ctx context.Context, opts ...grpc.CallOption) (grpc.BidiStreamingClient[MultiHunk, MultiHunk], error) {
cOpts := append([]grpc.CallOption{grpc.StaticMethod()}, opts...)
stream, err := c.cc.NewStream(ctx, &GRPCService_ServiceDesc.Streams[1], GRPCService_TunMulti_FullMethodName, cOpts...)
if err != nil {
return nil, err
}
x := &gRPCServiceTunMultiClient{stream}
x := &grpc.GenericClientStream[MultiHunk, MultiHunk]{ClientStream: stream}
return x, nil
}
type GRPCService_TunMultiClient interface {
Send(*MultiHunk) error
Recv() (*MultiHunk, error)
grpc.ClientStream
}
type gRPCServiceTunMultiClient struct {
grpc.ClientStream
}
func (x *gRPCServiceTunMultiClient) Send(m *MultiHunk) error {
return x.ClientStream.SendMsg(m)
}
func (x *gRPCServiceTunMultiClient) Recv() (*MultiHunk, error) {
m := new(MultiHunk)
if err := x.ClientStream.RecvMsg(m); err != nil {
return nil, err
}
return m, nil
}
// This type alias is provided for backwards compatibility with existing code that references the prior non-generic stream type by name.
type GRPCService_TunMultiClient = grpc.BidiStreamingClient[MultiHunk, MultiHunk]
// GRPCServiceServer is the server API for GRPCService service.
// All implementations must embed UnimplementedGRPCServiceServer
// for forward compatibility
// for forward compatibility.
type GRPCServiceServer interface {
Tun(GRPCService_TunServer) error
TunMulti(GRPCService_TunMultiServer) error
Tun(grpc.BidiStreamingServer[Hunk, Hunk]) error
TunMulti(grpc.BidiStreamingServer[MultiHunk, MultiHunk]) error
mustEmbedUnimplementedGRPCServiceServer()
}
// UnimplementedGRPCServiceServer must be embedded to have forward compatible implementations.
type UnimplementedGRPCServiceServer struct {
}
// UnimplementedGRPCServiceServer must be embedded to have
// forward compatible implementations.
//
// NOTE: this should be embedded by value instead of pointer to avoid a nil
// pointer dereference when methods are called.
type UnimplementedGRPCServiceServer struct{}
func (UnimplementedGRPCServiceServer) Tun(GRPCService_TunServer) error {
func (UnimplementedGRPCServiceServer) Tun(grpc.BidiStreamingServer[Hunk, Hunk]) error {
return status.Errorf(codes.Unimplemented, "method Tun not implemented")
}
func (UnimplementedGRPCServiceServer) TunMulti(GRPCService_TunMultiServer) error {
func (UnimplementedGRPCServiceServer) TunMulti(grpc.BidiStreamingServer[MultiHunk, MultiHunk]) error {
return status.Errorf(codes.Unimplemented, "method TunMulti not implemented")
}
func (UnimplementedGRPCServiceServer) mustEmbedUnimplementedGRPCServiceServer() {}
func (UnimplementedGRPCServiceServer) testEmbeddedByValue() {}
// UnsafeGRPCServiceServer may be embedded to opt out of forward compatibility for this service.
// Use of this interface is not recommended, as added methods to GRPCServiceServer will
@ -130,60 +98,29 @@ type UnsafeGRPCServiceServer interface {
}
func RegisterGRPCServiceServer(s grpc.ServiceRegistrar, srv GRPCServiceServer) {
// If the following call pancis, it indicates UnimplementedGRPCServiceServer was
// embedded by pointer and is nil. This will cause panics if an
// unimplemented method is ever invoked, so we test this at initialization
// time to prevent it from happening at runtime later due to I/O.
if t, ok := srv.(interface{ testEmbeddedByValue() }); ok {
t.testEmbeddedByValue()
}
s.RegisterService(&GRPCService_ServiceDesc, srv)
}
func _GRPCService_Tun_Handler(srv interface{}, stream grpc.ServerStream) error {
return srv.(GRPCServiceServer).Tun(&gRPCServiceTunServer{stream})
return srv.(GRPCServiceServer).Tun(&grpc.GenericServerStream[Hunk, Hunk]{ServerStream: stream})
}
type GRPCService_TunServer interface {
Send(*Hunk) error
Recv() (*Hunk, error)
grpc.ServerStream
}
type gRPCServiceTunServer struct {
grpc.ServerStream
}
func (x *gRPCServiceTunServer) Send(m *Hunk) error {
return x.ServerStream.SendMsg(m)
}
func (x *gRPCServiceTunServer) Recv() (*Hunk, error) {
m := new(Hunk)
if err := x.ServerStream.RecvMsg(m); err != nil {
return nil, err
}
return m, nil
}
// This type alias is provided for backwards compatibility with existing code that references the prior non-generic stream type by name.
type GRPCService_TunServer = grpc.BidiStreamingServer[Hunk, Hunk]
func _GRPCService_TunMulti_Handler(srv interface{}, stream grpc.ServerStream) error {
return srv.(GRPCServiceServer).TunMulti(&gRPCServiceTunMultiServer{stream})
return srv.(GRPCServiceServer).TunMulti(&grpc.GenericServerStream[MultiHunk, MultiHunk]{ServerStream: stream})
}
type GRPCService_TunMultiServer interface {
Send(*MultiHunk) error
Recv() (*MultiHunk, error)
grpc.ServerStream
}
type gRPCServiceTunMultiServer struct {
grpc.ServerStream
}
func (x *gRPCServiceTunMultiServer) Send(m *MultiHunk) error {
return x.ServerStream.SendMsg(m)
}
func (x *gRPCServiceTunMultiServer) Recv() (*MultiHunk, error) {
m := new(MultiHunk)
if err := x.ServerStream.RecvMsg(m); err != nil {
return nil, err
}
return m, nil
}
// This type alias is provided for backwards compatibility with existing code that references the prior non-generic stream type by name.
type GRPCService_TunMultiServer = grpc.BidiStreamingServer[MultiHunk, MultiHunk]
// GRPCService_ServiceDesc is the grpc.ServiceDesc for GRPCService service.
// It's only intended for direct use with grpc.RegisterService,