protobuf v6.1.0 Release Notes
-
๐ฅ Breaking
โก๏ธ :hash: Removed as-function overload for Reader/Writer, profiler stub, optimized version of Reader#int32 ๐ :hash: Refactored Prototype and inherits away, is now Class and Message for more intuitive documentation and type refs
๐ Fixed
โ :hash: Fixed failing test case on node < 6 ๐ :hash: Fixed serialization order of sfixed64, fixes #536 ๐ :hash: Fixed serialization order of fixed64, fallback to parseInt with no long lib, see #534 ๐ :hash: Actually allow undefined as service method type, fixes #528 ๐ :hash: Do not skip optional delimiter after aggregate options, fixes #520 ๐ :hash: Verify empty base64 encoded strings for bytes fields, see #535 :hash: wrong spell role should be rule ๐ :hash: decodeDelimited always forks if writer is specified, see #531 ๐ :hash: Mimic spec-compliant behaviour in oneof getVirtual, see #523
๐ New
๐ :hash: Initial base64 string support for bytes fields, see #535 ๐ :hash: Initial type-checking verifier, see #526, added to bench out of competition ๐ :hash: Initial loadSync (node only), see #529 ๐ :hash: Initial RPC service implementaion, see #529 ๐ :hash: added 'defaults' option to Prototype#asJSON, see #521 ๐ป :hash: Use Uint8Array pool in browsers, just like node does with buffers ๐ :hash: Also validate map fields, see #526 (this really needs some tests)
CLI
๐ :hash: Added json-module target to pbjs, renamed static to static-module, see #522 โก๏ธ :hash: updated internals and static target to use immutable objects on prototypes
๐ Docs
๐ :hash: Added a couple of alternative signatures, protobuf.load returns promise or undefined, aliased Reader/Writer-as-function signature with Reader/Writer.create for typed dialects, see #518 ๐ :hash: Added variations for Root#load, see #527 :hash: Added benchmark and profile related information to README ๐ :hash: Added service example to README, see #529 โ :hash: README on tests โก๏ธ :hash: Update README/dist to reflect recent changes ๐ :hash: Minimal documentation for micromodules ๐ :hash: Document all the callbacks, see #527 :hash: Documented streaming-rpc example a bit
Other
๐ :hash: Removed the need for triple-slash references in .d.ts by providing a minimal Long interface, see #527, see #530 :hash: Transition to micromodules ๐จ :hash: Refactored argument order of utf8 for plausibility :hash: Restructured reusable micromodules :hash: Can't use Uint8Array#set on node < 6 buffers โ :hash: Test case for #531 ๐ฆ :hash: Safer signaling for synchronous load, see #529 ๐ฆ :hash: Proper end of stream signaling to rpcImpl, see #529 ๐ :hash: Moved event emitter to util, also accepts listener context, see #529 ๐ :hash: Probably the worst form of hiding require programmatically, see #527 ๐ :hash: Attempt to hide require('fs') from webpack, see #527 ๐ :hash: Trying out jsdoc variations, see #527 :hash: by the way, why not include the json->proto functionality into "util"? โก๏ธ :hash: Update proto.js :hash: Automatic profile generation and processing ๐ :hash: Generalized buffer pool and moved it to util :hash: Make shields visible on npm, yey โช :hash: More shields, I love shields, and maybe a workaround for travis timing out when sauce takes forever :hash: Trying SauceLabs with higher concurrency