grpc-tools 1.4.5 → 1.6.0.pre1
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/bin/grpc_tools_ruby_protoc +10 -25
- data/bin/grpc_tools_ruby_protoc_plugin +10 -25
- data/bin/x86-linux/google/protobuf/any.proto +10 -0
- data/bin/x86-linux/google/protobuf/api.proto +29 -21
- data/bin/x86-linux/google/protobuf/compiler/plugin.proto +1 -0
- data/bin/x86-linux/google/protobuf/descriptor.proto +25 -7
- data/bin/x86-linux/grpc_ruby_plugin +0 -0
- data/bin/x86-linux/protoc +0 -0
- data/bin/x86-macos/google/protobuf/any.proto +10 -0
- data/bin/x86-macos/google/protobuf/api.proto +29 -21
- data/bin/x86-macos/google/protobuf/compiler/plugin.proto +1 -0
- data/bin/x86-macos/google/protobuf/descriptor.proto +25 -7
- data/bin/x86-macos/grpc_ruby_plugin +0 -0
- data/bin/x86-macos/protoc +0 -0
- data/bin/x86-windows/google/protobuf/any.proto +10 -0
- data/bin/x86-windows/google/protobuf/api.proto +29 -21
- data/bin/x86-windows/google/protobuf/compiler/plugin.proto +1 -0
- data/bin/x86-windows/google/protobuf/descriptor.proto +25 -7
- data/bin/x86-windows/grpc_ruby_plugin.exe +0 -0
- data/bin/x86-windows/protoc.exe +0 -0
- data/bin/x86_64-linux/google/protobuf/any.proto +10 -0
- data/bin/x86_64-linux/google/protobuf/api.proto +29 -21
- data/bin/x86_64-linux/google/protobuf/compiler/plugin.proto +1 -0
- data/bin/x86_64-linux/google/protobuf/descriptor.proto +25 -7
- data/bin/x86_64-linux/grpc_ruby_plugin +0 -0
- data/bin/x86_64-linux/protoc +0 -0
- data/bin/x86_64-macos/google/protobuf/any.proto +10 -0
- data/bin/x86_64-macos/google/protobuf/api.proto +29 -21
- data/bin/x86_64-macos/google/protobuf/compiler/plugin.proto +1 -0
- data/bin/x86_64-macos/google/protobuf/descriptor.proto +25 -7
- data/bin/x86_64-macos/grpc_ruby_plugin +0 -0
- data/bin/x86_64-macos/protoc +0 -0
- data/bin/x86_64-windows/google/protobuf/any.proto +10 -0
- data/bin/x86_64-windows/google/protobuf/api.proto +29 -21
- data/bin/x86_64-windows/google/protobuf/compiler/plugin.proto +1 -0
- data/bin/x86_64-windows/google/protobuf/descriptor.proto +25 -7
- data/bin/x86_64-windows/grpc_ruby_plugin.exe +0 -0
- data/bin/x86_64-windows/protoc.exe +0 -0
- data/platform_check.rb +10 -25
- data/version.rb +11 -26
- metadata +5 -5
Binary file
|
data/bin/x86-macos/protoc
CHANGED
Binary file
|
@@ -74,6 +74,16 @@ option objc_class_prefix = "GPB";
|
|
74
74
|
// any.Unpack(foo)
|
75
75
|
// ...
|
76
76
|
//
|
77
|
+
// Example 4: Pack and unpack a message in Go
|
78
|
+
//
|
79
|
+
// foo := &pb.Foo{...}
|
80
|
+
// any, err := ptypes.MarshalAny(foo)
|
81
|
+
// ...
|
82
|
+
// foo := &pb.Foo{}
|
83
|
+
// if err := ptypes.UnmarshalAny(any, foo); err != nil {
|
84
|
+
// ...
|
85
|
+
// }
|
86
|
+
//
|
77
87
|
// The pack methods provided by protobuf library will by default use
|
78
88
|
// 'type.googleapis.com/full.type.name' as the type URL and the unpack
|
79
89
|
// methods only use the fully qualified type name after the last '/'
|
@@ -42,26 +42,33 @@ option java_multiple_files = true;
|
|
42
42
|
option objc_class_prefix = "GPB";
|
43
43
|
option go_package = "google.golang.org/genproto/protobuf/api;api";
|
44
44
|
|
45
|
-
// Api is a light-weight descriptor for
|
45
|
+
// Api is a light-weight descriptor for an API Interface.
|
46
|
+
//
|
47
|
+
// Interfaces are also described as "protocol buffer services" in some contexts,
|
48
|
+
// such as by the "service" keyword in a .proto file, but they are different
|
49
|
+
// from API Services, which represent a concrete implementation of an interface
|
50
|
+
// as opposed to simply a description of methods and bindings. They are also
|
51
|
+
// sometimes simply referred to as "APIs" in other contexts, such as the name of
|
52
|
+
// this message itself. See https://cloud.google.com/apis/design/glossary for
|
53
|
+
// detailed terminology.
|
46
54
|
message Api {
|
47
55
|
|
48
|
-
// The fully qualified name of this
|
49
|
-
// followed by the
|
56
|
+
// The fully qualified name of this interface, including package name
|
57
|
+
// followed by the interface's simple name.
|
50
58
|
string name = 1;
|
51
59
|
|
52
|
-
// The methods of this
|
60
|
+
// The methods of this interface, in unspecified order.
|
53
61
|
repeated Method methods = 2;
|
54
62
|
|
55
|
-
// Any metadata attached to the
|
63
|
+
// Any metadata attached to the interface.
|
56
64
|
repeated Option options = 3;
|
57
65
|
|
58
|
-
// A version string for this
|
59
|
-
// `major-version.minor-version`, as in `1.10`. If the minor version
|
60
|
-
//
|
61
|
-
//
|
62
|
-
//
|
63
|
-
//
|
64
|
-
// provided here.
|
66
|
+
// A version string for this interface. If specified, must have the form
|
67
|
+
// `major-version.minor-version`, as in `1.10`. If the minor version is
|
68
|
+
// omitted, it defaults to zero. If the entire version field is empty, the
|
69
|
+
// major version is derived from the package name, as outlined below. If the
|
70
|
+
// field is not empty, the version in the package name will be verified to be
|
71
|
+
// consistent with what is provided here.
|
65
72
|
//
|
66
73
|
// The versioning schema uses [semantic
|
67
74
|
// versioning](http://semver.org) where the major version number
|
@@ -71,10 +78,10 @@ message Api {
|
|
71
78
|
// chosen based on the product plan.
|
72
79
|
//
|
73
80
|
// The major version is also reflected in the package name of the
|
74
|
-
//
|
81
|
+
// interface, which must end in `v<major-version>`, as in
|
75
82
|
// `google.feature.v1`. For major versions 0 and 1, the suffix can
|
76
83
|
// be omitted. Zero major versions must only be used for
|
77
|
-
// experimental,
|
84
|
+
// experimental, non-GA interfaces.
|
78
85
|
//
|
79
86
|
//
|
80
87
|
string version = 4;
|
@@ -83,14 +90,14 @@ message Api {
|
|
83
90
|
// message.
|
84
91
|
SourceContext source_context = 5;
|
85
92
|
|
86
|
-
// Included
|
93
|
+
// Included interfaces. See [Mixin][].
|
87
94
|
repeated Mixin mixins = 6;
|
88
95
|
|
89
96
|
// The source syntax of the service.
|
90
97
|
Syntax syntax = 7;
|
91
98
|
}
|
92
99
|
|
93
|
-
// Method represents a method of an
|
100
|
+
// Method represents a method of an API interface.
|
94
101
|
message Method {
|
95
102
|
|
96
103
|
// The simple name of this method.
|
@@ -115,9 +122,9 @@ message Method {
|
|
115
122
|
Syntax syntax = 7;
|
116
123
|
}
|
117
124
|
|
118
|
-
// Declares an API to be included in this
|
119
|
-
// redeclare all the methods from the included
|
120
|
-
// and options are inherited as follows:
|
125
|
+
// Declares an API Interface to be included in this interface. The including
|
126
|
+
// interface must redeclare all the methods from the included interface, but
|
127
|
+
// documentation and options are inherited as follows:
|
121
128
|
//
|
122
129
|
// - If after comment and whitespace stripping, the documentation
|
123
130
|
// string of the redeclared method is empty, it will be inherited
|
@@ -129,7 +136,8 @@ message Method {
|
|
129
136
|
//
|
130
137
|
// - If an http annotation is inherited, the path pattern will be
|
131
138
|
// modified as follows. Any version prefix will be replaced by the
|
132
|
-
// version of the including
|
139
|
+
// version of the including interface plus the [root][] path if
|
140
|
+
// specified.
|
133
141
|
//
|
134
142
|
// Example of a simple mixin:
|
135
143
|
//
|
@@ -193,7 +201,7 @@ message Method {
|
|
193
201
|
// ...
|
194
202
|
// }
|
195
203
|
message Mixin {
|
196
|
-
// The fully qualified name of the
|
204
|
+
// The fully qualified name of the interface which is included.
|
197
205
|
string name = 1;
|
198
206
|
|
199
207
|
// If non-empty specifies a path under which inherited HTTP paths
|
@@ -101,6 +101,8 @@ message DescriptorProto {
|
|
101
101
|
message ExtensionRange {
|
102
102
|
optional int32 start = 1;
|
103
103
|
optional int32 end = 2;
|
104
|
+
|
105
|
+
optional ExtensionRangeOptions options = 3;
|
104
106
|
}
|
105
107
|
repeated ExtensionRange extension_range = 5;
|
106
108
|
|
@@ -121,6 +123,14 @@ message DescriptorProto {
|
|
121
123
|
repeated string reserved_name = 10;
|
122
124
|
}
|
123
125
|
|
126
|
+
message ExtensionRangeOptions {
|
127
|
+
// The parser stores options it doesn't recognize here. See above.
|
128
|
+
repeated UninterpretedOption uninterpreted_option = 999;
|
129
|
+
|
130
|
+
// Clients can define custom options in extensions of this message. See above.
|
131
|
+
extensions 1000 to max;
|
132
|
+
}
|
133
|
+
|
124
134
|
// Describes a field within a message.
|
125
135
|
message FieldDescriptorProto {
|
126
136
|
enum Type {
|
@@ -351,6 +361,7 @@ message FileOptions {
|
|
351
361
|
optional bool cc_generic_services = 16 [default=false];
|
352
362
|
optional bool java_generic_services = 17 [default=false];
|
353
363
|
optional bool py_generic_services = 18 [default=false];
|
364
|
+
optional bool php_generic_services = 19 [default=false];
|
354
365
|
|
355
366
|
// Is this file deprecated?
|
356
367
|
// Depending on the target platform, this can emit Deprecated annotations
|
@@ -380,6 +391,11 @@ message FileOptions {
|
|
380
391
|
// from this .proto. Default is empty.
|
381
392
|
optional string php_class_prefix = 40;
|
382
393
|
|
394
|
+
// Use this option to change the namespace of php generated classes. Default
|
395
|
+
// is empty. When this option is empty, the package name will be used for
|
396
|
+
// determining the namespace.
|
397
|
+
optional string php_namespace = 41;
|
398
|
+
|
383
399
|
// The parser stores options it doesn't recognize here. See above.
|
384
400
|
repeated UninterpretedOption uninterpreted_option = 999;
|
385
401
|
|
@@ -477,13 +493,15 @@ message FieldOptions {
|
|
477
493
|
|
478
494
|
// The jstype option determines the JavaScript type used for values of the
|
479
495
|
// field. The option is permitted only for 64 bit integral and fixed types
|
480
|
-
// (int64, uint64, sint64, fixed64, sfixed64).
|
481
|
-
// represented as JavaScript
|
482
|
-
// happen when a large value is converted to a floating point JavaScript
|
483
|
-
//
|
484
|
-
//
|
485
|
-
//
|
486
|
-
//
|
496
|
+
// (int64, uint64, sint64, fixed64, sfixed64). A field with jstype JS_STRING
|
497
|
+
// is represented as JavaScript string, which avoids loss of precision that
|
498
|
+
// can happen when a large value is converted to a floating point JavaScript.
|
499
|
+
// Specifying JS_NUMBER for the jstype causes the generated JavaScript code to
|
500
|
+
// use the JavaScript "number" type. The behavior of the default option
|
501
|
+
// JS_NORMAL is implementation dependent.
|
502
|
+
//
|
503
|
+
// This option is an enum to permit additional types to be added, e.g.
|
504
|
+
// goog.math.Integer.
|
487
505
|
optional JSType jstype = 6 [default = JS_NORMAL];
|
488
506
|
enum JSType {
|
489
507
|
// Use the default type.
|
Binary file
|
data/bin/x86-windows/protoc.exe
CHANGED
Binary file
|
@@ -74,6 +74,16 @@ option objc_class_prefix = "GPB";
|
|
74
74
|
// any.Unpack(foo)
|
75
75
|
// ...
|
76
76
|
//
|
77
|
+
// Example 4: Pack and unpack a message in Go
|
78
|
+
//
|
79
|
+
// foo := &pb.Foo{...}
|
80
|
+
// any, err := ptypes.MarshalAny(foo)
|
81
|
+
// ...
|
82
|
+
// foo := &pb.Foo{}
|
83
|
+
// if err := ptypes.UnmarshalAny(any, foo); err != nil {
|
84
|
+
// ...
|
85
|
+
// }
|
86
|
+
//
|
77
87
|
// The pack methods provided by protobuf library will by default use
|
78
88
|
// 'type.googleapis.com/full.type.name' as the type URL and the unpack
|
79
89
|
// methods only use the fully qualified type name after the last '/'
|
@@ -42,26 +42,33 @@ option java_multiple_files = true;
|
|
42
42
|
option objc_class_prefix = "GPB";
|
43
43
|
option go_package = "google.golang.org/genproto/protobuf/api;api";
|
44
44
|
|
45
|
-
// Api is a light-weight descriptor for
|
45
|
+
// Api is a light-weight descriptor for an API Interface.
|
46
|
+
//
|
47
|
+
// Interfaces are also described as "protocol buffer services" in some contexts,
|
48
|
+
// such as by the "service" keyword in a .proto file, but they are different
|
49
|
+
// from API Services, which represent a concrete implementation of an interface
|
50
|
+
// as opposed to simply a description of methods and bindings. They are also
|
51
|
+
// sometimes simply referred to as "APIs" in other contexts, such as the name of
|
52
|
+
// this message itself. See https://cloud.google.com/apis/design/glossary for
|
53
|
+
// detailed terminology.
|
46
54
|
message Api {
|
47
55
|
|
48
|
-
// The fully qualified name of this
|
49
|
-
// followed by the
|
56
|
+
// The fully qualified name of this interface, including package name
|
57
|
+
// followed by the interface's simple name.
|
50
58
|
string name = 1;
|
51
59
|
|
52
|
-
// The methods of this
|
60
|
+
// The methods of this interface, in unspecified order.
|
53
61
|
repeated Method methods = 2;
|
54
62
|
|
55
|
-
// Any metadata attached to the
|
63
|
+
// Any metadata attached to the interface.
|
56
64
|
repeated Option options = 3;
|
57
65
|
|
58
|
-
// A version string for this
|
59
|
-
// `major-version.minor-version`, as in `1.10`. If the minor version
|
60
|
-
//
|
61
|
-
//
|
62
|
-
//
|
63
|
-
//
|
64
|
-
// provided here.
|
66
|
+
// A version string for this interface. If specified, must have the form
|
67
|
+
// `major-version.minor-version`, as in `1.10`. If the minor version is
|
68
|
+
// omitted, it defaults to zero. If the entire version field is empty, the
|
69
|
+
// major version is derived from the package name, as outlined below. If the
|
70
|
+
// field is not empty, the version in the package name will be verified to be
|
71
|
+
// consistent with what is provided here.
|
65
72
|
//
|
66
73
|
// The versioning schema uses [semantic
|
67
74
|
// versioning](http://semver.org) where the major version number
|
@@ -71,10 +78,10 @@ message Api {
|
|
71
78
|
// chosen based on the product plan.
|
72
79
|
//
|
73
80
|
// The major version is also reflected in the package name of the
|
74
|
-
//
|
81
|
+
// interface, which must end in `v<major-version>`, as in
|
75
82
|
// `google.feature.v1`. For major versions 0 and 1, the suffix can
|
76
83
|
// be omitted. Zero major versions must only be used for
|
77
|
-
// experimental,
|
84
|
+
// experimental, non-GA interfaces.
|
78
85
|
//
|
79
86
|
//
|
80
87
|
string version = 4;
|
@@ -83,14 +90,14 @@ message Api {
|
|
83
90
|
// message.
|
84
91
|
SourceContext source_context = 5;
|
85
92
|
|
86
|
-
// Included
|
93
|
+
// Included interfaces. See [Mixin][].
|
87
94
|
repeated Mixin mixins = 6;
|
88
95
|
|
89
96
|
// The source syntax of the service.
|
90
97
|
Syntax syntax = 7;
|
91
98
|
}
|
92
99
|
|
93
|
-
// Method represents a method of an
|
100
|
+
// Method represents a method of an API interface.
|
94
101
|
message Method {
|
95
102
|
|
96
103
|
// The simple name of this method.
|
@@ -115,9 +122,9 @@ message Method {
|
|
115
122
|
Syntax syntax = 7;
|
116
123
|
}
|
117
124
|
|
118
|
-
// Declares an API to be included in this
|
119
|
-
// redeclare all the methods from the included
|
120
|
-
// and options are inherited as follows:
|
125
|
+
// Declares an API Interface to be included in this interface. The including
|
126
|
+
// interface must redeclare all the methods from the included interface, but
|
127
|
+
// documentation and options are inherited as follows:
|
121
128
|
//
|
122
129
|
// - If after comment and whitespace stripping, the documentation
|
123
130
|
// string of the redeclared method is empty, it will be inherited
|
@@ -129,7 +136,8 @@ message Method {
|
|
129
136
|
//
|
130
137
|
// - If an http annotation is inherited, the path pattern will be
|
131
138
|
// modified as follows. Any version prefix will be replaced by the
|
132
|
-
// version of the including
|
139
|
+
// version of the including interface plus the [root][] path if
|
140
|
+
// specified.
|
133
141
|
//
|
134
142
|
// Example of a simple mixin:
|
135
143
|
//
|
@@ -193,7 +201,7 @@ message Method {
|
|
193
201
|
// ...
|
194
202
|
// }
|
195
203
|
message Mixin {
|
196
|
-
// The fully qualified name of the
|
204
|
+
// The fully qualified name of the interface which is included.
|
197
205
|
string name = 1;
|
198
206
|
|
199
207
|
// If non-empty specifies a path under which inherited HTTP paths
|
@@ -101,6 +101,8 @@ message DescriptorProto {
|
|
101
101
|
message ExtensionRange {
|
102
102
|
optional int32 start = 1;
|
103
103
|
optional int32 end = 2;
|
104
|
+
|
105
|
+
optional ExtensionRangeOptions options = 3;
|
104
106
|
}
|
105
107
|
repeated ExtensionRange extension_range = 5;
|
106
108
|
|
@@ -121,6 +123,14 @@ message DescriptorProto {
|
|
121
123
|
repeated string reserved_name = 10;
|
122
124
|
}
|
123
125
|
|
126
|
+
message ExtensionRangeOptions {
|
127
|
+
// The parser stores options it doesn't recognize here. See above.
|
128
|
+
repeated UninterpretedOption uninterpreted_option = 999;
|
129
|
+
|
130
|
+
// Clients can define custom options in extensions of this message. See above.
|
131
|
+
extensions 1000 to max;
|
132
|
+
}
|
133
|
+
|
124
134
|
// Describes a field within a message.
|
125
135
|
message FieldDescriptorProto {
|
126
136
|
enum Type {
|
@@ -351,6 +361,7 @@ message FileOptions {
|
|
351
361
|
optional bool cc_generic_services = 16 [default=false];
|
352
362
|
optional bool java_generic_services = 17 [default=false];
|
353
363
|
optional bool py_generic_services = 18 [default=false];
|
364
|
+
optional bool php_generic_services = 19 [default=false];
|
354
365
|
|
355
366
|
// Is this file deprecated?
|
356
367
|
// Depending on the target platform, this can emit Deprecated annotations
|
@@ -380,6 +391,11 @@ message FileOptions {
|
|
380
391
|
// from this .proto. Default is empty.
|
381
392
|
optional string php_class_prefix = 40;
|
382
393
|
|
394
|
+
// Use this option to change the namespace of php generated classes. Default
|
395
|
+
// is empty. When this option is empty, the package name will be used for
|
396
|
+
// determining the namespace.
|
397
|
+
optional string php_namespace = 41;
|
398
|
+
|
383
399
|
// The parser stores options it doesn't recognize here. See above.
|
384
400
|
repeated UninterpretedOption uninterpreted_option = 999;
|
385
401
|
|
@@ -477,13 +493,15 @@ message FieldOptions {
|
|
477
493
|
|
478
494
|
// The jstype option determines the JavaScript type used for values of the
|
479
495
|
// field. The option is permitted only for 64 bit integral and fixed types
|
480
|
-
// (int64, uint64, sint64, fixed64, sfixed64).
|
481
|
-
// represented as JavaScript
|
482
|
-
// happen when a large value is converted to a floating point JavaScript
|
483
|
-
//
|
484
|
-
//
|
485
|
-
//
|
486
|
-
//
|
496
|
+
// (int64, uint64, sint64, fixed64, sfixed64). A field with jstype JS_STRING
|
497
|
+
// is represented as JavaScript string, which avoids loss of precision that
|
498
|
+
// can happen when a large value is converted to a floating point JavaScript.
|
499
|
+
// Specifying JS_NUMBER for the jstype causes the generated JavaScript code to
|
500
|
+
// use the JavaScript "number" type. The behavior of the default option
|
501
|
+
// JS_NORMAL is implementation dependent.
|
502
|
+
//
|
503
|
+
// This option is an enum to permit additional types to be added, e.g.
|
504
|
+
// goog.math.Integer.
|
487
505
|
optional JSType jstype = 6 [default = JS_NORMAL];
|
488
506
|
enum JSType {
|
489
507
|
// Use the default type.
|
Binary file
|
data/bin/x86_64-linux/protoc
CHANGED
Binary file
|
@@ -74,6 +74,16 @@ option objc_class_prefix = "GPB";
|
|
74
74
|
// any.Unpack(foo)
|
75
75
|
// ...
|
76
76
|
//
|
77
|
+
// Example 4: Pack and unpack a message in Go
|
78
|
+
//
|
79
|
+
// foo := &pb.Foo{...}
|
80
|
+
// any, err := ptypes.MarshalAny(foo)
|
81
|
+
// ...
|
82
|
+
// foo := &pb.Foo{}
|
83
|
+
// if err := ptypes.UnmarshalAny(any, foo); err != nil {
|
84
|
+
// ...
|
85
|
+
// }
|
86
|
+
//
|
77
87
|
// The pack methods provided by protobuf library will by default use
|
78
88
|
// 'type.googleapis.com/full.type.name' as the type URL and the unpack
|
79
89
|
// methods only use the fully qualified type name after the last '/'
|
@@ -42,26 +42,33 @@ option java_multiple_files = true;
|
|
42
42
|
option objc_class_prefix = "GPB";
|
43
43
|
option go_package = "google.golang.org/genproto/protobuf/api;api";
|
44
44
|
|
45
|
-
// Api is a light-weight descriptor for
|
45
|
+
// Api is a light-weight descriptor for an API Interface.
|
46
|
+
//
|
47
|
+
// Interfaces are also described as "protocol buffer services" in some contexts,
|
48
|
+
// such as by the "service" keyword in a .proto file, but they are different
|
49
|
+
// from API Services, which represent a concrete implementation of an interface
|
50
|
+
// as opposed to simply a description of methods and bindings. They are also
|
51
|
+
// sometimes simply referred to as "APIs" in other contexts, such as the name of
|
52
|
+
// this message itself. See https://cloud.google.com/apis/design/glossary for
|
53
|
+
// detailed terminology.
|
46
54
|
message Api {
|
47
55
|
|
48
|
-
// The fully qualified name of this
|
49
|
-
// followed by the
|
56
|
+
// The fully qualified name of this interface, including package name
|
57
|
+
// followed by the interface's simple name.
|
50
58
|
string name = 1;
|
51
59
|
|
52
|
-
// The methods of this
|
60
|
+
// The methods of this interface, in unspecified order.
|
53
61
|
repeated Method methods = 2;
|
54
62
|
|
55
|
-
// Any metadata attached to the
|
63
|
+
// Any metadata attached to the interface.
|
56
64
|
repeated Option options = 3;
|
57
65
|
|
58
|
-
// A version string for this
|
59
|
-
// `major-version.minor-version`, as in `1.10`. If the minor version
|
60
|
-
//
|
61
|
-
//
|
62
|
-
//
|
63
|
-
//
|
64
|
-
// provided here.
|
66
|
+
// A version string for this interface. If specified, must have the form
|
67
|
+
// `major-version.minor-version`, as in `1.10`. If the minor version is
|
68
|
+
// omitted, it defaults to zero. If the entire version field is empty, the
|
69
|
+
// major version is derived from the package name, as outlined below. If the
|
70
|
+
// field is not empty, the version in the package name will be verified to be
|
71
|
+
// consistent with what is provided here.
|
65
72
|
//
|
66
73
|
// The versioning schema uses [semantic
|
67
74
|
// versioning](http://semver.org) where the major version number
|
@@ -71,10 +78,10 @@ message Api {
|
|
71
78
|
// chosen based on the product plan.
|
72
79
|
//
|
73
80
|
// The major version is also reflected in the package name of the
|
74
|
-
//
|
81
|
+
// interface, which must end in `v<major-version>`, as in
|
75
82
|
// `google.feature.v1`. For major versions 0 and 1, the suffix can
|
76
83
|
// be omitted. Zero major versions must only be used for
|
77
|
-
// experimental,
|
84
|
+
// experimental, non-GA interfaces.
|
78
85
|
//
|
79
86
|
//
|
80
87
|
string version = 4;
|
@@ -83,14 +90,14 @@ message Api {
|
|
83
90
|
// message.
|
84
91
|
SourceContext source_context = 5;
|
85
92
|
|
86
|
-
// Included
|
93
|
+
// Included interfaces. See [Mixin][].
|
87
94
|
repeated Mixin mixins = 6;
|
88
95
|
|
89
96
|
// The source syntax of the service.
|
90
97
|
Syntax syntax = 7;
|
91
98
|
}
|
92
99
|
|
93
|
-
// Method represents a method of an
|
100
|
+
// Method represents a method of an API interface.
|
94
101
|
message Method {
|
95
102
|
|
96
103
|
// The simple name of this method.
|
@@ -115,9 +122,9 @@ message Method {
|
|
115
122
|
Syntax syntax = 7;
|
116
123
|
}
|
117
124
|
|
118
|
-
// Declares an API to be included in this
|
119
|
-
// redeclare all the methods from the included
|
120
|
-
// and options are inherited as follows:
|
125
|
+
// Declares an API Interface to be included in this interface. The including
|
126
|
+
// interface must redeclare all the methods from the included interface, but
|
127
|
+
// documentation and options are inherited as follows:
|
121
128
|
//
|
122
129
|
// - If after comment and whitespace stripping, the documentation
|
123
130
|
// string of the redeclared method is empty, it will be inherited
|
@@ -129,7 +136,8 @@ message Method {
|
|
129
136
|
//
|
130
137
|
// - If an http annotation is inherited, the path pattern will be
|
131
138
|
// modified as follows. Any version prefix will be replaced by the
|
132
|
-
// version of the including
|
139
|
+
// version of the including interface plus the [root][] path if
|
140
|
+
// specified.
|
133
141
|
//
|
134
142
|
// Example of a simple mixin:
|
135
143
|
//
|
@@ -193,7 +201,7 @@ message Method {
|
|
193
201
|
// ...
|
194
202
|
// }
|
195
203
|
message Mixin {
|
196
|
-
// The fully qualified name of the
|
204
|
+
// The fully qualified name of the interface which is included.
|
197
205
|
string name = 1;
|
198
206
|
|
199
207
|
// If non-empty specifies a path under which inherited HTTP paths
|