protobufjs 5.0.1 → 5.0.2

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 (170) hide show
  1. package/.travis.yml +2 -1
  2. package/README.md +144 -22
  3. package/bin/pbjs +2 -2
  4. package/bower.json +2 -2
  5. package/cli/pbjs/targets/amd.js +1 -1
  6. package/cli/pbjs/targets/json.js +8 -0
  7. package/cli/pbjs/util.js +1 -1
  8. package/cli/pbjs.js +1 -1
  9. package/dist/protobuf-light.js +166 -128
  10. package/dist/protobuf-light.min.js +88 -81
  11. package/dist/protobuf-light.min.js.gz +0 -0
  12. package/dist/protobuf-light.min.map +4 -4
  13. package/dist/protobuf.js +171 -129
  14. package/dist/protobuf.min.js +106 -98
  15. package/dist/protobuf.min.js.gz +0 -0
  16. package/dist/protobuf.min.map +4 -4
  17. package/docs/ProtoBuf.Builder.Message.html +1408 -971
  18. package/docs/ProtoBuf.Builder.Service.html +266 -197
  19. package/docs/ProtoBuf.Builder.html +758 -542
  20. package/docs/ProtoBuf.DotProto.Parser.html +223 -161
  21. package/docs/ProtoBuf.DotProto.Tokenizer.html +344 -248
  22. package/docs/ProtoBuf.DotProto.html +20 -12
  23. package/docs/ProtoBuf.Element.html +554 -554
  24. package/docs/ProtoBuf.Map.html +158 -123
  25. package/docs/ProtoBuf.Reflect.Element.html +286 -143
  26. package/docs/ProtoBuf.Reflect.Enum.Value.html +329 -228
  27. package/docs/ProtoBuf.Reflect.Enum.html +757 -537
  28. package/docs/ProtoBuf.Reflect.Extension.html +73 -56
  29. package/docs/ProtoBuf.Reflect.Message.ExtensionField.html +1013 -740
  30. package/docs/ProtoBuf.Reflect.Message.Field.html +926 -649
  31. package/docs/ProtoBuf.Reflect.Message.OneOf.html +327 -245
  32. package/docs/ProtoBuf.Reflect.Message.html +915 -651
  33. package/docs/ProtoBuf.Reflect.Namespace.html +648 -447
  34. package/docs/ProtoBuf.Reflect.Service.Method.html +363 -251
  35. package/docs/ProtoBuf.Reflect.Service.RPCMethod.html +545 -397
  36. package/docs/ProtoBuf.Reflect.Service.html +721 -511
  37. package/docs/ProtoBuf.Reflect.T.html +268 -197
  38. package/docs/ProtoBuf.Reflect.html +20 -12
  39. package/docs/ProtoBuf.Util.html +169 -118
  40. package/docs/ProtoBuf.html +840 -628
  41. package/docs/ProtoBuf.js.html +177 -134
  42. package/docs/fonts/OpenSans-Bold-webfont.eot +0 -0
  43. package/docs/fonts/OpenSans-Bold-webfont.svg +1830 -0
  44. package/docs/fonts/OpenSans-Bold-webfont.woff +0 -0
  45. package/docs/fonts/OpenSans-BoldItalic-webfont.eot +0 -0
  46. package/docs/fonts/OpenSans-BoldItalic-webfont.svg +1830 -0
  47. package/docs/fonts/OpenSans-BoldItalic-webfont.woff +0 -0
  48. package/docs/fonts/OpenSans-Italic-webfont.eot +0 -0
  49. package/docs/fonts/OpenSans-Italic-webfont.svg +1830 -0
  50. package/docs/fonts/OpenSans-Italic-webfont.woff +0 -0
  51. package/docs/fonts/OpenSans-Light-webfont.eot +0 -0
  52. package/docs/fonts/OpenSans-Light-webfont.svg +1831 -0
  53. package/docs/fonts/OpenSans-Light-webfont.woff +0 -0
  54. package/docs/fonts/OpenSans-LightItalic-webfont.eot +0 -0
  55. package/docs/fonts/OpenSans-LightItalic-webfont.svg +1835 -0
  56. package/docs/fonts/OpenSans-LightItalic-webfont.woff +0 -0
  57. package/docs/fonts/OpenSans-Regular-webfont.eot +0 -0
  58. package/docs/fonts/OpenSans-Regular-webfont.svg +1831 -0
  59. package/docs/fonts/OpenSans-Regular-webfont.woff +0 -0
  60. package/docs/index.html +7 -5
  61. package/docs/styles/jsdoc-default.css +95 -75
  62. package/docs/styles/prettify-tomorrow.css +1 -1
  63. package/examples/protoify/json.js +123 -123
  64. package/examples/protoify/json.json +123 -123
  65. package/examples/websocket/server.js +4 -4
  66. package/externs/protobuf.js +1 -1
  67. package/jsdoc.json +1 -1
  68. package/package.json +2 -2
  69. package/scripts/build.js +53 -53
  70. package/src/ProtoBuf/Builder/Message.js +9 -5
  71. package/src/ProtoBuf/Builder.js +19 -2
  72. package/src/ProtoBuf/DotProto/Parser.js +5 -1
  73. package/src/ProtoBuf/Reflect/Element.js +13 -1
  74. package/src/ProtoBuf/Reflect/Message/Field.js +2 -2
  75. package/src/ProtoBuf/Reflect/Message.js +6 -1
  76. package/src/ProtoBuf/Util.js +116 -116
  77. package/src/bower.json +1 -1
  78. package/src/google/protobuf/descriptor.json +27 -1
  79. package/tests/bench.txt +373 -373
  80. package/tests/complex.json +8 -1
  81. package/tests/custom-options.json +169 -169
  82. package/tests/extend.json +71 -71
  83. package/tests/imports.json +83 -83
  84. package/tests/nodeunit-browser/nodeunit.css +70 -70
  85. package/tests/nodeunit-browser/nodeunit.js +2108 -2108
  86. package/tests/options.json +32 -32
  87. package/tests/proto2js/Bar.json +46 -46
  88. package/tests/suite.js +43 -1
  89. package/sandbox/gapi/googleapis/google/api/annotations.proto +0 -29
  90. package/sandbox/gapi/googleapis/google/api/http.proto +0 -245
  91. package/sandbox/gapi/googleapis/google/datastore/v1beta3/datastore.proto +0 -281
  92. package/sandbox/gapi/googleapis/google/datastore/v1beta3/entity.proto +0 -189
  93. package/sandbox/gapi/googleapis/google/datastore/v1beta3/query.proto +0 -281
  94. package/sandbox/gapi/googleapis/google/longrunning/operations.proto +0 -144
  95. package/sandbox/gapi/googleapis/google/protobuf/any.proto +0 -98
  96. package/sandbox/gapi/googleapis/google/protobuf/any_test.proto +0 -41
  97. package/sandbox/gapi/googleapis/google/protobuf/api.proto +0 -201
  98. package/sandbox/gapi/googleapis/google/protobuf/descriptor.proto +0 -773
  99. package/sandbox/gapi/googleapis/google/protobuf/duration.proto +0 -95
  100. package/sandbox/gapi/googleapis/google/protobuf/empty.proto +0 -50
  101. package/sandbox/gapi/googleapis/google/protobuf/field_mask.proto +0 -167
  102. package/sandbox/gapi/googleapis/google/protobuf/map_lite_unittest.proto +0 -130
  103. package/sandbox/gapi/googleapis/google/protobuf/map_proto2_unittest.proto +0 -60
  104. package/sandbox/gapi/googleapis/google/protobuf/map_unittest.proto +0 -129
  105. package/sandbox/gapi/googleapis/google/protobuf/map_unittest_proto3.proto +0 -120
  106. package/sandbox/gapi/googleapis/google/protobuf/source_context.proto +0 -47
  107. package/sandbox/gapi/googleapis/google/protobuf/struct.proto +0 -94
  108. package/sandbox/gapi/googleapis/google/protobuf/timestamp.proto +0 -107
  109. package/sandbox/gapi/googleapis/google/protobuf/type.proto +0 -176
  110. package/sandbox/gapi/googleapis/google/protobuf/unittest.proto +0 -878
  111. package/sandbox/gapi/googleapis/google/protobuf/unittest_arena.proto +0 -46
  112. package/sandbox/gapi/googleapis/google/protobuf/unittest_custom_options.proto +0 -394
  113. package/sandbox/gapi/googleapis/google/protobuf/unittest_drop_unknown_fields.proto +0 -58
  114. package/sandbox/gapi/googleapis/google/protobuf/unittest_embed_optimize_for.proto +0 -51
  115. package/sandbox/gapi/googleapis/google/protobuf/unittest_empty.proto +0 -38
  116. package/sandbox/gapi/googleapis/google/protobuf/unittest_enormous_descriptor.proto +0 -1048
  117. package/sandbox/gapi/googleapis/google/protobuf/unittest_import.proto +0 -66
  118. package/sandbox/gapi/googleapis/google/protobuf/unittest_import_lite.proto +0 -52
  119. package/sandbox/gapi/googleapis/google/protobuf/unittest_import_proto3.proto +0 -68
  120. package/sandbox/gapi/googleapis/google/protobuf/unittest_import_public.proto +0 -41
  121. package/sandbox/gapi/googleapis/google/protobuf/unittest_import_public_lite.proto +0 -43
  122. package/sandbox/gapi/googleapis/google/protobuf/unittest_import_public_proto3.proto +0 -42
  123. package/sandbox/gapi/googleapis/google/protobuf/unittest_lite.proto +0 -385
  124. package/sandbox/gapi/googleapis/google/protobuf/unittest_lite_imports_nonlite.proto +0 -44
  125. package/sandbox/gapi/googleapis/google/protobuf/unittest_mset.proto +0 -82
  126. package/sandbox/gapi/googleapis/google/protobuf/unittest_mset_wire_format.proto +0 -52
  127. package/sandbox/gapi/googleapis/google/protobuf/unittest_no_arena.proto +0 -202
  128. package/sandbox/gapi/googleapis/google/protobuf/unittest_no_arena_import.proto +0 -37
  129. package/sandbox/gapi/googleapis/google/protobuf/unittest_no_arena_lite.proto +0 -42
  130. package/sandbox/gapi/googleapis/google/protobuf/unittest_no_field_presence.proto +0 -138
  131. package/sandbox/gapi/googleapis/google/protobuf/unittest_no_generic_services.proto +0 -54
  132. package/sandbox/gapi/googleapis/google/protobuf/unittest_optimize_for.proto +0 -67
  133. package/sandbox/gapi/googleapis/google/protobuf/unittest_preserve_unknown_enum.proto +0 -71
  134. package/sandbox/gapi/googleapis/google/protobuf/unittest_preserve_unknown_enum2.proto +0 -50
  135. package/sandbox/gapi/googleapis/google/protobuf/unittest_proto3.proto +0 -388
  136. package/sandbox/gapi/googleapis/google/protobuf/unittest_proto3_arena.proto +0 -206
  137. package/sandbox/gapi/googleapis/google/protobuf/unittest_well_known_types.proto +0 -112
  138. package/sandbox/gapi/googleapis/google/protobuf/unknown_enum_test.proto +0 -62
  139. package/sandbox/gapi/googleapis/google/protobuf/wrappers.proto +0 -117
  140. package/sandbox/gapi/googleapis/google/rpc/code.proto +0 -190
  141. package/sandbox/gapi/googleapis/google/rpc/error_details.proto +0 -157
  142. package/sandbox/gapi/googleapis/google/rpc/status.proto +0 -90
  143. package/sandbox/gapi/googleapis/google/type/color.proto +0 -163
  144. package/sandbox/gapi/googleapis/google/type/date.proto +0 -43
  145. package/sandbox/gapi/googleapis/google/type/dayofweek.proto +0 -50
  146. package/sandbox/gapi/googleapis/google/type/latlng.proto +0 -36
  147. package/sandbox/gapi/googleapis/google/type/money.proto +0 -40
  148. package/sandbox/gapi/googleapis/google/type/timeofday.proto +0 -42
  149. package/sandbox/gapi/test.js +0 -17
  150. package/sandbox/gapi/test.proto +0 -12
  151. package/sandbox/issue146/MyOptions.proto +0 -28
  152. package/sandbox/issue146/Sample.proto +0 -21
  153. package/sandbox/issue146/main.js +0 -3
  154. package/sandbox/issue147/enum.proto +0 -8
  155. package/sandbox/issue147/main.js +0 -3
  156. package/sandbox/issue182/commands.proto +0 -10
  157. package/sandbox/issue182/execute.js +0 -22
  158. package/sandbox/issue182/session_commands.proto +0 -14
  159. package/sandbox/issue289/A.proto +0 -8
  160. package/sandbox/issue289/B.proto +0 -8
  161. package/sandbox/issue289/common.proto +0 -5
  162. package/sandbox/issue289/main.js +0 -7
  163. package/sandbox/issue300/IAuth.proto +0 -14
  164. package/sandbox/issue300/Request.proto +0 -14
  165. package/sandbox/issue300/main.js +0 -26
  166. package/sandbox/issue347/index.js +0 -27
  167. package/sandbox/issue355/main.proto +0 -15
  168. package/sandbox/issue42/innerextend.proto +0 -18
  169. package/sandbox/issue42/main.js +0 -8
  170. package/sandbox/issue42/outerextend.proto +0 -17
package/.travis.yml CHANGED
@@ -1,5 +1,6 @@
1
1
  language: node_js
2
2
  node_js:
3
3
  - 0.12
4
- - 4.2
4
+ - 4
5
+ - 6
5
6
  sudo: false
package/README.md CHANGED
@@ -1,4 +1,4 @@
1
- ![protobuf.js - Protocol Buffers for JavaScript. Finally.](https://raw.github.com/dcodeIO/protobuf.js/master/protobuf.png)
1
+ protobuf.js 5 [![Build Status](https://travis-ci.org/dcodeIO/protobuf.js.svg?branch=ProtoBuf5)](https://travis-ci.org/dcodeIO/protobuf.js) [![Donate](https://img.shields.io/badge/paypal-donate-yellow.svg)](https://www.paypal.com/cgi-bin/webscr?cmd=_donations&business=dcode%40dcode.io&item_name=%3C3%20protobuf.js)
2
2
  =====================================
3
3
  **Protocol Buffers** are a language-neutral, platform-neutral, extensible way of serializing structured data for use
4
4
  in communications protocols, data storage, and more, originally designed at Google ([see](https://developers.google.com/protocol-buffers/docs/overview)).
@@ -7,13 +7,10 @@ in communications protocols, data storage, and more, originally designed at Goog
7
7
  including a .proto parser, message class building and simple encoding and decoding. There is no compilation step
8
8
  required, it's super easy to use and it works out of the box on .proto files!
9
9
 
10
- [![Build Status](https://travis-ci.org/dcodeIO/protobuf.js.svg?branch=master)](https://travis-ci.org/dcodeIO/protobuf.js)
11
- [![Donate](https://raw.githubusercontent.com/dcodeIO/protobuf.js/master/donate.png)](https://www.paypal.com/cgi-bin/webscr?cmd=_donations&business=dcode%40dcode.io&item_name=%3C3%20protobuf.js)
12
-
13
10
  Getting started
14
11
  ---------------
15
12
  * **Step 1:** Become familar with [Google's Protocol Buffers (protobuf)](https://developers.google.com/protocol-buffers/docs/overview)
16
- * **Step 2:** Head straight to [our wiki for up to date usage information, changes and examples](https://github.com/dcodeIO/protobuf.js/wiki)
13
+ * **Step 2:** Read on or head straight to [our wiki](https://github.com/dcodeIO/protobuf.js/wiki) for additional information
17
14
  * **Step 3:** Build something cool! :-)
18
15
 
19
16
  Features
@@ -28,35 +25,160 @@ Features
28
25
  * Fully compatible to the official implementation including advanced features
29
26
  * proto2js command line utility
30
27
 
28
+ Installation
29
+ ------------
30
+
31
+ ### node.js / CommonJS
32
+
33
+ ```
34
+ $> npm install protobufjs
35
+ ```
36
+
37
+ ```js
38
+ var ProtoBuf = require("protobufjs");
39
+ ...
40
+ ```
41
+
42
+ ### RequireJS / AMD
43
+
44
+ Requires [bytebuffer.js](http://github.com/dcodeIO/bytebuffer.js). Optionally depends on [long.js](https://github.com/dcodeIO/long.js) for long (int64) support. If you do not require long support, you can skip the Long.js config. RequireJS example:
45
+
46
+ ```js
47
+ require(["protobuf"], function(ProtoBuf) {
48
+ ...
49
+ });
50
+ ```
51
+
52
+ Or as a module dependency:
53
+
54
+ ```js
55
+ define("MyModule", ["protobuf"], function(ProtoBuf) {
56
+ ...
57
+ });
58
+ ```
59
+
60
+ ### Browser
61
+
62
+ Requires [bytebuffer.js](http://github.com/dcodeIO/bytebuffer.js). Optionally depends on [long.js](https://github.com/dcodeIO/long.js) for long (int64) support. If you do not require long support, you can skip the Long.js include.
63
+
64
+ ```html
65
+ <!-- Order is important -->
66
+ <script src="long.min.js"></script>
67
+ <script src="bytebuffer.min.js"></script>
68
+ <script src="protobuf.min.js"></script>
69
+ ```
70
+
71
+ ```js
72
+ var ProtoBuf = dcodeIO.ProtoBuf;
73
+ ...
74
+ ```
75
+
76
+ Getting started
77
+ ---------------
78
+
79
+ *Note:* You'll need the full build to load .proto data. light builds are able to load JSON only.
80
+
81
+ ### Loading .proto files
82
+
83
+ To load a .proto file, use:
84
+
85
+ **API:** `ProtoBuf.loadProtoFile(source[, callback[, builder]]):Builder|undefined`
86
+
87
+ ```js
88
+ // Synchronously
89
+ var builder = ProtoBuf.loadProtoFile("path/to/file.proto");
90
+
91
+ // Asynchronously
92
+ ProtoBuf.loadProtoFile("path/to/file.proto", function(err, builder) {
93
+ ...
94
+ });
95
+ ```
96
+
97
+ `ProtoBuf.loadProtoFile` also accepts an object specifying the import root directory and the file to load as its first parameter: `{root: string, file: string}`. Additionally, an already created and then reused builder can be specified as the last argument, which is useful if all the definitions shall reside in a single namespace.
98
+
99
+ ### Loading .proto strings
100
+
101
+ **API:** `ProtoBuf.loadProto(source[, builder][, filename]):Builder`
102
+
103
+ ```js
104
+ var builder = ProtoBuf.loadProto(...protoString..., "myproto.proto");
105
+ ```
106
+
107
+ ### Loading JSON files and strings
108
+
109
+ To load the (raw) JSON counterpart generated through pbjs, use `ProtoBuf.loadJsonFile` respectively `ProtoBuf.loadJson`. It's the same API.
110
+
111
+ If you generated classes or modules with it, loading is done just by including respectively requiring the resulting file. Loading is handled transparently in this case.
112
+
113
+ When using JSON only, you can use protobuf-light.js or protobuf-light.min.js instead, which do NOT include the ProtoBuf.DotProto package for parsing and are therefore smaller.
114
+
115
+ Command line
116
+ ------------
117
+ Since ProtoBuf.js 4.0.0 the library ships with the `pbjs` command line utility. With it it's possible to convert between .proto and JSON descriptors and even to generate the code required to access runtime structures as pure JS (classes), an AMD module or a CommonJS module.
118
+
119
+ ```
120
+
121
+ _ |_ . _
122
+ |_)|_)|_) ProtoBuf.js v4.0.0-b3 https://github.com/dcodeIO/ProtoBuf.js
123
+ | '
124
+
125
+ CLI utility to convert between .proto and JSON syntax / to generate classes.
126
+
127
+ Usage: pbjs <filename> [options] [> outFile]
128
+
129
+ Options:
130
+ --help, -h Show help [boolean]
131
+ --version, -v Show version number [boolean]
132
+ --source, -s Specifies the source format. Valid formats are:
133
+
134
+ json Plain JSON descriptor
135
+ proto Plain .proto descriptor
136
+
137
+ --target, -t Specifies the target format. Valid formats are:
138
+
139
+ amd Runtime structures as AMD module
140
+ commonjs Runtime structures as CommonJS module
141
+ js Runtime structures
142
+ json Plain JSON descriptor
143
+ proto Plain .proto descriptor
144
+
145
+ --using, -u Specifies an option to apply to the volatile builder
146
+ loading the source, e.g. convertFieldsToCamelCase.
147
+ --min, -m Minifies the output. [default: false]
148
+ --path, -p Adds a directory to the include path.
149
+ --legacy, -l Includes legacy descriptors from google/protobuf/ if
150
+ explicitly referenced. [default: false]
151
+ --quiet, -q Suppresses any informatory output to stderr. [default: false]
152
+ --use, -i Specifies an option to apply to the emitted builder
153
+ utilized by your program, e.g. populateAccessors.
154
+ --exports, -e Specifies the namespace to export. Defaults to export
155
+ the root namespace.
156
+ --dependency, -d Library dependency to use when generating classes.
157
+ Defaults to 'protobufjs' for CommonJS, 'ProtoBuf' for
158
+ AMD modules and 'dcodeIO.ProtoBuf' for classes.
159
+ ```
160
+
31
161
  Documentation
32
162
  -------------
33
163
  * [Read the official protobuf guide](https://developers.google.com/protocol-buffers/docs/overview)
34
- * [Read our wiki](https://github.com/dcodeIO/protobuf.js/wiki)
35
- * [Read the API docs](http://htmlpreview.github.io/?https://raw.githubusercontent.com/dcodeIO/protobuf.js/master/docs/ProtoBuf.html)
36
- * [Check out the examples](https://github.com/dcodeIO/protobuf.js/tree/master/examples)
164
+ * [Read the API docs](http://htmlpreview.github.io/?https://raw.githubusercontent.com/dcodeIO/protobuf.js/ProtoBuf5/docs/ProtoBuf.html)
165
+ * [Check out the examples](https://github.com/dcodeIO/protobuf.js/tree/ProtoBuf5/examples)
37
166
 
38
167
  Tests
39
168
  -----
40
- * [View source](https://github.com/dcodeIO/protobuf.js/blob/master/tests/suite.js)
41
- * [View report](https://travis-ci.org/dcodeIO/protobuf.js)
169
+ * [View source](https://github.com/dcodeIO/protobuf.js/blob/ProtoBuf5/tests/suite.js)
42
170
 
43
171
  Downloads
44
172
  ---------
45
- * [Distributions](https://github.com/dcodeIO/protobuf.js/tree/master/dist)
46
- * [ZIP-Archive](https://github.com/dcodeIO/protobuf.js/archive/master.zip)
47
- * [Tarball](https://github.com/dcodeIO/protobuf.js/tarball/master)
173
+ * [Distributions](https://github.com/dcodeIO/protobuf.js/tree/ProtoBuf5/dist)
174
+ * [ZIP-Archive](https://github.com/dcodeIO/protobuf.js/archive/ProtoBuf5.zip)
175
+ * [Tarball](https://github.com/dcodeIO/protobuf.js/tarball/ProtoBuf5)
48
176
 
49
177
  CDN usage
50
178
  ---------
51
179
  ```html
52
- <script src="//cdn.rawgit.com/dcodeIO/protobuf.js/VERSION/dist/protobuf.js"></script>
180
+ <script src="//cdn.rawgit.com/dcodeIO/protobuf.js/5.0.1/dist/protobuf.min.js"></script>
53
181
  ```
54
- With `VERSION` replaced by [a valid tag](https://github.com/dcodeIO/protobuf.js/releases) or just `master` for testing
55
- the latest master build.
56
-
57
- Contributors
58
- ------------
59
- [Daniel Wirtz](https://github.com/dcodeIO) (maintainer), [Frank Xu](https://github.com/yyfrankyy),
60
- [Dretch](https://github.com/Dretch), [shirmin](https://github.com/shirmin), [Nikolai Vavilov](https://github.com/seishun)
182
+ With the version pointing to the exact [release](https://github.com/dcodeIO/protobuf.js/releases) your project depends upon.
61
183
 
62
- **License:** [Apache License, Version 2.0](http://www.apache.org/licenses/LICENSE-2.0.html) - Logo derived from [W3C HTML5 Logos](http://www.w3.org/html/logo/) (CC A 3.0)
184
+ **License:** [Apache License, Version 2.0](http://www.apache.org/licenses/LICENSE-2.0.html)
package/bin/pbjs CHANGED
@@ -1,2 +1,2 @@
1
- #!/usr/bin/env node
2
- process.exit(require(__dirname+"/../cli/pbjs.js").main(process.argv));
1
+ #!/usr/bin/env node
2
+ process.exit(require(__dirname+"/../cli/pbjs.js").main(process.argv));
package/bower.json CHANGED
@@ -1,12 +1,12 @@
1
1
  {
2
2
  "name": "protobuf",
3
3
  "description": "Protocol Buffers for JavaScript. Finally.",
4
- "version": "5.0.1",
4
+ "version": "5.0.2",
5
5
  "main": "dist/protobuf.js",
6
6
  "license": "Apache-2.0",
7
7
  "homepage": "http://dcode.io/",
8
8
  "dependencies": {
9
- "bytebuffer": "~3"
9
+ "bytebuffer": "~5"
10
10
  },
11
11
  "keywords": ["net", "buffer", "protobuf", "serialization", "bytebuffer", "websocket", "webrtc"],
12
12
  "ignore": [
@@ -30,7 +30,7 @@ var ProtoBuf = require("../../../index.js"),
30
30
  var amd = module.exports = function(builder, options) {
31
31
  options = options || {};
32
32
  return [
33
- "define([", JSON.stringify(options.dependency || "ProtoBuf"), "]", options.min ? "," : ", ",
33
+ "define([", JSON.stringify(options.dependency || "protobuf"), "]", options.min ? "," : ", ",
34
34
  "function(ProtoBuf)", options.min ? "{" : " {\n ",
35
35
  "return ProtoBuf",
36
36
  util.indent(js.build(builder, options), options.min ? "" : " "), options.min ? "" : "\n",
@@ -58,11 +58,14 @@ json.description = description;
58
58
  function buildNamespace(ns, out) {
59
59
  var messages, enums, services;
60
60
  util.extend(out, {
61
+ "syntax" : ns.syntax || 'proto2',
61
62
  "options" : out.options || {},
62
63
  "messages" : messages = [],
63
64
  "enums" : enums = [],
64
65
  "services" : services = []
65
66
  });
67
+ if (!(ns instanceof ProtoBuf.Reflect.Message))
68
+ out['isNamespace'] = true;
66
69
  util.extend(out["options"], buildOptions(ns.options));
67
70
  ns.getChildren(ProtoBuf.Reflect.Enum).forEach(function(enm) {
68
71
  enums.push(buildEnum(enm));
@@ -131,6 +134,7 @@ function buildOptions(options) {
131
134
  case 'string':
132
135
  case 'number':
133
136
  case 'boolean':
137
+ case 'object':
134
138
  break;
135
139
  default:
136
140
  throw Error("Illegal option type: "+typeof(val));
@@ -148,6 +152,7 @@ function buildMessage(msg) {
148
152
  var fields, oneofs;
149
153
  var out = {
150
154
  "name" : msg.name,
155
+ "syntax" : msg.syntax || 'proto2',
151
156
  "options" : {},
152
157
  "fields" : fields = [],
153
158
  "oneofs" : oneofs = {}
@@ -207,6 +212,7 @@ function buildEnum(enm) {
207
212
  var values;
208
213
  var out = {
209
214
  "name" : enm.name,
215
+ "syntax" : enm.syntax || 'proto2',
210
216
  "values" : values = []
211
217
  };
212
218
  enm.getChildren(ProtoBuf.Reflect.Enum.Value).forEach(function(val) {
@@ -244,7 +250,9 @@ function buildService(svc) {
244
250
  svc.getChildren(ProtoBuf.Reflect.Service.RPCMethod).forEach(function(mtd) {
245
251
  rpc[mtd.name] = {
246
252
  "request": svc.qn(mtd.resolvedRequestType),
253
+ "request_stream": mtd.requestStream,
247
254
  "response": svc.qn(mtd.resolvedResponseType),
255
+ "response_stream": mtd.responseStream,
248
256
  "options": buildOptions(mtd.options)
249
257
  };
250
258
  });
package/cli/pbjs/util.js CHANGED
@@ -124,5 +124,5 @@ util.groupExtensions = function(ns) {
124
124
  * @returns {boolean}
125
125
  */
126
126
  util.isDescriptor = function(name) {
127
- return /^google\/protobuf\//.test(name);
127
+ return /^google\/protobuf\/descriptor/.test(name);
128
128
  };
package/cli/pbjs.js CHANGED
@@ -175,7 +175,7 @@ pbjs.main = function(argv) {
175
175
  },
176
176
  dependency: {
177
177
  alias: "d",
178
- describe: "Library dependency to use when generating classes.\nDefaults to 'protobufjs' for CommonJS, 'ProtoBuf' for\nAMD modules and 'dcodeIO.ProtoBuf' for classes."
178
+ describe: "Library dependency to use when generating classes.\nDefaults to 'protobufjs' for CommonJS, 'protobuf' for\nAMD modules and 'dcodeIO.ProtoBuf' for classes."
179
179
  }
180
180
  })
181
181
  .alias("help", "h")