- Fix #523: respect return value of subscribe function in synchronous case
- Built using assemble.js
- removed setTimeout from Bacon.fromBinder
- Fix #490: throw if non-observable plugged to bus
- Fix #491: takeUntil/flatMapLatest issues with sync sources
- Fix wrapping constants as functions in Bacon.when
- Fix #488: exceptions catched and hidden
- Improve Dispatcher performance (#473)
- Improve side-effect processing performance by reducing array mutation
- Fix #470: unexpected ordering of side effects
- Make
scan
use eager evaluation
- Improve performance (#467)
- Support "on/off" events in Bacon.fromEventTarget (#461)
- Eliminate extra Dispatcher object (#463)
- Fix Source::toString
- Performance and memory footprint improvements (#457)
- Restore Observable::subscribeInternal for backward compat (to be removed in 0.8)
- Performance and memory footprint improvements (#450)
- Merge #413: preserve "this" context in eventTransformer of fromBinder etc
- Fix #447: issue with Property::takeUntil error handling
- Fix #441: check for module.exports
- Changed dispatching of delayed events for improved memory performance
- Fix fromArray.toString (#436)
- Throw Errors instead of strings in asserts (fix #414)
- Fix #409 (invalid characters)
- Fix #399 (double evaluation of lazies with Bus)
- Fix #407 (event duplication in a specific scenario)
- Performance and memory footprint improvements
- Fix #397 (include minified version in npm)
- Fix #394 (never call unbinder twice in fromBinder)
- Fix #353 (flatMapLatest glitch)
- Fix #363 (glitchfree-algorithm bug)
- Fix Bacon.retry (#380)
- Add flatMapWithConcurrencyLimit, flatMapConcat, bufferingThrottle, holdWhen (#324)
- Add Bacon.retry, flatMapError, Bacon.error by @mileskin (#310)
- Improve mergeAll performance by removing recursion (#373)
- Optimizations by @lautis (#370)
- Fix #348: toString problems with jQuery
- Make .log() log the actual values instead of strings, again
- Fix #347: bug related to evaluating (lazy) event values later
- Fix #345: stack overflow with circular setups with Bus
- Fix #338: event duplication bug in a specific scenario
- Call external subscriber callbacks after event transaction is complete
- Remove Bacon.afterTransaction
- Add Bacon.afterTransaction for coordinating timings, in e.g. Bacon.Model
- Fix #331: combineTemplate when Date or RegEx objects are involved
- Fix #315: _.toString for objects that contain enumerable but innaccessible properties (like the HTML hidden field)
- Fix #320, #321: errors thrown when Array.prototype contains extra junk
- Support function construction rules in flatMap(Latest|First) (#306)
- Glitch-free updates (#272)
- toString/inspect implementation (#265)
- Published Bacon._ API including helpers like Bacon._.indexOf
- Include Bacon.version="0.6.22" in dist/Bacon.js (generated in release script)
- Stabilize fromArray in case of subscribe unsubscribing in the middle of the array
- Fix bug in concat with synchronous left stream (#262)
- Fix Property.zip (#260)
- Fix AMD support that was partially broken in 0.6.14
- Allow (object, methodName, args...) syntax in from(Node)Callback
- Allow predicate function in Observable.endOnError
- Add EventStream.sampledBy
- Add Property.startWith
- Simplifications and cleanup
- Fix #240: call accumulator function once per event in
scan
- Fix mergeAll, zipAsArray, zipWith with 0 sources, n-ary syntax
- Fix Bacon.zipAsArray with 0 or 1 sources
- Fix Bacon.when with 0 sources and 0-length patterns
- Fix Bacon.when with Properties (#232)
- Fix laziness of evaluation. Added tests to prevent further regression.
- Re-implemented
combineAsArray
andsampledBy
using Bacon.when
- Fix skipWhile in case of Error events before first match (refix #218)
- Fix #218: EventStream.skipWhile with synchronous sources
- Fix #217: EventStream.scan for synchronous streams
- Simplify skipUntil implementation
- Fix
takeUntil
to work correctly with never-ending stopper (#214)
- Generalize
awaiting
to Properties too
- Fix Property.skipDuplicates: don't ever skip an Initial event (#211)
- Fix sampledBy with stream of functions (#208)
- Fix #206: takeUntil should work with Property as stopper
- Add EventStream.skipWhile, support "Property Bool" instead of predicate function in takeWhile (#204) skipWhile
- Fix Property.take(n) etc in case of a never-ending Property (#205)
- Fix EventStream.skipUntil in case of self-derived stopper
- Re-implement EventStream.takeUntil
- Switch test framework from Jasmine to Mocha
- Fix bug in Bacon.update (#199)
- Added Join Patterns, i.e. Bacon.when and Bacon.update (#167)
- Corrected the name to "bacon" instead of "baconjs" in bower.json, component.json (#197)
- Fix #195: Bacon.mergeAll for empty list should return Bacon.never()
- (#192) Throw runtime error if trying to merge Properties
- Add EventStream.skipUntil (#194)
- Fix #191: End properly even if an exception is thrown (sequentially, take)
- Support n-ary syntax in Bacon.mergeAll and Bacon.zipWith
- Add bower.json (component.json deprecated by bower)
- Generalize
decode
to all Observables (#189)
- Add bufferWithTimeOrCount (#181)
- Add flatMapFirst and debounceImmediate (#132)
- Add reduce/fold (#158)
- Fix #85 Make Property updates atomic (with known limitations)
- Add support for "min" parameter in slidingWindow.
- Fix #163: add support for nulls etc in combineTemplate
- Fix #162: Call Promise.abort() only if the "abort" flag is used
- Support Bacon.Error in Bacon.once, Bacon.fromArray
- Fix #160: Property.scan/debounce/throttle/delay bug with sources like Bacon.once() and Bacon.constant()
- Add AMD support (#154)
- Fix #152: Observable.skip now accepts zero and negative values
- Fix #153: Remove dep on "global" to fix in browsers.
- Fix #151: take(N) should work with N = 0
- generalize combine method to all Observables
- Fix #147: Prevent sending duplicate Errors in case the same Error is routed thru multiple paths.
- Internal change: PropertyDispatcher now used in Property constructor as a default.
- Support constant values to be returned from function f in flatMap
- Fix #148: Handle same subscriber added twice just like two separate subscribers
- Add Bacon.onValues shorthand function
- Fix #146: Avoid catch-rethrow to preserve original stack trace
- #133: Support EventStreams and Properties as arguments of fromCallback, fromNodeCallback
- Fix #142: map(".foo.bar") failed if "foo" was null
- #124: Change combineWith behavior to combine n Observables using n-ary function
- Remove combineAll which had a confusing name and no known uses
- Support constants instead of Observables as arguments of combineAsArray, combineWith
- Add EventStream.zip, Bacon.zipWith, Bacon.zipAsArray
- Removed exception-catching in fromBinder
- Fix #129: error handling bug in fromBinder
- log() does not crash if console or console.log is undefined
- Support Node.js style callbacks using Bacon.fromNodeCallback
- Fix #120: take(n) may be triggered more than n times if event emitter is triggered in onValue callback
- Generally more reliable implementation in case of recursively generated events
- Fix #118: Bus drops all inputs after last consumer of its events is dropped; impossible to re-subscribe
- fromPromise calls .abort() on unsubscribe
- Rename throttle to debounce
- Rename throttle2 to throttle
- Support usage of an EventStream/Property instead of a function as a parameter to flatMap/Latest
- Support optional arguments to Observable.log
- Performance improvements
- #106: Fix stream ending in case an exception is thrown
- #105: Rewrite binder stream factory to compose all others
- add Property.filter(property)
- reject arguments in Property.toProperty
- add Property.sampledBy(property)
- generalize mapEnd to all Observables
- fix bufferWithTime behaviour: output at steady rate as long as there's anything to output
- add throttle2
- Fixed tests too on IE6+
- Fix property extraction (".field") syntax compatibility with IE6-7
- Bus.plug returns function for unplugging
- Fixes possible memory leak in Bus, related to ended streams
- Add
EventStream.awaiting
(ported from Bacon.UI) - #80: Fix handling of
undefined
inskipDuplicates
- Documented Bacon.fromCallback
- Fix bug in case stream values are functions
- API change: event.value is now a function. Allows internal optimization.
- API changes: drop methods switch (use flatMapLatest), do (use doAction), distinctUntilChanged (use skipDuplicates), decorateWith, latestValue
- No external changes. Built with grunt.
- Fix IE8 compatibility issue (Array.prototype.indexOf)
- Fix flatMap/flatMapLatest in case the function returns a Property
- Allow .fromEventTarget to define a custom mapping function
- Add Observable.diff
- Apply correct context in method calls using the dot-methodname form
- Support arrays in combineTemplate
- Add Observable.slidingWindow
- Add Property.scan
- Add optional isEqual argument to skipDuplicates
- Make log() chainable by returning this instead of undefined
- Add Property.throttle, Property.delay
- rename switch->flatMapLatest, do->doAction