fbcrawl-colly 0.2.1 → 1.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/.gitignore +0 -2
- data/Dockerfile +14 -0
- data/Gemfile.lock +8 -7
- data/README.md +1 -1
- data/fbcrawl-colly.gemspec +2 -6
- data/fbcrawl.proto +78 -3
- data/{fbcolly → fbcrawl}/fbcolly.go +153 -80
- data/fbcrawl/pb/fbcrawl.pb.go +1647 -0
- data/fbcrawl/pb/fbcrawl_grpc.pb.go +380 -0
- data/go.mod +5 -11
- data/go.sum +21 -10
- data/lib/fbcrawl-colly.rb +1 -4
- data/lib/fbcrawl_colly.rb +5 -0
- data/lib/fbcrawl_colly/client.rb +46 -0
- data/lib/fbcrawl_colly/version.rb +1 -1
- data/lib/pb/fbcrawl_pb.rb +117 -0
- data/lib/pb/fbcrawl_services_pb.rb +31 -0
- data/main.go +76 -71
- metadata +14 -26
- data/ext/fbcrawl_colly/.gitignore +0 -2
- data/ext/fbcrawl_colly/Makefile +0 -6
- data/ext/fbcrawl_colly/extconf.rb +0 -6
- data/lib/fbcrawl_colly/colly.rb +0 -50
- data/lib/fbcrawl_colly/ffi.rb +0 -17
@@ -0,0 +1,380 @@
|
|
1
|
+
// Code generated by protoc-gen-go-grpc. DO NOT EDIT.
|
2
|
+
|
3
|
+
package pb
|
4
|
+
|
5
|
+
import (
|
6
|
+
context "context"
|
7
|
+
grpc "google.golang.org/grpc"
|
8
|
+
codes "google.golang.org/grpc/codes"
|
9
|
+
status "google.golang.org/grpc/status"
|
10
|
+
)
|
11
|
+
|
12
|
+
// This is a compile-time assertion to ensure that this generated file
|
13
|
+
// is compatible with the grpc package it is being compiled against.
|
14
|
+
const _ = grpc.SupportPackageIsVersion6
|
15
|
+
|
16
|
+
// GrpcClient is the client API for Grpc service.
|
17
|
+
//
|
18
|
+
// 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.
|
19
|
+
type GrpcClient interface {
|
20
|
+
// Sends a greeting
|
21
|
+
Init(ctx context.Context, in *Empty, opts ...grpc.CallOption) (*Pointer, error)
|
22
|
+
FreeColly(ctx context.Context, in *Pointer, opts ...grpc.CallOption) (*Empty, error)
|
23
|
+
Login(ctx context.Context, in *LoginRequest, opts ...grpc.CallOption) (*LoginResponse, error)
|
24
|
+
LoginWithCookies(ctx context.Context, in *LoginWithCookiesRequest, opts ...grpc.CallOption) (*Empty, error)
|
25
|
+
FetchGroupInfo(ctx context.Context, in *FetchGroupInfoRequest, opts ...grpc.CallOption) (*FacebookGroup, error)
|
26
|
+
FetchGroupFeed(ctx context.Context, in *FetchGroupFeedRequest, opts ...grpc.CallOption) (*FacebookPostList, error)
|
27
|
+
FetchPost(ctx context.Context, in *FetchPostRequest, opts ...grpc.CallOption) (*FacebookPost, error)
|
28
|
+
FetchContentImages(ctx context.Context, in *FetchContentImagesRequest, opts ...grpc.CallOption) (*FacebookImageList, error)
|
29
|
+
FetchImageUrl(ctx context.Context, in *FetchImageUrlRequest, opts ...grpc.CallOption) (*FacebookImage, error)
|
30
|
+
}
|
31
|
+
|
32
|
+
type grpcClient struct {
|
33
|
+
cc grpc.ClientConnInterface
|
34
|
+
}
|
35
|
+
|
36
|
+
func NewGrpcClient(cc grpc.ClientConnInterface) GrpcClient {
|
37
|
+
return &grpcClient{cc}
|
38
|
+
}
|
39
|
+
|
40
|
+
func (c *grpcClient) Init(ctx context.Context, in *Empty, opts ...grpc.CallOption) (*Pointer, error) {
|
41
|
+
out := new(Pointer)
|
42
|
+
err := c.cc.Invoke(ctx, "/fbcrawl_colly.Grpc/Init", in, out, opts...)
|
43
|
+
if err != nil {
|
44
|
+
return nil, err
|
45
|
+
}
|
46
|
+
return out, nil
|
47
|
+
}
|
48
|
+
|
49
|
+
func (c *grpcClient) FreeColly(ctx context.Context, in *Pointer, opts ...grpc.CallOption) (*Empty, error) {
|
50
|
+
out := new(Empty)
|
51
|
+
err := c.cc.Invoke(ctx, "/fbcrawl_colly.Grpc/FreeColly", in, out, opts...)
|
52
|
+
if err != nil {
|
53
|
+
return nil, err
|
54
|
+
}
|
55
|
+
return out, nil
|
56
|
+
}
|
57
|
+
|
58
|
+
func (c *grpcClient) Login(ctx context.Context, in *LoginRequest, opts ...grpc.CallOption) (*LoginResponse, error) {
|
59
|
+
out := new(LoginResponse)
|
60
|
+
err := c.cc.Invoke(ctx, "/fbcrawl_colly.Grpc/Login", in, out, opts...)
|
61
|
+
if err != nil {
|
62
|
+
return nil, err
|
63
|
+
}
|
64
|
+
return out, nil
|
65
|
+
}
|
66
|
+
|
67
|
+
func (c *grpcClient) LoginWithCookies(ctx context.Context, in *LoginWithCookiesRequest, opts ...grpc.CallOption) (*Empty, error) {
|
68
|
+
out := new(Empty)
|
69
|
+
err := c.cc.Invoke(ctx, "/fbcrawl_colly.Grpc/LoginWithCookies", in, out, opts...)
|
70
|
+
if err != nil {
|
71
|
+
return nil, err
|
72
|
+
}
|
73
|
+
return out, nil
|
74
|
+
}
|
75
|
+
|
76
|
+
func (c *grpcClient) FetchGroupInfo(ctx context.Context, in *FetchGroupInfoRequest, opts ...grpc.CallOption) (*FacebookGroup, error) {
|
77
|
+
out := new(FacebookGroup)
|
78
|
+
err := c.cc.Invoke(ctx, "/fbcrawl_colly.Grpc/FetchGroupInfo", in, out, opts...)
|
79
|
+
if err != nil {
|
80
|
+
return nil, err
|
81
|
+
}
|
82
|
+
return out, nil
|
83
|
+
}
|
84
|
+
|
85
|
+
func (c *grpcClient) FetchGroupFeed(ctx context.Context, in *FetchGroupFeedRequest, opts ...grpc.CallOption) (*FacebookPostList, error) {
|
86
|
+
out := new(FacebookPostList)
|
87
|
+
err := c.cc.Invoke(ctx, "/fbcrawl_colly.Grpc/FetchGroupFeed", in, out, opts...)
|
88
|
+
if err != nil {
|
89
|
+
return nil, err
|
90
|
+
}
|
91
|
+
return out, nil
|
92
|
+
}
|
93
|
+
|
94
|
+
func (c *grpcClient) FetchPost(ctx context.Context, in *FetchPostRequest, opts ...grpc.CallOption) (*FacebookPost, error) {
|
95
|
+
out := new(FacebookPost)
|
96
|
+
err := c.cc.Invoke(ctx, "/fbcrawl_colly.Grpc/FetchPost", in, out, opts...)
|
97
|
+
if err != nil {
|
98
|
+
return nil, err
|
99
|
+
}
|
100
|
+
return out, nil
|
101
|
+
}
|
102
|
+
|
103
|
+
func (c *grpcClient) FetchContentImages(ctx context.Context, in *FetchContentImagesRequest, opts ...grpc.CallOption) (*FacebookImageList, error) {
|
104
|
+
out := new(FacebookImageList)
|
105
|
+
err := c.cc.Invoke(ctx, "/fbcrawl_colly.Grpc/FetchContentImages", in, out, opts...)
|
106
|
+
if err != nil {
|
107
|
+
return nil, err
|
108
|
+
}
|
109
|
+
return out, nil
|
110
|
+
}
|
111
|
+
|
112
|
+
func (c *grpcClient) FetchImageUrl(ctx context.Context, in *FetchImageUrlRequest, opts ...grpc.CallOption) (*FacebookImage, error) {
|
113
|
+
out := new(FacebookImage)
|
114
|
+
err := c.cc.Invoke(ctx, "/fbcrawl_colly.Grpc/FetchImageUrl", in, out, opts...)
|
115
|
+
if err != nil {
|
116
|
+
return nil, err
|
117
|
+
}
|
118
|
+
return out, nil
|
119
|
+
}
|
120
|
+
|
121
|
+
// GrpcServer is the server API for Grpc service.
|
122
|
+
// All implementations must embed UnimplementedGrpcServer
|
123
|
+
// for forward compatibility
|
124
|
+
type GrpcServer interface {
|
125
|
+
// Sends a greeting
|
126
|
+
Init(context.Context, *Empty) (*Pointer, error)
|
127
|
+
FreeColly(context.Context, *Pointer) (*Empty, error)
|
128
|
+
Login(context.Context, *LoginRequest) (*LoginResponse, error)
|
129
|
+
LoginWithCookies(context.Context, *LoginWithCookiesRequest) (*Empty, error)
|
130
|
+
FetchGroupInfo(context.Context, *FetchGroupInfoRequest) (*FacebookGroup, error)
|
131
|
+
FetchGroupFeed(context.Context, *FetchGroupFeedRequest) (*FacebookPostList, error)
|
132
|
+
FetchPost(context.Context, *FetchPostRequest) (*FacebookPost, error)
|
133
|
+
FetchContentImages(context.Context, *FetchContentImagesRequest) (*FacebookImageList, error)
|
134
|
+
FetchImageUrl(context.Context, *FetchImageUrlRequest) (*FacebookImage, error)
|
135
|
+
mustEmbedUnimplementedGrpcServer()
|
136
|
+
}
|
137
|
+
|
138
|
+
// UnimplementedGrpcServer must be embedded to have forward compatible implementations.
|
139
|
+
type UnimplementedGrpcServer struct {
|
140
|
+
}
|
141
|
+
|
142
|
+
func (*UnimplementedGrpcServer) Init(context.Context, *Empty) (*Pointer, error) {
|
143
|
+
return nil, status.Errorf(codes.Unimplemented, "method Init not implemented")
|
144
|
+
}
|
145
|
+
func (*UnimplementedGrpcServer) FreeColly(context.Context, *Pointer) (*Empty, error) {
|
146
|
+
return nil, status.Errorf(codes.Unimplemented, "method FreeColly not implemented")
|
147
|
+
}
|
148
|
+
func (*UnimplementedGrpcServer) Login(context.Context, *LoginRequest) (*LoginResponse, error) {
|
149
|
+
return nil, status.Errorf(codes.Unimplemented, "method Login not implemented")
|
150
|
+
}
|
151
|
+
func (*UnimplementedGrpcServer) LoginWithCookies(context.Context, *LoginWithCookiesRequest) (*Empty, error) {
|
152
|
+
return nil, status.Errorf(codes.Unimplemented, "method LoginWithCookies not implemented")
|
153
|
+
}
|
154
|
+
func (*UnimplementedGrpcServer) FetchGroupInfo(context.Context, *FetchGroupInfoRequest) (*FacebookGroup, error) {
|
155
|
+
return nil, status.Errorf(codes.Unimplemented, "method FetchGroupInfo not implemented")
|
156
|
+
}
|
157
|
+
func (*UnimplementedGrpcServer) FetchGroupFeed(context.Context, *FetchGroupFeedRequest) (*FacebookPostList, error) {
|
158
|
+
return nil, status.Errorf(codes.Unimplemented, "method FetchGroupFeed not implemented")
|
159
|
+
}
|
160
|
+
func (*UnimplementedGrpcServer) FetchPost(context.Context, *FetchPostRequest) (*FacebookPost, error) {
|
161
|
+
return nil, status.Errorf(codes.Unimplemented, "method FetchPost not implemented")
|
162
|
+
}
|
163
|
+
func (*UnimplementedGrpcServer) FetchContentImages(context.Context, *FetchContentImagesRequest) (*FacebookImageList, error) {
|
164
|
+
return nil, status.Errorf(codes.Unimplemented, "method FetchContentImages not implemented")
|
165
|
+
}
|
166
|
+
func (*UnimplementedGrpcServer) FetchImageUrl(context.Context, *FetchImageUrlRequest) (*FacebookImage, error) {
|
167
|
+
return nil, status.Errorf(codes.Unimplemented, "method FetchImageUrl not implemented")
|
168
|
+
}
|
169
|
+
func (*UnimplementedGrpcServer) mustEmbedUnimplementedGrpcServer() {}
|
170
|
+
|
171
|
+
func RegisterGrpcServer(s *grpc.Server, srv GrpcServer) {
|
172
|
+
s.RegisterService(&_Grpc_serviceDesc, srv)
|
173
|
+
}
|
174
|
+
|
175
|
+
func _Grpc_Init_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
|
176
|
+
in := new(Empty)
|
177
|
+
if err := dec(in); err != nil {
|
178
|
+
return nil, err
|
179
|
+
}
|
180
|
+
if interceptor == nil {
|
181
|
+
return srv.(GrpcServer).Init(ctx, in)
|
182
|
+
}
|
183
|
+
info := &grpc.UnaryServerInfo{
|
184
|
+
Server: srv,
|
185
|
+
FullMethod: "/fbcrawl_colly.Grpc/Init",
|
186
|
+
}
|
187
|
+
handler := func(ctx context.Context, req interface{}) (interface{}, error) {
|
188
|
+
return srv.(GrpcServer).Init(ctx, req.(*Empty))
|
189
|
+
}
|
190
|
+
return interceptor(ctx, in, info, handler)
|
191
|
+
}
|
192
|
+
|
193
|
+
func _Grpc_FreeColly_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
|
194
|
+
in := new(Pointer)
|
195
|
+
if err := dec(in); err != nil {
|
196
|
+
return nil, err
|
197
|
+
}
|
198
|
+
if interceptor == nil {
|
199
|
+
return srv.(GrpcServer).FreeColly(ctx, in)
|
200
|
+
}
|
201
|
+
info := &grpc.UnaryServerInfo{
|
202
|
+
Server: srv,
|
203
|
+
FullMethod: "/fbcrawl_colly.Grpc/FreeColly",
|
204
|
+
}
|
205
|
+
handler := func(ctx context.Context, req interface{}) (interface{}, error) {
|
206
|
+
return srv.(GrpcServer).FreeColly(ctx, req.(*Pointer))
|
207
|
+
}
|
208
|
+
return interceptor(ctx, in, info, handler)
|
209
|
+
}
|
210
|
+
|
211
|
+
func _Grpc_Login_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
|
212
|
+
in := new(LoginRequest)
|
213
|
+
if err := dec(in); err != nil {
|
214
|
+
return nil, err
|
215
|
+
}
|
216
|
+
if interceptor == nil {
|
217
|
+
return srv.(GrpcServer).Login(ctx, in)
|
218
|
+
}
|
219
|
+
info := &grpc.UnaryServerInfo{
|
220
|
+
Server: srv,
|
221
|
+
FullMethod: "/fbcrawl_colly.Grpc/Login",
|
222
|
+
}
|
223
|
+
handler := func(ctx context.Context, req interface{}) (interface{}, error) {
|
224
|
+
return srv.(GrpcServer).Login(ctx, req.(*LoginRequest))
|
225
|
+
}
|
226
|
+
return interceptor(ctx, in, info, handler)
|
227
|
+
}
|
228
|
+
|
229
|
+
func _Grpc_LoginWithCookies_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
|
230
|
+
in := new(LoginWithCookiesRequest)
|
231
|
+
if err := dec(in); err != nil {
|
232
|
+
return nil, err
|
233
|
+
}
|
234
|
+
if interceptor == nil {
|
235
|
+
return srv.(GrpcServer).LoginWithCookies(ctx, in)
|
236
|
+
}
|
237
|
+
info := &grpc.UnaryServerInfo{
|
238
|
+
Server: srv,
|
239
|
+
FullMethod: "/fbcrawl_colly.Grpc/LoginWithCookies",
|
240
|
+
}
|
241
|
+
handler := func(ctx context.Context, req interface{}) (interface{}, error) {
|
242
|
+
return srv.(GrpcServer).LoginWithCookies(ctx, req.(*LoginWithCookiesRequest))
|
243
|
+
}
|
244
|
+
return interceptor(ctx, in, info, handler)
|
245
|
+
}
|
246
|
+
|
247
|
+
func _Grpc_FetchGroupInfo_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
|
248
|
+
in := new(FetchGroupInfoRequest)
|
249
|
+
if err := dec(in); err != nil {
|
250
|
+
return nil, err
|
251
|
+
}
|
252
|
+
if interceptor == nil {
|
253
|
+
return srv.(GrpcServer).FetchGroupInfo(ctx, in)
|
254
|
+
}
|
255
|
+
info := &grpc.UnaryServerInfo{
|
256
|
+
Server: srv,
|
257
|
+
FullMethod: "/fbcrawl_colly.Grpc/FetchGroupInfo",
|
258
|
+
}
|
259
|
+
handler := func(ctx context.Context, req interface{}) (interface{}, error) {
|
260
|
+
return srv.(GrpcServer).FetchGroupInfo(ctx, req.(*FetchGroupInfoRequest))
|
261
|
+
}
|
262
|
+
return interceptor(ctx, in, info, handler)
|
263
|
+
}
|
264
|
+
|
265
|
+
func _Grpc_FetchGroupFeed_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
|
266
|
+
in := new(FetchGroupFeedRequest)
|
267
|
+
if err := dec(in); err != nil {
|
268
|
+
return nil, err
|
269
|
+
}
|
270
|
+
if interceptor == nil {
|
271
|
+
return srv.(GrpcServer).FetchGroupFeed(ctx, in)
|
272
|
+
}
|
273
|
+
info := &grpc.UnaryServerInfo{
|
274
|
+
Server: srv,
|
275
|
+
FullMethod: "/fbcrawl_colly.Grpc/FetchGroupFeed",
|
276
|
+
}
|
277
|
+
handler := func(ctx context.Context, req interface{}) (interface{}, error) {
|
278
|
+
return srv.(GrpcServer).FetchGroupFeed(ctx, req.(*FetchGroupFeedRequest))
|
279
|
+
}
|
280
|
+
return interceptor(ctx, in, info, handler)
|
281
|
+
}
|
282
|
+
|
283
|
+
func _Grpc_FetchPost_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
|
284
|
+
in := new(FetchPostRequest)
|
285
|
+
if err := dec(in); err != nil {
|
286
|
+
return nil, err
|
287
|
+
}
|
288
|
+
if interceptor == nil {
|
289
|
+
return srv.(GrpcServer).FetchPost(ctx, in)
|
290
|
+
}
|
291
|
+
info := &grpc.UnaryServerInfo{
|
292
|
+
Server: srv,
|
293
|
+
FullMethod: "/fbcrawl_colly.Grpc/FetchPost",
|
294
|
+
}
|
295
|
+
handler := func(ctx context.Context, req interface{}) (interface{}, error) {
|
296
|
+
return srv.(GrpcServer).FetchPost(ctx, req.(*FetchPostRequest))
|
297
|
+
}
|
298
|
+
return interceptor(ctx, in, info, handler)
|
299
|
+
}
|
300
|
+
|
301
|
+
func _Grpc_FetchContentImages_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
|
302
|
+
in := new(FetchContentImagesRequest)
|
303
|
+
if err := dec(in); err != nil {
|
304
|
+
return nil, err
|
305
|
+
}
|
306
|
+
if interceptor == nil {
|
307
|
+
return srv.(GrpcServer).FetchContentImages(ctx, in)
|
308
|
+
}
|
309
|
+
info := &grpc.UnaryServerInfo{
|
310
|
+
Server: srv,
|
311
|
+
FullMethod: "/fbcrawl_colly.Grpc/FetchContentImages",
|
312
|
+
}
|
313
|
+
handler := func(ctx context.Context, req interface{}) (interface{}, error) {
|
314
|
+
return srv.(GrpcServer).FetchContentImages(ctx, req.(*FetchContentImagesRequest))
|
315
|
+
}
|
316
|
+
return interceptor(ctx, in, info, handler)
|
317
|
+
}
|
318
|
+
|
319
|
+
func _Grpc_FetchImageUrl_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
|
320
|
+
in := new(FetchImageUrlRequest)
|
321
|
+
if err := dec(in); err != nil {
|
322
|
+
return nil, err
|
323
|
+
}
|
324
|
+
if interceptor == nil {
|
325
|
+
return srv.(GrpcServer).FetchImageUrl(ctx, in)
|
326
|
+
}
|
327
|
+
info := &grpc.UnaryServerInfo{
|
328
|
+
Server: srv,
|
329
|
+
FullMethod: "/fbcrawl_colly.Grpc/FetchImageUrl",
|
330
|
+
}
|
331
|
+
handler := func(ctx context.Context, req interface{}) (interface{}, error) {
|
332
|
+
return srv.(GrpcServer).FetchImageUrl(ctx, req.(*FetchImageUrlRequest))
|
333
|
+
}
|
334
|
+
return interceptor(ctx, in, info, handler)
|
335
|
+
}
|
336
|
+
|
337
|
+
var _Grpc_serviceDesc = grpc.ServiceDesc{
|
338
|
+
ServiceName: "fbcrawl_colly.Grpc",
|
339
|
+
HandlerType: (*GrpcServer)(nil),
|
340
|
+
Methods: []grpc.MethodDesc{
|
341
|
+
{
|
342
|
+
MethodName: "Init",
|
343
|
+
Handler: _Grpc_Init_Handler,
|
344
|
+
},
|
345
|
+
{
|
346
|
+
MethodName: "FreeColly",
|
347
|
+
Handler: _Grpc_FreeColly_Handler,
|
348
|
+
},
|
349
|
+
{
|
350
|
+
MethodName: "Login",
|
351
|
+
Handler: _Grpc_Login_Handler,
|
352
|
+
},
|
353
|
+
{
|
354
|
+
MethodName: "LoginWithCookies",
|
355
|
+
Handler: _Grpc_LoginWithCookies_Handler,
|
356
|
+
},
|
357
|
+
{
|
358
|
+
MethodName: "FetchGroupInfo",
|
359
|
+
Handler: _Grpc_FetchGroupInfo_Handler,
|
360
|
+
},
|
361
|
+
{
|
362
|
+
MethodName: "FetchGroupFeed",
|
363
|
+
Handler: _Grpc_FetchGroupFeed_Handler,
|
364
|
+
},
|
365
|
+
{
|
366
|
+
MethodName: "FetchPost",
|
367
|
+
Handler: _Grpc_FetchPost_Handler,
|
368
|
+
},
|
369
|
+
{
|
370
|
+
MethodName: "FetchContentImages",
|
371
|
+
Handler: _Grpc_FetchContentImages_Handler,
|
372
|
+
},
|
373
|
+
{
|
374
|
+
MethodName: "FetchImageUrl",
|
375
|
+
Handler: _Grpc_FetchImageUrl_Handler,
|
376
|
+
},
|
377
|
+
},
|
378
|
+
Streams: []grpc.StreamDesc{},
|
379
|
+
Metadata: "fbcrawl.proto",
|
380
|
+
}
|
data/go.mod
CHANGED
@@ -4,21 +4,15 @@ go 1.14
|
|
4
4
|
|
5
5
|
require (
|
6
6
|
github.com/PuerkitoBio/goquery v1.5.1
|
7
|
-
github.com/
|
8
|
-
github.com/antchfx/htmlquery v1.2.3 // indirect
|
9
|
-
github.com/antchfx/xmlquery v1.2.4 // indirect
|
10
|
-
github.com/antchfx/xpath v1.1.9 // indirect
|
11
|
-
github.com/gobwas/glob v0.2.3 // indirect
|
12
|
-
github.com/gocolly/colly v1.2.0
|
7
|
+
github.com/gocolly/colly/v2 v2.1.0
|
13
8
|
github.com/golang/protobuf v1.4.2
|
14
9
|
github.com/google/logger v1.1.0
|
15
|
-
github.com/
|
10
|
+
github.com/hashicorp/golang-lru v0.5.4
|
16
11
|
github.com/olebedev/when v0.0.0-20190311101825-c3b538a97254
|
17
|
-
github.com/saintfish/chardet v0.0.0-20120816061221-3af4cd4741ca // indirect
|
18
|
-
github.com/temoto/robotstxt v1.1.1 // indirect
|
19
12
|
github.com/thoas/go-funk v0.7.0
|
13
|
+
github.com/xlzd/gotp v0.0.0-20181030022105-c8557ba2c119
|
20
14
|
golang.org/x/net v0.0.0-20200707034311-ab3426394381 // indirect
|
21
|
-
golang.org/
|
22
|
-
google.golang.org/
|
15
|
+
google.golang.org/grpc v1.27.0
|
16
|
+
google.golang.org/grpc/cmd/protoc-gen-go-grpc v0.0.0-20200814200710-a3740e5ed326 // indirect
|
23
17
|
google.golang.org/protobuf v1.25.0
|
24
18
|
)
|
data/go.sum
CHANGED
@@ -4,7 +4,6 @@ github.com/AlekSi/pointer v1.0.0/go.mod h1:1kjywbfcPFCmncIxtk6fIEub6LKrfMz3gc5QK
|
|
4
4
|
github.com/BurntSushi/toml v0.3.1/go.mod h1:xHWCNGjB5oqiDr8zfno3MHue2Ht5sIBksp03qcyfWMU=
|
5
5
|
github.com/PuerkitoBio/goquery v1.5.1 h1:PSPBGne8NIUWw+/7vFBV+kG2J/5MOjbzc7154OaKCSE=
|
6
6
|
github.com/PuerkitoBio/goquery v1.5.1/go.mod h1:GsLWisAFVj4WgDibEWF4pvYnkVQBpKBKeU+7zCJoLcc=
|
7
|
-
github.com/andybalholm/cascadia v1.1.0 h1:BuuO6sSfQNFRu1LppgbD25Hr2vLYW25JvxHs5zzsLTo=
|
8
7
|
github.com/andybalholm/cascadia v1.1.0/go.mod h1:GsXiBklL0woXo1j/WYWtSYYC4ouU9PqHO0sqidkEA4Y=
|
9
8
|
github.com/andybalholm/cascadia v1.2.0 h1:vuRCkM5Ozh/BfmsaTm26kbjm0mIOM3yS5Ek/F5h18aE=
|
10
9
|
github.com/andybalholm/cascadia v1.2.0/go.mod h1:YCyR8vOZT9aZ1CHEd8ap0gMVm2aFgxBp0T0eFw1RUQY=
|
@@ -12,14 +11,13 @@ github.com/antchfx/htmlquery v1.2.3 h1:sP3NFDneHx2stfNXCKbhHFo8XgNjCACnU/4AO5gWz
|
|
12
11
|
github.com/antchfx/htmlquery v1.2.3/go.mod h1:B0ABL+F5irhhMWg54ymEZinzMSi0Kt3I2if0BLYa3V0=
|
13
12
|
github.com/antchfx/xmlquery v1.2.4 h1:T/SH1bYdzdjTMoz2RgsfVKbM5uWh3gjDYYepFqQmFv4=
|
14
13
|
github.com/antchfx/xmlquery v1.2.4/go.mod h1:KQQuESaxSlqugE2ZBcM/qn+ebIpt+d+4Xx7YcSGAIrM=
|
15
|
-
github.com/antchfx/xpath v1.1.6 h1:6sVh6hB5T6phw1pFpHRQ+C4bd8sNI+O58flqtg7h0R0=
|
16
14
|
github.com/antchfx/xpath v1.1.6/go.mod h1:Yee4kTMuNiPYJ7nSNorELQMr1J33uOpXDMByNYhvtNk=
|
17
|
-
github.com/antchfx/xpath v1.1.
|
18
|
-
github.com/antchfx/xpath v1.1.
|
15
|
+
github.com/antchfx/xpath v1.1.8 h1:PcL6bIX42Px5usSx6xRYw/wjB3wYGkj0MJ9MBzEKVgk=
|
16
|
+
github.com/antchfx/xpath v1.1.8/go.mod h1:Yee4kTMuNiPYJ7nSNorELQMr1J33uOpXDMByNYhvtNk=
|
19
17
|
github.com/census-instrumentation/opencensus-proto v0.2.1/go.mod h1:f6KPmirojxKA12rnyqOA5BBL4O983OfeGPqjHWSTneU=
|
20
18
|
github.com/client9/misspell v0.3.4/go.mod h1:qj6jICC3Q7zFZvVWo7KLAzC3yx5G7kyvSDkc90ppPyw=
|
21
|
-
github.com/davecgh/go-spew v1.1.0 h1:ZDRjVQ15GmhC3fiQ8ni8+OwkZQO4DARzQgrnXU1Liz8=
|
22
19
|
github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
|
20
|
+
github.com/davecgh/go-spew v1.1.1 h1:vj9j/u1bqnvCEfJOwUhtlOARqs3+rkHYY13jYWTU97c=
|
23
21
|
github.com/davecgh/go-spew v1.1.1/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
|
24
22
|
github.com/envoyproxy/go-control-plane v0.9.1-0.20191026205805-5f8ba28d4473/go.mod h1:YTl/9mNaCwkRvm6d1a2C3ymFceY/DCBVvsKhRF0iEA4=
|
25
23
|
github.com/envoyproxy/protoc-gen-validate v0.1.0/go.mod h1:iSmxcyjqTsJpI2R4NaDN7+kN2VEUnK/pcBlmesArF7c=
|
@@ -27,12 +25,14 @@ github.com/gobwas/glob v0.2.3 h1:A4xDbljILXROh+kObIiy5kIaPYD8e96x1tgBhUI5J+Y=
|
|
27
25
|
github.com/gobwas/glob v0.2.3/go.mod h1:d3Ez4x06l9bZtSvzIay5+Yzi0fmZzPgnTbPcKjJAkT8=
|
28
26
|
github.com/gocolly/colly v1.2.0 h1:qRz9YAn8FIH0qzgNUw+HT9UN7wm1oF9OBAilwEWpyrI=
|
29
27
|
github.com/gocolly/colly v1.2.0/go.mod h1:Hof5T3ZswNVsOHYmba1u03W65HDWgpV5HifSuueE0EA=
|
28
|
+
github.com/gocolly/colly/v2 v2.1.0 h1:k0DuZkDoCsx51bKpRJNEmcxcp+W5N8ziuwGaSDuFoGs=
|
29
|
+
github.com/gocolly/colly/v2 v2.1.0/go.mod h1:I2MuhsLjQ+Ex+IzK3afNS8/1qP3AedHOusRPcRdC5o0=
|
30
|
+
github.com/golang/glog v0.0.0-20160126235308-23def4e6c14b h1:VKtxabqXZkF25pY9ekfRL6a582T4P37/31XEstQ5p58=
|
30
31
|
github.com/golang/glog v0.0.0-20160126235308-23def4e6c14b/go.mod h1:SBH7ygxi8pfUlaOkMMuAQtPIUF8ecWP5IEl/CR7VP2Q=
|
31
32
|
github.com/golang/groupcache v0.0.0-20200121045136-8c9f03a8e57e h1:1r7pUrabqp18hOBcwBwiTsbnFeTZHV9eER/QT5JVZxY=
|
32
33
|
github.com/golang/groupcache v0.0.0-20200121045136-8c9f03a8e57e/go.mod h1:cIg4eruTrX1D+g88fzRXU5OdNfaM+9IcxsU14FzY7Hc=
|
33
34
|
github.com/golang/mock v1.1.1/go.mod h1:oTYuIxOrZwtPieC+H1uAHpcLFnEyAGVDL/k47Jfbm0A=
|
34
35
|
github.com/golang/protobuf v1.2.0/go.mod h1:6lQm79b+lXiMfvg/cZm0SGofjICqVBUtrP5yJMmIC1U=
|
35
|
-
github.com/golang/protobuf v1.3.1 h1:YF8+flBXS5eO826T4nzqPrxfhQThhXl0YzfuUPu4SBg=
|
36
36
|
github.com/golang/protobuf v1.3.1/go.mod h1:6lQm79b+lXiMfvg/cZm0SGofjICqVBUtrP5yJMmIC1U=
|
37
37
|
github.com/golang/protobuf v1.3.2/go.mod h1:6lQm79b+lXiMfvg/cZm0SGofjICqVBUtrP5yJMmIC1U=
|
38
38
|
github.com/golang/protobuf v1.4.0-rc.1/go.mod h1:ceaxUfeHdC40wWswd/P6IGgMaK3YpKi5j83Wpe3EHw8=
|
@@ -51,6 +51,9 @@ github.com/google/go-cmp v0.5.0 h1:/QaMHBdZ26BB3SSst0Iwl10Epc+xhTquomWX0oZEB6w=
|
|
51
51
|
github.com/google/go-cmp v0.5.0/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE=
|
52
52
|
github.com/google/logger v1.1.0 h1:saB74Etb4EAJNH3z74CVbCKk75hld/8T0CsXKetWCwM=
|
53
53
|
github.com/google/logger v1.1.0/go.mod h1:w7O8nrRr0xufejBlQMI83MXqRusvREoJdaAxV+CoAB4=
|
54
|
+
github.com/hashicorp/golang-lru v0.5.4 h1:YDjusn29QI/Das2iO9M0BHnIbxPeyuCHsjMW+lJfyTc=
|
55
|
+
github.com/hashicorp/golang-lru v0.5.4/go.mod h1:iADmTwqILo4mZ8BN3D2Q6+9jd8WM5uGBxy+E8yxSoD4=
|
56
|
+
github.com/jawher/mow.cli v1.1.0/go.mod h1:aNaQlc7ozF3vw6IJ2dHjp2ZFiA4ozMIYY6PyuRJwlUg=
|
54
57
|
github.com/kennygrant/sanitize v1.2.4 h1:gN25/otpP5vAsO2djbMhF/LQX6R7+O1TB4yv8NzpJ3o=
|
55
58
|
github.com/kennygrant/sanitize v1.2.4/go.mod h1:LGsjYYtgxbetdg5owWB2mpgUL6e2nfw2eObZ0u0qvak=
|
56
59
|
github.com/olebedev/when v0.0.0-20190311101825-c3b538a97254 h1:JYoQR67E1vv1WGoeW8DkdFs7vrIEe/5wP+qJItd5tUE=
|
@@ -63,7 +66,7 @@ github.com/prometheus/client_model v0.0.0-20190812154241-14fe0d1b01d4/go.mod h1:
|
|
63
66
|
github.com/saintfish/chardet v0.0.0-20120816061221-3af4cd4741ca h1:NugYot0LIVPxTvN8n+Kvkn6TrbMyxQiuvKdEwFdR9vI=
|
64
67
|
github.com/saintfish/chardet v0.0.0-20120816061221-3af4cd4741ca/go.mod h1:uugorj2VCxiV1x+LzaIdVa9b4S4qGAcH6cbhh4qVxOU=
|
65
68
|
github.com/stretchr/objx v0.1.0/go.mod h1:HFkY916IF+rwdDfMAkV7OtwuqBVzrE8GR6GFx+wExME=
|
66
|
-
github.com/stretchr/
|
69
|
+
github.com/stretchr/objx v0.2.0/go.mod h1:qt09Ya8vawLte6SNmTgCsAVtYtaKzEcn8ATUoHMkEqE=
|
67
70
|
github.com/stretchr/testify v1.3.0/go.mod h1:M5WIy9Dh21IEIfnGCwXGc5bZfKNJtfHm1UVUgZn+9EI=
|
68
71
|
github.com/stretchr/testify v1.4.0 h1:2E4SXV/wtOkTonXsotYi4li6zVWxYlZuYNCXe9XRJyk=
|
69
72
|
github.com/stretchr/testify v1.4.0/go.mod h1:j7eGeouHqKxXV5pUuKE4zz7dFj8WfuZ+81PSLYec5m4=
|
@@ -71,7 +74,10 @@ github.com/temoto/robotstxt v1.1.1 h1:Gh8RCs8ouX3hRSxxK7B1mO5RFByQ4CmJZDwgom++Ja
|
|
71
74
|
github.com/temoto/robotstxt v1.1.1/go.mod h1:+1AmkuG3IYkh1kv0d2qEB9Le88ehNO0zwOr3ujewlOo=
|
72
75
|
github.com/thoas/go-funk v0.7.0 h1:GmirKrs6j6zJbhJIficOsz2aAI7700KsU/5YrdHRM1Y=
|
73
76
|
github.com/thoas/go-funk v0.7.0/go.mod h1:+IWnUfUmFO1+WVYQWQtIJHeRRdaIyyYglZN7xzUPe4Q=
|
77
|
+
github.com/xlzd/gotp v0.0.0-20181030022105-c8557ba2c119 h1:YyPWX3jLOtYKulBR6AScGIs74lLrJcgeKRwcbAuQOG4=
|
78
|
+
github.com/xlzd/gotp v0.0.0-20181030022105-c8557ba2c119/go.mod h1:/nuTSlK+okRfR/vnIPqR89fFKonnWPiZymN5ydRJkX8=
|
74
79
|
golang.org/x/crypto v0.0.0-20190308221718-c2843e01d9a2/go.mod h1:djNgcEr1/C05ACkg1iLfiJU5Ep61QUkGW8qpdssI0+w=
|
80
|
+
golang.org/x/crypto v0.0.0-20190605123033-f99c8df09eb5/go.mod h1:yigFU9vqHzYiE8UmvKecakEJjdnWj3jj499lnFckfCI=
|
75
81
|
golang.org/x/crypto v0.0.0-20200622213623-75b288015ac9/go.mod h1:LzIPMQfyMNhhGPhUkYOs5KpL4U8rLKemX1yGLhDgUto=
|
76
82
|
golang.org/x/exp v0.0.0-20190121172915-509febef88a4/go.mod h1:CJ0aWSM057203Lf6IL+f9T1iT9GByDxfZKAQTCR3kQA=
|
77
83
|
golang.org/x/lint v0.0.0-20181026193005-c67002cb31c3/go.mod h1:UVdnD1Gm6xHRNCYTkRU2/jEulfH38KcIWyp/GAMgvoE=
|
@@ -86,6 +92,7 @@ golang.org/x/net v0.0.0-20190404232315-eb5bcb51f2a3/go.mod h1:t9HGtf8HONx5eT2rtn
|
|
86
92
|
golang.org/x/net v0.0.0-20190603091049-60506f45cf65/go.mod h1:HSz+uSET+XFnRR8LxR5pz3Of3rY3CfYBVs4xY44aLks=
|
87
93
|
golang.org/x/net v0.0.0-20200202094626-16171245cfb2/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s=
|
88
94
|
golang.org/x/net v0.0.0-20200421231249-e086a090c8fd/go.mod h1:qpuaurCH72eLCgpAm/N6yyVIVM9cpaDIP3A8BGJEC5A=
|
95
|
+
golang.org/x/net v0.0.0-20200602114024-627f9648deb9/go.mod h1:qpuaurCH72eLCgpAm/N6yyVIVM9cpaDIP3A8BGJEC5A=
|
89
96
|
golang.org/x/net v0.0.0-20200707034311-ab3426394381 h1:VXak5I6aEWmAXeQjA+QSZzlgNrpq9mjcfDemuexIKsU=
|
90
97
|
golang.org/x/net v0.0.0-20200707034311-ab3426394381/go.mod h1:/O7V0waA8r7cgGh81Ro3o1hOxt32SMVPicZroKQ2sZA=
|
91
98
|
golang.org/x/oauth2 v0.0.0-20180821212333-d2e6202438be/go.mod h1:N/0e6XlmueqKjAGxoOufVs8QHGRruUQn6yWY3a++T0U=
|
@@ -100,13 +107,12 @@ golang.org/x/sys v0.0.0-20200323222414-85ca7c5b95cd/go.mod h1:h1NjWce9XRLGQEsW7w
|
|
100
107
|
golang.org/x/text v0.3.0/go.mod h1:NqM8EUOU14njkJ3fqMW+pc6Ldnwhi/IjpwHt7yyuwOQ=
|
101
108
|
golang.org/x/text v0.3.2 h1:tW2bmiBqwgJj/UpqtC8EpXEZVYOwU0yG4iWbprSVAcs=
|
102
109
|
golang.org/x/text v0.3.2/go.mod h1:bEr9sfX3Q8Zfm5fL9x+3itogRgK3+ptLWKqgva+5dAk=
|
103
|
-
golang.org/x/text v0.3.3 h1:cokOdA+Jmi5PJGXLlLllQSgYigAEfHXJAERHVMaCc2k=
|
104
|
-
golang.org/x/text v0.3.3/go.mod h1:5Zoc/QRtKVWzQhOtBMvqHzDpF6irO9z98xDceosuGiQ=
|
105
110
|
golang.org/x/tools v0.0.0-20180917221912-90fa682c2a6e/go.mod h1:n7NCudcB/nEzxVGmLbDWY5pfWTLqBcC2KZ6jyYvM4mQ=
|
106
111
|
golang.org/x/tools v0.0.0-20190114222345-bf090417da8b/go.mod h1:n7NCudcB/nEzxVGmLbDWY5pfWTLqBcC2KZ6jyYvM4mQ=
|
107
112
|
golang.org/x/tools v0.0.0-20190226205152-f727befe758c/go.mod h1:9Yl7xja0Znq3iFh3HoIrodX9oNMXvdceNzlUR8zjMvY=
|
108
113
|
golang.org/x/tools v0.0.0-20190311212946-11955173bddd/go.mod h1:LCzVGOaR6xXOjkQ3onu1FJEFr0SW1gC7cKk1uF8kGRs=
|
109
114
|
golang.org/x/tools v0.0.0-20190524140312-2c0ae7006135/go.mod h1:RgjU9mgBXZiqYHBnxXauZ1Gv1EHHAz9KjViQ78xBX0Q=
|
115
|
+
golang.org/x/tools v0.0.0-20190606124116-d0a3d012864b/go.mod h1:/rFqwRUd4F7ZHNgwSSTFct+R/Kf4OFW1sUzUTQQTgfc=
|
110
116
|
golang.org/x/xerrors v0.0.0-20191204190536-9bdfabe68543 h1:E7g+9GITq07hpfrRu66IVDexMakfv52eLZ2CXBWiKr4=
|
111
117
|
golang.org/x/xerrors v0.0.0-20191204190536-9bdfabe68543/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0=
|
112
118
|
google.golang.org/appengine v1.1.0/go.mod h1:EbEs0AVv82hx2wNQdGPgUI5lhzA/G0D9YwlJXL52JkM=
|
@@ -115,19 +121,24 @@ google.golang.org/appengine v1.6.6 h1:lMO5rYAqUxkmaj76jAkRUvt5JZgFymx/+Q5Mzfivuh
|
|
115
121
|
google.golang.org/appengine v1.6.6/go.mod h1:8WjMMxjGQR8xUklV/ARdw2HLXBOI7O7uCIDZVag1xfc=
|
116
122
|
google.golang.org/genproto v0.0.0-20180817151627-c66870c02cf8/go.mod h1:JiN7NxoALGmiZfu7CAH4rXhgtRTLTxftemlI0sWmxmc=
|
117
123
|
google.golang.org/genproto v0.0.0-20190819201941-24fa4b261c55/go.mod h1:DMBHOl98Agz4BDEuKkezgsaosCRResVns1a3J2ZsMNc=
|
124
|
+
google.golang.org/genproto v0.0.0-20200526211855-cb27e3aa2013 h1:+kGHl1aib/qcwaRi1CbqBZ1rk19r85MNUf8HaBghugY=
|
118
125
|
google.golang.org/genproto v0.0.0-20200526211855-cb27e3aa2013/go.mod h1:NbSheEEYHJ7i3ixzK3sjbqSGDJWnxyFXZblF3eUsNvo=
|
119
126
|
google.golang.org/grpc v1.19.0/go.mod h1:mqu4LbDTu4XGKhr4mRzUsmM4RtVoemTSY81AxZiDr8c=
|
120
127
|
google.golang.org/grpc v1.23.0/go.mod h1:Y5yQAOtifL1yxbo5wqy6BxZv8vAUGQwXBOALyacEbxg=
|
128
|
+
google.golang.org/grpc v1.27.0 h1:rRYRFMVgRv6E0D70Skyfsr28tDXIuuPZyWGMPdMcnXg=
|
121
129
|
google.golang.org/grpc v1.27.0/go.mod h1:qbnxyOmOxrQa7FizSgH+ReBfzJrCY1pSN7KXBS8abTk=
|
130
|
+
google.golang.org/grpc v1.31.0 h1:T7P4R73V3SSDPhH7WW7ATbfViLtmamH0DKrP3f9AuDI=
|
131
|
+
google.golang.org/grpc/cmd/protoc-gen-go-grpc v0.0.0-20200814200710-a3740e5ed326 h1:9xXKDULLQoff9XAN3whAGrh4vrLLvydDbmFGWofOWI0=
|
132
|
+
google.golang.org/grpc/cmd/protoc-gen-go-grpc v0.0.0-20200814200710-a3740e5ed326/go.mod h1:6Kw0yEErY5E/yWrBtf03jp27GLLJujG4z/JK95pnjjw=
|
122
133
|
google.golang.org/protobuf v0.0.0-20200109180630-ec00e32a8dfd/go.mod h1:DFci5gLYBciE7Vtevhsrf46CRTquxDuWsQurQQe4oz8=
|
123
134
|
google.golang.org/protobuf v0.0.0-20200221191635-4d8936d0db64/go.mod h1:kwYJMbMJ01Woi6D6+Kah6886xMZcty6N08ah7+eCXa0=
|
124
135
|
google.golang.org/protobuf v0.0.0-20200228230310-ab0ca4ff8a60/go.mod h1:cfTl7dwQJ+fmap5saPgwCLgHXTUD7jkjRqWcaiX5VyM=
|
125
136
|
google.golang.org/protobuf v1.20.1-0.20200309200217-e05f789c0967/go.mod h1:A+miEFZTKqfCUM6K7xSMQL9OKL/b6hQv+e19PK+JZNE=
|
126
137
|
google.golang.org/protobuf v1.21.0/go.mod h1:47Nbq4nVaFHyn7ilMalzfO3qCViNmqZ2kzikPIcrTAo=
|
127
138
|
google.golang.org/protobuf v1.22.0/go.mod h1:EGpADcykh3NcUnDUJcl1+ZksZNG86OlYog2l/sGQquU=
|
128
|
-
google.golang.org/protobuf v1.23.0 h1:4MY060fB1DLGMB/7MBTLnwQUY6+F09GEiz6SsrNqyzM=
|
129
139
|
google.golang.org/protobuf v1.23.0/go.mod h1:EGpADcykh3NcUnDUJcl1+ZksZNG86OlYog2l/sGQquU=
|
130
140
|
google.golang.org/protobuf v1.23.1-0.20200526195155-81db48ad09cc/go.mod h1:EGpADcykh3NcUnDUJcl1+ZksZNG86OlYog2l/sGQquU=
|
141
|
+
google.golang.org/protobuf v1.24.0/go.mod h1:r/3tXBNzIEhYS9I1OUVjXDlt8tc493IdKGjtUeSXeh4=
|
131
142
|
google.golang.org/protobuf v1.25.0 h1:Ejskq+SyPohKW+1uil0JJMtmHCgJPJ/qWTxr8qp+R4c=
|
132
143
|
google.golang.org/protobuf v1.25.0/go.mod h1:9JNX74DMeImyA3h4bdi1ymwjUzf21/xIlbajtzgsN7c=
|
133
144
|
gopkg.in/check.v1 v0.0.0-20161208181325-20d25e280405 h1:yhCVgyC4o1eVCa2tZl7eS0r+SDo693bJlVdllGtEeKM=
|