Please see the original README.md from the source repository for more information.
This is a port of creationix/msgpack-js to support the new MsgPack v5 specification.
- New spec: https://github.com/msgpack/msgpack/blob/master/spec.md
- Old spec: https://github.com/msgpack/msgpack/blob/master/spec-old.md
Please feel free to open issues/pull requests for support/discussion.
$ npm i msgpack-js-v5 --save
var msgpack = require('msgpack-js-v5-ng');var output = msgpack.decode(packed).value;
Since there is no way to encode
undefined inside the msgpack spec, an extension point is
used for this purpose. Specifically, the
fixext 1 type is used with all values being 0
undefined. On the wire, it requires 3 bytes and should looks like this:
0xd4 | 0x00 | 0x00
| is byte separator.
Extensions are encoded/decoded to and from a simple 2-elements array tuple of the form
[type, Buffer]. Where
type is the msgpack extension type identifier and
the raw decoded value.
Special case for
fixext 1 since it will always be 1-byte long a simple
is returned directly instead of wrapping it in node.js
This package will follows
msgpack-js version for the time being. The version string will
simply be appended with
If and when this package diverges from the original, we can start our own versioning. Or
this module could just be merged into the original