- Add testling integration tests.
- Remove dependency on global
setTimeout
. - Change fold such that errors that reach it are thrown.
- remove dependency on eventual & watchables
- Factor out [reducible][https://github.com/Gozala/reducible] abstraction into own package, that way we can avoid most of the API breaks.
- Remove most of the non-essential / not commonly used APIs.
- Remove reduce function in favor of fold with a more useful API.
- Update dependencies
- Improve definition for
arguments
object.
- Define API for lazy creation of reducibles.
- Improvements for print function so that it could handle objects with circular references.
- Fix reduce so that errors thrown by handler are captured and cause rejections in returned promise.
- Add integration for browser based testing using phantomify.
- Removed lots of low level APIs like
transform
,trasformer
,convert
in favor of enhancedreducible
that also takes care of collection normalizations. - Errors no longer require boxing, instances of
Error
-s are treated as exceptions in a collection. Such collections are considered as broken & after error no values will be dispatched. Also emit-ing errors on signal / channel marks them as broken. - End of stream no longer requires boxing, it's just a special data value that indicates end of stream. Anything followed in a collection passed that is ignored, also reducible's will ignore any subsequent values and will return reduced result to signal they've done consuming.
- Adding missing test cases.
- Improvement to a
print
function that now also works in the browser. - New low level utility function reducer that is just a sugar over reducible that takes care of the boilerplate code for stateless transformation functions.
- New normalize utility function that can be used to wrap collections that are not guaranteed to comply to API contracts. Resulting collection is guaranteed to end or error only once and always pass in accumulated value returned in a last iteration.
- Fix bug in hub implementation that was not multiplexing on values that have derived from it like channel for example.
- Break API change for signal / channel.
They no longer throw exceptions on attempts to close or emit more data
instead they return
accumulated
boxed value to signal they're closed. - Implement pipe that can be used to pipe input right to an output (signal / channel / whatever implements emit).
- Add a lot more tests.
- Create index with all end user functions.
- Fix subtle bug in
hub
implementation. - Fix bug in
delay
implementation.
- Fix bug in implementation of
capture
that caused multiple ends. - Implement
delay
utility module. - Fix flatten that in edge cases leaked end of stream before it actually ended.
- Implement lot's of new tests.
- Add transformation support for primitive types.
- Removed JSHint comments.
- Remove experimental modules.
- Implement
zip
function. - Remove dependency on zip package.
- Make
reduce
API on eventuals equivalent of API on values they resolve to.
- Define implementation of
accumulate
for eventual data types.
- Refactor reducers into idiomatic node structure of function per module.
- Document each individual function.
- Implement client http API for reducers.
- Implement clojure like
reductions
function. - Implement experimental
adjust
function. - Implement
concat
for parallel data structures. - Update to eventuals@0.3.0
- Rename channel abstraction to signal and define alternative channel abstraction
- Implement lazy stream abstraction.
- Extend
accumulate
with a default implementation for all values. - Define experimental
Binoid
type. - Define
sequential
decorator. - Implement error handling for reducers.
- Implement
capture
function for error handling. - Implement
hub
function for sharing sequences across multiple consumers. - Make core independent of
promise
abstraction. - Implement
list
type.
- Initial release