protobufjs 6.8.8 → 6.9.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.
Files changed (108) hide show
  1. package/CHANGELOG.md +941 -921
  2. package/LICENSE +39 -39
  3. package/README.md +901 -879
  4. package/cli/LICENSE +33 -33
  5. package/cli/README.md +11 -11
  6. package/cli/index.d.ts +3 -3
  7. package/cli/index.js +3 -3
  8. package/cli/lib/tsd-jsdoc/LICENSE +20 -20
  9. package/cli/lib/tsd-jsdoc/README.md +23 -23
  10. package/cli/lib/tsd-jsdoc/plugin.js +21 -21
  11. package/cli/lib/tsd-jsdoc/publish.js +705 -693
  12. package/cli/lib/tsd-jsdoc.json +18 -18
  13. package/cli/package.json +1 -1
  14. package/cli/package.standalone.json +32 -32
  15. package/cli/pbjs.d.ts +9 -9
  16. package/cli/pbjs.js +329 -329
  17. package/cli/pbts.d.ts +9 -9
  18. package/cli/pbts.js +197 -197
  19. package/cli/targets/json-module.js +38 -38
  20. package/cli/targets/json.js +8 -8
  21. package/cli/targets/proto.js +326 -326
  22. package/cli/targets/proto2.js +10 -10
  23. package/cli/targets/proto3.js +10 -10
  24. package/cli/targets/static-module.js +29 -29
  25. package/cli/targets/static.js +702 -702
  26. package/cli/util.js +183 -183
  27. package/cli/wrappers/amd.js +7 -7
  28. package/cli/wrappers/closure.js +7 -7
  29. package/cli/wrappers/commonjs.js +7 -7
  30. package/cli/wrappers/default.js +15 -15
  31. package/cli/wrappers/es6.js +5 -5
  32. package/dist/README.md +31 -31
  33. package/dist/light/README.md +31 -31
  34. package/dist/light/protobuf.js +6058 -6032
  35. package/dist/light/protobuf.js.map +1 -1
  36. package/dist/light/protobuf.min.js +3 -3
  37. package/dist/light/protobuf.min.js.map +1 -1
  38. package/dist/minimal/README.md +31 -31
  39. package/dist/minimal/protobuf.js +1900 -1877
  40. package/dist/minimal/protobuf.js.map +1 -1
  41. package/dist/minimal/protobuf.min.js +3 -3
  42. package/dist/minimal/protobuf.min.js.map +1 -1
  43. package/dist/protobuf.js +7625 -7596
  44. package/dist/protobuf.js.map +1 -1
  45. package/dist/protobuf.min.js +3 -3
  46. package/dist/protobuf.min.js.map +1 -1
  47. package/ext/debug/README.md +4 -4
  48. package/ext/debug/index.js +71 -71
  49. package/ext/descriptor/README.md +72 -72
  50. package/ext/descriptor/index.js +1052 -1052
  51. package/ext/descriptor/test.js +54 -54
  52. package/google/LICENSE +27 -27
  53. package/google/README.md +1 -1
  54. package/google/api/annotations.proto +10 -10
  55. package/google/protobuf/descriptor.proto +286 -286
  56. package/google/protobuf/source_context.proto +7 -7
  57. package/index.d.ts +6 -6
  58. package/index.js +4 -4
  59. package/light.d.ts +2 -2
  60. package/light.js +3 -3
  61. package/minimal.d.ts +2 -2
  62. package/minimal.js +4 -4
  63. package/package-lock.json +4223 -3171
  64. package/package.json +122 -122
  65. package/scripts/changelog.js +150 -150
  66. package/scripts/postinstall.js +35 -35
  67. package/src/common.js +399 -399
  68. package/src/converter.js +293 -293
  69. package/src/decoder.js +106 -106
  70. package/src/encoder.js +100 -100
  71. package/src/enum.js +181 -181
  72. package/src/field.js +371 -371
  73. package/src/index-light.js +104 -104
  74. package/src/index-minimal.js +36 -36
  75. package/src/index.js +12 -12
  76. package/src/mapfield.js +126 -126
  77. package/src/message.js +138 -138
  78. package/src/method.js +151 -151
  79. package/src/namespace.js +433 -433
  80. package/src/object.js +200 -200
  81. package/src/oneof.js +203 -203
  82. package/src/parse.js +761 -758
  83. package/src/reader.js +411 -405
  84. package/src/reader_buffer.js +51 -44
  85. package/src/root.js +353 -351
  86. package/src/roots.js +18 -18
  87. package/src/rpc/service.js +142 -142
  88. package/src/rpc.js +36 -36
  89. package/src/service.js +167 -167
  90. package/src/tokenize.js +397 -397
  91. package/src/type.js +589 -589
  92. package/src/types.js +196 -196
  93. package/src/typescript.jsdoc +15 -15
  94. package/src/util/longbits.js +200 -200
  95. package/src/util/minimal.js +414 -414
  96. package/src/util.js +178 -178
  97. package/src/verifier.js +176 -176
  98. package/src/wrappers.js +83 -83
  99. package/src/writer.js +465 -459
  100. package/src/writer_buffer.js +85 -81
  101. package/tsconfig.json +6 -6
  102. package/cli/node_modules/os-tmpdir/index.js +0 -25
  103. package/cli/node_modules/os-tmpdir/license +0 -21
  104. package/cli/node_modules/os-tmpdir/readme.md +0 -32
  105. package/cli/node_modules/tmp/LICENSE +0 -21
  106. package/cli/node_modules/tmp/README.md +0 -314
  107. package/cli/node_modules/tmp/lib/tmp.js +0 -611
  108. package/cli/package-lock.json +0 -20
package/src/decoder.js CHANGED
@@ -1,106 +1,106 @@
1
- "use strict";
2
- module.exports = decoder;
3
-
4
- var Enum = require("./enum"),
5
- types = require("./types"),
6
- util = require("./util");
7
-
8
- function missing(field) {
9
- return "missing required '" + field.name + "'";
10
- }
11
-
12
- /**
13
- * Generates a decoder specific to the specified message type.
14
- * @param {Type} mtype Message type
15
- * @returns {Codegen} Codegen instance
16
- */
17
- function decoder(mtype) {
18
- /* eslint-disable no-unexpected-multiline */
19
- var gen = util.codegen(["r", "l"], mtype.name + "$decode")
20
- ("if(!(r instanceof Reader))")
21
- ("r=Reader.create(r)")
22
- ("var c=l===undefined?r.len:r.pos+l,m=new this.ctor" + (mtype.fieldsArray.filter(function(field) { return field.map; }).length ? ",k" : ""))
23
- ("while(r.pos<c){")
24
- ("var t=r.uint32()");
25
- if (mtype.group) gen
26
- ("if((t&7)===4)")
27
- ("break");
28
- gen
29
- ("switch(t>>>3){");
30
-
31
- var i = 0;
32
- for (; i < /* initializes */ mtype.fieldsArray.length; ++i) {
33
- var field = mtype._fieldsArray[i].resolve(),
34
- type = field.resolvedType instanceof Enum ? "int32" : field.type,
35
- ref = "m" + util.safeProp(field.name); gen
36
- ("case %i:", field.id);
37
-
38
- // Map fields
39
- if (field.map) { gen
40
- ("r.skip().pos++") // assumes id 1 + key wireType
41
- ("if(%s===util.emptyObject)", ref)
42
- ("%s={}", ref)
43
- ("k=r.%s()", field.keyType)
44
- ("r.pos++"); // assumes id 2 + value wireType
45
- if (types.long[field.keyType] !== undefined) {
46
- if (types.basic[type] === undefined) gen
47
- ("%s[typeof k===\"object\"?util.longToHash(k):k]=types[%i].decode(r,r.uint32())", ref, i); // can't be groups
48
- else gen
49
- ("%s[typeof k===\"object\"?util.longToHash(k):k]=r.%s()", ref, type);
50
- } else {
51
- if (types.basic[type] === undefined) gen
52
- ("%s[k]=types[%i].decode(r,r.uint32())", ref, i); // can't be groups
53
- else gen
54
- ("%s[k]=r.%s()", ref, type);
55
- }
56
-
57
- // Repeated fields
58
- } else if (field.repeated) { gen
59
-
60
- ("if(!(%s&&%s.length))", ref, ref)
61
- ("%s=[]", ref);
62
-
63
- // Packable (always check for forward and backward compatiblity)
64
- if (types.packed[type] !== undefined) gen
65
- ("if((t&7)===2){")
66
- ("var c2=r.uint32()+r.pos")
67
- ("while(r.pos<c2)")
68
- ("%s.push(r.%s())", ref, type)
69
- ("}else");
70
-
71
- // Non-packed
72
- if (types.basic[type] === undefined) gen(field.resolvedType.group
73
- ? "%s.push(types[%i].decode(r))"
74
- : "%s.push(types[%i].decode(r,r.uint32()))", ref, i);
75
- else gen
76
- ("%s.push(r.%s())", ref, type);
77
-
78
- // Non-repeated
79
- } else if (types.basic[type] === undefined) gen(field.resolvedType.group
80
- ? "%s=types[%i].decode(r)"
81
- : "%s=types[%i].decode(r,r.uint32())", ref, i);
82
- else gen
83
- ("%s=r.%s()", ref, type);
84
- gen
85
- ("break");
86
- // Unknown fields
87
- } gen
88
- ("default:")
89
- ("r.skipType(t&7)")
90
- ("break")
91
-
92
- ("}")
93
- ("}");
94
-
95
- // Field presence
96
- for (i = 0; i < mtype._fieldsArray.length; ++i) {
97
- var rfield = mtype._fieldsArray[i];
98
- if (rfield.required) gen
99
- ("if(!m.hasOwnProperty(%j))", rfield.name)
100
- ("throw util.ProtocolError(%j,{instance:m})", missing(rfield));
101
- }
102
-
103
- return gen
104
- ("return m");
105
- /* eslint-enable no-unexpected-multiline */
106
- }
1
+ "use strict";
2
+ module.exports = decoder;
3
+
4
+ var Enum = require("./enum"),
5
+ types = require("./types"),
6
+ util = require("./util");
7
+
8
+ function missing(field) {
9
+ return "missing required '" + field.name + "'";
10
+ }
11
+
12
+ /**
13
+ * Generates a decoder specific to the specified message type.
14
+ * @param {Type} mtype Message type
15
+ * @returns {Codegen} Codegen instance
16
+ */
17
+ function decoder(mtype) {
18
+ /* eslint-disable no-unexpected-multiline */
19
+ var gen = util.codegen(["r", "l"], mtype.name + "$decode")
20
+ ("if(!(r instanceof Reader))")
21
+ ("r=Reader.create(r)")
22
+ ("var c=l===undefined?r.len:r.pos+l,m=new this.ctor" + (mtype.fieldsArray.filter(function(field) { return field.map; }).length ? ",k" : ""))
23
+ ("while(r.pos<c){")
24
+ ("var t=r.uint32()");
25
+ if (mtype.group) gen
26
+ ("if((t&7)===4)")
27
+ ("break");
28
+ gen
29
+ ("switch(t>>>3){");
30
+
31
+ var i = 0;
32
+ for (; i < /* initializes */ mtype.fieldsArray.length; ++i) {
33
+ var field = mtype._fieldsArray[i].resolve(),
34
+ type = field.resolvedType instanceof Enum ? "int32" : field.type,
35
+ ref = "m" + util.safeProp(field.name); gen
36
+ ("case %i:", field.id);
37
+
38
+ // Map fields
39
+ if (field.map) { gen
40
+ ("r.skip().pos++") // assumes id 1 + key wireType
41
+ ("if(%s===util.emptyObject)", ref)
42
+ ("%s={}", ref)
43
+ ("k=r.%s()", field.keyType)
44
+ ("r.pos++"); // assumes id 2 + value wireType
45
+ if (types.long[field.keyType] !== undefined) {
46
+ if (types.basic[type] === undefined) gen
47
+ ("%s[typeof k===\"object\"?util.longToHash(k):k]=types[%i].decode(r,r.uint32())", ref, i); // can't be groups
48
+ else gen
49
+ ("%s[typeof k===\"object\"?util.longToHash(k):k]=r.%s()", ref, type);
50
+ } else {
51
+ if (types.basic[type] === undefined) gen
52
+ ("%s[k]=types[%i].decode(r,r.uint32())", ref, i); // can't be groups
53
+ else gen
54
+ ("%s[k]=r.%s()", ref, type);
55
+ }
56
+
57
+ // Repeated fields
58
+ } else if (field.repeated) { gen
59
+
60
+ ("if(!(%s&&%s.length))", ref, ref)
61
+ ("%s=[]", ref);
62
+
63
+ // Packable (always check for forward and backward compatiblity)
64
+ if (types.packed[type] !== undefined) gen
65
+ ("if((t&7)===2){")
66
+ ("var c2=r.uint32()+r.pos")
67
+ ("while(r.pos<c2)")
68
+ ("%s.push(r.%s())", ref, type)
69
+ ("}else");
70
+
71
+ // Non-packed
72
+ if (types.basic[type] === undefined) gen(field.resolvedType.group
73
+ ? "%s.push(types[%i].decode(r))"
74
+ : "%s.push(types[%i].decode(r,r.uint32()))", ref, i);
75
+ else gen
76
+ ("%s.push(r.%s())", ref, type);
77
+
78
+ // Non-repeated
79
+ } else if (types.basic[type] === undefined) gen(field.resolvedType.group
80
+ ? "%s=types[%i].decode(r)"
81
+ : "%s=types[%i].decode(r,r.uint32())", ref, i);
82
+ else gen
83
+ ("%s=r.%s()", ref, type);
84
+ gen
85
+ ("break");
86
+ // Unknown fields
87
+ } gen
88
+ ("default:")
89
+ ("r.skipType(t&7)")
90
+ ("break")
91
+
92
+ ("}")
93
+ ("}");
94
+
95
+ // Field presence
96
+ for (i = 0; i < mtype._fieldsArray.length; ++i) {
97
+ var rfield = mtype._fieldsArray[i];
98
+ if (rfield.required) gen
99
+ ("if(!m.hasOwnProperty(%j))", rfield.name)
100
+ ("throw util.ProtocolError(%j,{instance:m})", missing(rfield));
101
+ }
102
+
103
+ return gen
104
+ ("return m");
105
+ /* eslint-enable no-unexpected-multiline */
106
+ }
package/src/encoder.js CHANGED
@@ -1,100 +1,100 @@
1
- "use strict";
2
- module.exports = encoder;
3
-
4
- var Enum = require("./enum"),
5
- types = require("./types"),
6
- util = require("./util");
7
-
8
- /**
9
- * Generates a partial message type encoder.
10
- * @param {Codegen} gen Codegen instance
11
- * @param {Field} field Reflected field
12
- * @param {number} fieldIndex Field index
13
- * @param {string} ref Variable reference
14
- * @returns {Codegen} Codegen instance
15
- * @ignore
16
- */
17
- function genTypePartial(gen, field, fieldIndex, ref) {
18
- return field.resolvedType.group
19
- ? gen("types[%i].encode(%s,w.uint32(%i)).uint32(%i)", fieldIndex, ref, (field.id << 3 | 3) >>> 0, (field.id << 3 | 4) >>> 0)
20
- : gen("types[%i].encode(%s,w.uint32(%i).fork()).ldelim()", fieldIndex, ref, (field.id << 3 | 2) >>> 0);
21
- }
22
-
23
- /**
24
- * Generates an encoder specific to the specified message type.
25
- * @param {Type} mtype Message type
26
- * @returns {Codegen} Codegen instance
27
- */
28
- function encoder(mtype) {
29
- /* eslint-disable no-unexpected-multiline, block-scoped-var, no-redeclare */
30
- var gen = util.codegen(["m", "w"], mtype.name + "$encode")
31
- ("if(!w)")
32
- ("w=Writer.create()");
33
-
34
- var i, ref;
35
-
36
- // "when a message is serialized its known fields should be written sequentially by field number"
37
- var fields = /* initializes */ mtype.fieldsArray.slice().sort(util.compareFieldsById);
38
-
39
- for (var i = 0; i < fields.length; ++i) {
40
- var field = fields[i].resolve(),
41
- index = mtype._fieldsArray.indexOf(field),
42
- type = field.resolvedType instanceof Enum ? "int32" : field.type,
43
- wireType = types.basic[type];
44
- ref = "m" + util.safeProp(field.name);
45
-
46
- // Map fields
47
- if (field.map) {
48
- gen
49
- ("if(%s!=null&&m.hasOwnProperty(%j)){", ref, field.name) // !== undefined && !== null
50
- ("for(var ks=Object.keys(%s),i=0;i<ks.length;++i){", ref)
51
- ("w.uint32(%i).fork().uint32(%i).%s(ks[i])", (field.id << 3 | 2) >>> 0, 8 | types.mapKey[field.keyType], field.keyType);
52
- if (wireType === undefined) gen
53
- ("types[%i].encode(%s[ks[i]],w.uint32(18).fork()).ldelim().ldelim()", index, ref); // can't be groups
54
- else gen
55
- (".uint32(%i).%s(%s[ks[i]]).ldelim()", 16 | wireType, type, ref);
56
- gen
57
- ("}")
58
- ("}");
59
-
60
- // Repeated fields
61
- } else if (field.repeated) { gen
62
- ("if(%s!=null&&%s.length){", ref, ref); // !== undefined && !== null
63
-
64
- // Packed repeated
65
- if (field.packed && types.packed[type] !== undefined) { gen
66
-
67
- ("w.uint32(%i).fork()", (field.id << 3 | 2) >>> 0)
68
- ("for(var i=0;i<%s.length;++i)", ref)
69
- ("w.%s(%s[i])", type, ref)
70
- ("w.ldelim()");
71
-
72
- // Non-packed
73
- } else { gen
74
-
75
- ("for(var i=0;i<%s.length;++i)", ref);
76
- if (wireType === undefined)
77
- genTypePartial(gen, field, index, ref + "[i]");
78
- else gen
79
- ("w.uint32(%i).%s(%s[i])", (field.id << 3 | wireType) >>> 0, type, ref);
80
-
81
- } gen
82
- ("}");
83
-
84
- // Non-repeated
85
- } else {
86
- if (field.optional) gen
87
- ("if(%s!=null&&m.hasOwnProperty(%j))", ref, field.name); // !== undefined && !== null
88
-
89
- if (wireType === undefined)
90
- genTypePartial(gen, field, index, ref);
91
- else gen
92
- ("w.uint32(%i).%s(%s)", (field.id << 3 | wireType) >>> 0, type, ref);
93
-
94
- }
95
- }
96
-
97
- return gen
98
- ("return w");
99
- /* eslint-enable no-unexpected-multiline, block-scoped-var, no-redeclare */
100
- }
1
+ "use strict";
2
+ module.exports = encoder;
3
+
4
+ var Enum = require("./enum"),
5
+ types = require("./types"),
6
+ util = require("./util");
7
+
8
+ /**
9
+ * Generates a partial message type encoder.
10
+ * @param {Codegen} gen Codegen instance
11
+ * @param {Field} field Reflected field
12
+ * @param {number} fieldIndex Field index
13
+ * @param {string} ref Variable reference
14
+ * @returns {Codegen} Codegen instance
15
+ * @ignore
16
+ */
17
+ function genTypePartial(gen, field, fieldIndex, ref) {
18
+ return field.resolvedType.group
19
+ ? gen("types[%i].encode(%s,w.uint32(%i)).uint32(%i)", fieldIndex, ref, (field.id << 3 | 3) >>> 0, (field.id << 3 | 4) >>> 0)
20
+ : gen("types[%i].encode(%s,w.uint32(%i).fork()).ldelim()", fieldIndex, ref, (field.id << 3 | 2) >>> 0);
21
+ }
22
+
23
+ /**
24
+ * Generates an encoder specific to the specified message type.
25
+ * @param {Type} mtype Message type
26
+ * @returns {Codegen} Codegen instance
27
+ */
28
+ function encoder(mtype) {
29
+ /* eslint-disable no-unexpected-multiline, block-scoped-var, no-redeclare */
30
+ var gen = util.codegen(["m", "w"], mtype.name + "$encode")
31
+ ("if(!w)")
32
+ ("w=Writer.create()");
33
+
34
+ var i, ref;
35
+
36
+ // "when a message is serialized its known fields should be written sequentially by field number"
37
+ var fields = /* initializes */ mtype.fieldsArray.slice().sort(util.compareFieldsById);
38
+
39
+ for (var i = 0; i < fields.length; ++i) {
40
+ var field = fields[i].resolve(),
41
+ index = mtype._fieldsArray.indexOf(field),
42
+ type = field.resolvedType instanceof Enum ? "int32" : field.type,
43
+ wireType = types.basic[type];
44
+ ref = "m" + util.safeProp(field.name);
45
+
46
+ // Map fields
47
+ if (field.map) {
48
+ gen
49
+ ("if(%s!=null&&Object.hasOwnProperty.call(m,%j)){", ref, field.name) // !== undefined && !== null
50
+ ("for(var ks=Object.keys(%s),i=0;i<ks.length;++i){", ref)
51
+ ("w.uint32(%i).fork().uint32(%i).%s(ks[i])", (field.id << 3 | 2) >>> 0, 8 | types.mapKey[field.keyType], field.keyType);
52
+ if (wireType === undefined) gen
53
+ ("types[%i].encode(%s[ks[i]],w.uint32(18).fork()).ldelim().ldelim()", index, ref); // can't be groups
54
+ else gen
55
+ (".uint32(%i).%s(%s[ks[i]]).ldelim()", 16 | wireType, type, ref);
56
+ gen
57
+ ("}")
58
+ ("}");
59
+
60
+ // Repeated fields
61
+ } else if (field.repeated) { gen
62
+ ("if(%s!=null&&%s.length){", ref, ref); // !== undefined && !== null
63
+
64
+ // Packed repeated
65
+ if (field.packed && types.packed[type] !== undefined) { gen
66
+
67
+ ("w.uint32(%i).fork()", (field.id << 3 | 2) >>> 0)
68
+ ("for(var i=0;i<%s.length;++i)", ref)
69
+ ("w.%s(%s[i])", type, ref)
70
+ ("w.ldelim()");
71
+
72
+ // Non-packed
73
+ } else { gen
74
+
75
+ ("for(var i=0;i<%s.length;++i)", ref);
76
+ if (wireType === undefined)
77
+ genTypePartial(gen, field, index, ref + "[i]");
78
+ else gen
79
+ ("w.uint32(%i).%s(%s[i])", (field.id << 3 | wireType) >>> 0, type, ref);
80
+
81
+ } gen
82
+ ("}");
83
+
84
+ // Non-repeated
85
+ } else {
86
+ if (field.optional) gen
87
+ ("if(%s!=null&&Object.hasOwnProperty.call(m,%j))", ref, field.name); // !== undefined && !== null
88
+
89
+ if (wireType === undefined)
90
+ genTypePartial(gen, field, index, ref);
91
+ else gen
92
+ ("w.uint32(%i).%s(%s)", (field.id << 3 | wireType) >>> 0, type, ref);
93
+
94
+ }
95
+ }
96
+
97
+ return gen
98
+ ("return w");
99
+ /* eslint-enable no-unexpected-multiline, block-scoped-var, no-redeclare */
100
+ }