- match: pass a depth argument to selector predicates (af15939)
- tests: delete unused var (f10902a)
- ci: reinstate tests in node 9 (7cd2594)
- ci: temporarily disable tests in node 9 (e27ccd0)
- eventify: distinguish between syntax and operational errors (e7bc23d)
- walk: distinguish between syntax and operational errors (419ddae)
- streams: expose a highWaterMark option (626f755)
- match: implement a streaming match api (e2e320d)
- docs: note the end of node-4 maintenance (0a32090)
- unpipe: prohibit unpipe from setting the ndjson option (90b61c6)
- walk: add support for NDJSON streams (e87672a)
- docs: document the pause and resume functions on event emitters (bfdf152)
- lint: silence warning (761bad4)
- package: update dev dependencies (396cc40)
- docs: link to bfj-collections (11eacb8)
- walk: handle stream errors sanely (9fe21ff)
- deps: update dev dependencies (c1d0518)
- ci: run tests in node 9 (222356e)
- deps: update dev dependencies (be54dbf)
- fix: extra paragraph about why bfj is slow (e51ca34)
- fix: expand possible causes of the error event (8d1d352)
- feature: add a pause method to the walk emitter (a4cd0e0)
- fix: replace old mockery link with proxyquire (e6b3924)
- chore: delete redundant teardowns (52040a6)
- fix: catch errors from user code (b8103e4)
- chore: remove extra trailing newlines (fa561e2)
- feature: allow callers to pass in the Promise constructor (aa5a664)
- refactor: better names for the option-mangling functions (5eb2e4e)
- fix: ditch mockery in favour of proxyquire (01a9177)
- breaking change: return bluebird promises instead of native (c80fe0f)
- fix: clear the yield counter when unpausing (9d5c95d)
- chore: reduce the buffer length (9abd435)
- chore: update deps (c3eeeb4)
- fix: eliminate costly string concatenation (42998d7)
- fix: micro-optimise eventify::proceed::after (98a2519)
- fix: micro-optimise walk::character (8d1c4cf)
- fix: silence obnoxious unhandled rejection warnings (1d4a902)
- refactor: discard chunks more aggressively (970a964)
- chore: add a unit test for parallel object references (e8f3895)
- chore: update check-types (c0bc551)
- fix: shortcut primitive coercion (c6381b5)
- fix: shortcut coercions (d9a9676)
- fix: eliminate unnecessary indirection in promise coercion (c63e81f)
- fix: yield rather than grow when buffer is filled (a3cc7e6)
- feature: add a bufferLength option (3b560f9)
- fix: document improved performance from disabling coercions (25eecc7)
- fix: fix lint errors (a85f7c0)
- fix: fix links in readme (90d7a0b)
- fix: pop references on exiting collections (c13eaf4)
- fix: eliminate sequential reference look-up (d622893)
- chore: add a couple of sentences on speed (ae8994d)
- fix: update node support in the readme (61c41f4)
- fix: reject if fs.createReadStream throws (4840938)
- fix: test on node 8 (371807b)
- feature: add a yieldRate option to the parsing functions (35bd20b)
- fix: set minimum required node version (db58b47)
- breaking change: revert to strings from circular arrays in walk (ccda677)
- feature: add yieldRate option to control events per tick (419247b)
- chore: increase the default discard threshold (751aa6c)
- fix: add options to example code (5c207dd)
- chore: update authors (cdf2b7d)
- chore: bump up the default array size to 4mb (4a2fe55)
- fix: fix stupid memory consumption bug (d2b6fe2)
- fix: eliminate needless per-character chunking in streamify (a7fcc2f)
- fix: eliminate duplicated readme section (283b3ce)
- fix: document the dropped support for node 4 (6120c9e)
- chore: tweak the readme (040e9be)
- chore: swap out bespoke circular array for hoopy (0ed7986)
- feature: used fixed-length circular array in streamify (e773a94)
- fix: eliminate mockery allowed module warning (b1dc7db)
- chore: fix lint errors (abde4de)
- chore: delete left-over debugging code (b903a27)
- chore: run tests on node 7 (acbb808)
- chore: remove old linter config (62c18ce)
- chore: update dependencies (882c74c)
- chore: add an integration test that parses a request (029afdb)
- chore: fix the broken perf test (8ac0e03)
- chore: add a crude memory-profiling script (1ee6f36)
- breaking change: preallocate memory to avoid out-of-memory conditions (18da753)
- feature: implement unpipe (f8a41d2)
- Fix lint errors.
- Fix "unhandled rejection" warnings.
- Stop throwing errors from promise-returning methods.
- Honour
toJSON
on all objects. - Drop support for Node.js 0.12, switch to ES6.
- Tidy the readme.
- Sanely escape strings when serialising (thanks @rowanmanning).
- Sanely handle
undefined
, functions and symbols.
- Sanely handle circular references in the data when serialising.
- Pass
options
tofs.createReadStream
insideread
. - Fix truncated output bug in
write
.
- Breaking changes:
- Take
Readable
parameter inwalk
. - Return
EventEmitter
fromwalk
. - Return
Promise
fromwrite
.
- Take
- Fix stream termination bug in
streamify
. - Fix missing comma after empty objects and arrays in
streamify
. - Improve tests.
- Add
reviver
option forparse
andread
. - Add
space
option forstreamify
,stringify
andwrite
. - Remove the
debug
option from all functions.
- Implement
eventify
. - Implement
streamify
. - Implement
stringify
. - Implement
write
.
- Initial release.