1 | ## 3.8.8 (11/28/2020)
|
2 |
|
3 | - Handle sync emit in debounce [#308](https://github.com/kefirjs/kefir/pull/308)
|
4 | ## 3.8.7 (05/16/2020)
|
5 |
|
6 | - Update versions [#293](https://github.com/kefirjs/kefir/pull/293)
|
7 | - Fix flatMapConcat with spawned observable that ends sync [#303](https://github.com/kefirjs/kefir/pull/303)
|
8 |
|
9 | ## 3.8.6 (06/01/2019)
|
10 |
|
11 | - Added missing Flow type definition for `Pool.unplug` method [#289](https://github.com/kefirjs/kefir/pull/289) [@Macil](https://github.com/Macil)
|
12 | - Added "module" field to package.json for Rollup [#290](https://github.com/kefirjs/kefir/pull/290) [@mAAdhaTTah](https://github.com/mAAdhaTTah)
|
13 |
|
14 | ## 3.8.5 (13/09/2018)
|
15 |
|
16 | - A bug causing an exception to be thrown when a flatMapped stream is ended while the flatMap callback returns an ended property was fixed [#281](https://github.com/kefirjs/kefir/pull/281) [@Macil](https://github.com/Macil)
|
17 | - Flow type definitions were improved [#282](https://github.com/kefirjs/kefir/pull/282) [@Macil](https://github.com/Macil)
|
18 |
|
19 | ## 3.8.3 (14/03/2018)
|
20 |
|
21 | - Added ES module build [#251](https://github.com/kefirjs/kefir/pull/251) [@zephraph](https://github.com/zephraph)
|
22 |
|
23 | ## 3.8.2 (05/03/2018)
|
24 |
|
25 | - Fixed a bug in `.flatMapConcat` where values emitted during a delay would get dropped instead of queued. [#274](https://github.com/kefirjs/kefir/pull/274) [@mAAdhaTTah](https://github.com/mAAdhaTTah)
|
26 |
|
27 | ## 3.8.1 (06/01/2018)
|
28 |
|
29 | - Flow type definitions were fixed to be compatible with Flow v0.62.0 [#269](https://github.com/kefirjs/kefir/pull/269) [@hallettj](https://github.com/hallettj)
|
30 |
|
31 | ## 3.8.0 (27/10/2017)
|
32 |
|
33 | - New method `.thru` [#257](https://github.com/kefirjs/kefir/pull/257) [@mAAdhaTTah](https://github.com/mAAdhaTTah)
|
34 |
|
35 | ## 3.7.4 (25/08/2017)
|
36 |
|
37 | - A bug in `.take` / `.takeErrors` was fixed [#244](https://github.com/kefirjs/kefir/pull/244) [@mAAdhaTTah](https://github.com/mAAdhaTTah)
|
38 |
|
39 | ## 3.7.3 (17/07/2017)
|
40 |
|
41 | - A bug in Flow definitions was fixed [#245](https://github.com/kefirjs/kefir/issues/245)
|
42 |
|
43 | ## 3.7.2 (27/05/2017)
|
44 |
|
45 | - Flow definitions improved [#242](https://github.com/kefirjs/kefir/pull/242) [@hallettj](https://github.com/hallettj)
|
46 |
|
47 | ## 3.7.1 (21/01/2017)
|
48 |
|
49 | - The `.setName` method has been added to Flow definitions [#232](https://github.com/kefirjs/kefir/pull/232) [@mAAdhaTTah](https://github.com/mAAdhaTTah)
|
50 |
|
51 | ## 3.7.0 (31/12/2016)
|
52 |
|
53 | - The `.combine` method now can also accept objects instead of arrays [#225](https://github.com/kefirjs/kefir/pull/225) [@32bitkid](https://github.com/32bitkid)
|
54 |
|
55 | ## 3.6.1 (29/11/2016)
|
56 |
|
57 | - Flow definitions fixed and updated to be compatible with Flow 0.36 [#229](https://github.com/kefirjs/kefir/pull/229) [@Macil](https://github.com/Macil)
|
58 |
|
59 | ## 3.6.0 (19/10/2016)
|
60 |
|
61 | - New methods `.spy` and `.offSpy` [#222](https://github.com/kefirjs/kefir/pull/222) [@32bitkid](https://github.com/32bitkid)
|
62 |
|
63 | ## 3.5.2 (07/10/2016)
|
64 |
|
65 | - Flow definition for `flatMapConcurLimit` fixed [#221](https://github.com/kefirjs/kefir/pull/221) [@32bitkid](https://github.com/32bitkid)
|
66 |
|
67 | ## 3.5.1 (29/08/2016)
|
68 |
|
69 | - `.filter(Bolean)` support in Flow definitions [#218](https://github.com/kefirjs/kefir/pull/218) [@Macil](https://github.com/Macil)
|
70 |
|
71 | ## 3.5.0 (29/08/2016)
|
72 |
|
73 | - Flow types are now included in NPM package [#217](https://github.com/kefirjs/kefir/pull/217) [@Macil](https://github.com/Macil)
|
74 |
|
75 | ## 3.4.0 (17/08/2016)
|
76 |
|
77 | - [Static Land](https://github.com/kefirjs/static-land) support added.
|
78 |
|
79 | ## 3.3.0 (16/07/2016)
|
80 |
|
81 | - New method `.observe` [#151](https://github.com/kefirjs/kefir/issues/151) [#221](https://github.com/kefirjs/kefir/pull/211) [@mAAdhaTTah](https://github.com/mAAdhaTTah)
|
82 | - Emitter methods renamed `emit → value`, `emitEvent → event` (old names will work as well for now)
|
83 |
|
84 | ## 3.2.6 (5/07/2016)
|
85 |
|
86 | - `stream[Symbol.observable]().subscribe()` now returns an object instead of `unsub` function [#212](https://github.com/kefirjs/kefir/pull/212)
|
87 | - `stream[Symbol.observable]().subscribe` now supports `subscribe(onValue, onError, onComplete)` format [27192e6](https://github.com/kefirjs/kefir/commit/27192e6af06aa1e94eb0bd41a8ad633f2f88a09a)
|
88 |
|
89 | ## 3.2.5 (4/07/2016)
|
90 |
|
91 | - `stream[Symbol.observable]` now equals to `stream[Symbol.observable][Symbol.observable]` [#209](https://github.com/kefirjs/kefir/pull/209) [#210](https://github.com/kefirjs/kefir/pull/210) [@mAAdhaTTah](https://github.com/mAAdhaTTah)
|
92 |
|
93 | ## 3.2.3 (20/05/2016)
|
94 |
|
95 | - .babelrc added to .npmignore [#203](https://github.com/kefirjs/kefir/pull/203) [@aksonov](https://github.com/aksonov)
|
96 |
|
97 | ## 3.2.2 (26/04/2016)
|
98 |
|
99 | - Deprecation warnings disabling API fixed [#185](https://github.com/kefirjs/kefir/issues/185)
|
100 | - A bug in `.bufferWithTimeOrCount` is fixed [#194](https://github.com/kefirjs/kefir/issues/194)
|
101 | - Switched to `symbol-observable` [#200](https://github.com/kefirjs/kefir/pull/200) [@blesh](https://github.com/blesh)
|
102 |
|
103 | ## 3.2.1 (25/02/2016)
|
104 |
|
105 | - Switched from `require` to `import/export` internally.
|
106 | - Switched from Webpack to Rollup for building /dist bundle.
|
107 | - Added `jsnext:main` to `pakcage.json` for Rollup users.
|
108 |
|
109 | Bundle file size dropped from **108K / 49K / 9.8K** to **80K / 42K / 9.5K**
|
110 | for **dev / min / min+gzip** respectively. And the users' app bundle size can
|
111 | be reduced even further if they use Rollup and `jsnext:main`.
|
112 |
|
113 | Big thanks to [@rvikmanis](https://github.com/rvikmanis) for doing this. [#184](https://github.com/kefirjs/kefir/pull/184)
|
114 |
|
115 | ## 3.2.0 (12/12/2015)
|
116 |
|
117 | - New method `.bufferWithTimeOrCount` [#172](https://github.com/kefirjs/kefir/pull/172) [@mcmathja](https://github.com/mcmathja)
|
118 | - New method `.bufferWithCount` [#170](https://github.com/kefirjs/kefir/pull/170) [@elsehow](https://github.com/elsehow)
|
119 |
|
120 | ## 3.1.0 (5/10/2015)
|
121 |
|
122 | - Interoperation with [ECMAScript Observables](https://github.com/zenparsing/es-observable) added with two new methods: `.fromESObservable` and `.toESObservable`/`[Symbol.observable]` [#154](https://github.com/kefirjs/kefir/pull/154) [@lautis](https://github.com/lautis)
|
123 | - A bug in `.fromEvents` fixed [#159](https://github.com/kefirjs/kefir/issues/159)
|
124 |
|
125 | ## 3.0.0 (26/09/2015)
|
126 |
|
127 | - All previously deprecated methods removed. Full list can be found in [deprecated API docs of v2.x](https://github.com/kefirjs/kefir/blob/v2/deprecated-api-docs.md).
|
128 | - New deprecations: [errorsToValues & valuesToErrors](https://github.com/kefirjs/kefir/issues/149), [endOnError](https://github.com/kefirjs/kefir/issues/150), [awaiting](https://github.com/kefirjs/kefir/issues/145).
|
129 | - New method `.takeErrors` replacing deprecated `.endOnError` [#150](https://github.com/kefirjs/kefir/issues/150)
|
130 | - Methods `.skipValues`, `.skipErrors`, and `.skipEnd` are renamed to `.ignoreValues`, `.ignoreErrors`, and `.ignoreEnd` [#152](https://github.com/kefirjs/kefir/issues/152)
|
131 | - The `emitEmpty` option from `.bufferWhileBy` removed, it now always emits `[]` if necessary [#131](https://github.com/kefirjs/kefir/issues/131)
|
132 | - Property now sets its current value **before** dispatching [#127](https://github.com/kefirjs/kefir/issues/127) [@olivierguerriat](https://github.com/olivierguerriat)
|
133 | - Event objects now don't contain `.current` property [#100](https://github.com/kefirjs/kefir/issues/100)
|
134 | - The `.flatten` method now always returns a stream [#144](https://github.com/kefirjs/kefir/issues/144)
|
135 |
|
136 |
|
137 | See also [Umbrella 3.0](https://github.com/kefirjs/kefir/issues/138)
|
138 |
|
139 |
|
140 | ## 2.8.2 (13/09/2015)
|
141 |
|
142 | - A bug in `.scan` fixed [#148](https://github.com/kefirjs/kefir/issues/148)
|
143 |
|
144 | ## 2.8.1 (30/08/2015)
|
145 |
|
146 | - A bug in `.delay` fixed [#134](https://github.com/kefirjs/kefir/issues/134) [@Macil](https://github.com/Macil)
|
147 |
|
148 | ## 2.8.0 (21/08/2015)
|
149 |
|
150 | - The `emitEmpty` option added to `.bufferWhileBy` [#129](https://github.com/kefirjs/kefir/pull/129) [@shamansir](https://github.com/shamansir)
|
151 |
|
152 | ## 2.7.2 (16/07/2015)
|
153 |
|
154 | - A bug related to calling `emitter.end()` in response to an end event or in `unsubscribe()` function is fixed [83b06a7](https://github.com/kefirjs/kefir/commit/83b06a7debb553dd7fd21c407c49b45da3e1b0ea)
|
155 |
|
156 | ## 2.7.1 (11/07/2015)
|
157 |
|
158 | - A bug when listener could be called after unsubscribing or end is fixed [#119](https://github.com/kefirjs/kefir/issues/119)
|
159 |
|
160 | ## 2.7.0 (27/06/2015)
|
161 |
|
162 | - The `flushOnChange` option added to `.bufferWhileBy` [#116](https://github.com/kefirjs/kefir/issues/116)
|
163 |
|
164 | ## 2.6.0 (05/06/2015)
|
165 |
|
166 | - A bug in `.bufferBy` fixed [#108](https://github.com/kefirjs/kefir/issues/108)
|
167 | - Another (minor) perf improvement for `flatMap` and similar methods [c329c61](https://github.com/kefirjs/kefir/commit/c329c61c4869a550e2b29eaa9ab6c7d4a7e899ad)
|
168 | - The `.toProperty` method now throws with a meaningful message when called with not a function [544b689](https://github.com/kefirjs/kefir/commit/544b689d9ffd165d09f3d04de8c40a4b59ceb04c)
|
169 |
|
170 | ## 2.5.0 (21/05/2015)
|
171 |
|
172 | - The repository moved from `pozadi/kefir` to `rpominov/kefir`
|
173 | - [emitter](http://kefirjs.github.io/kefir/#emitter-object) methods now return a boolean representing whether anybody interested in future events (i.e. whether connected observable is active)
|
174 | - Another optimization for `.flatMap((x) => Kefir.constan(...))` case [9e4a58a](https://github.com/kefirjs/kefir/commit/9e4a58a02ec5f80b3c3c6cf52e5e5065249aba50)
|
175 | - Methods `.takeWhileBy` and `.skipWhileBy` are deprecated [#105](https://github.com/kefirjs/kefir/issues/105)
|
176 |
|
177 | ## 2.4.1 (14/05/2015)
|
178 |
|
179 | - `.flatMap*`, `.pool`, and `.merge` was optimized for use with constants (`Kefir.contant*`, `Kefir.never`), combined with optimizations for constants in 2.4.0 this `foo.flatMap((x) => Kefir.constant(x + 1))` is only ~2x slower than `foo.map(x => x + 1)`
|
180 |
|
181 | ## 2.4.0 (11/05/2015)
|
182 |
|
183 | - New method `.flatMapErrors`
|
184 | - A bug in `.flatMap*` fixed [98f65b7](https://github.com/kefirjs/kefir/commit/98f65b775e2a9785bb66fa1f4a98ffc9bd03b9ff)
|
185 | - `Kefir.constant()` and `Kefir.contantError()` made cheaper and faster, so they can be used with `.flatMap` even more freely [1c9de75](https://github.com/kefirjs/kefir/commit/1c9de75aa7ed38949716b9d117b430587bd3425c)
|
186 |
|
187 | ## 2.3.0 (10/05/2015)
|
188 |
|
189 | - New method `.toPromise`
|
190 |
|
191 | ## 2.2.1 (09/05/2015)
|
192 |
|
193 | - A bug in `.offLog` fixed
|
194 |
|
195 | ## 2.2.0 (08/05/2015)
|
196 |
|
197 | - Codebase ported to ES6 (Babel) with CommonJS modules
|
198 | - A bug in .combine fixed [#98](https://github.com/kefirjs/kefir/issues/98)
|
199 |
|
200 | ## 2.1.0 (28/04/2015)
|
201 |
|
202 | - New method `.last`
|
203 | - The `.reduce` method is deprecated in favor of `.scan(...).last()`
|
204 |
|
205 | ## 2.0.1 (26/04/2015)
|
206 |
|
207 | - A bug in `.flatMap` fixed [#92](https://github.com/kefirjs/kefir/issues/92)
|
208 |
|
209 | ## 2.0.0 (22/04/2015)
|
210 |
|
211 | ### Breaking changes
|
212 |
|
213 | - Removed support of old transducers protocol in the `.transduce` [#79](https://github.com/kefirjs/kefir/issues/79)
|
214 | - `stream.changes()` now returns a new stream with current values/errors removed [#56](https://github.com/kefirjs/kefir/issues/56)
|
215 | - Properties now can't have both current value and current error at the same time [#55](https://github.com/kefirjs/kefir/issues/55)
|
216 | - Better errors handling in `.combine` [#54](https://github.com/kefirjs/kefir/issues/54)
|
217 | - The `.toProperty` method now accepts a callbak instead of a simple value [#82](https://github.com/kefirjs/kefir/issues/82)
|
218 | - The `.fromEvent` method is renamed to `.fromEvents`
|
219 | - The `.fromBinder` method is renamed to `.stream`
|
220 | - The `.mapEnd` method is renamed to `.beforeEnd` [#89](https://github.com/kefirjs/kefir/issues/89)
|
221 |
|
222 | ### Other changes
|
223 |
|
224 | - The `.fromSubUnsub` method is deprecated [#71](https://github.com/kefirjs/kefir/issues/71)
|
225 | - Methods `Kefir.emitter()` and `Kefir.bus()` are deprecated [#88](https://github.com/kefirjs/kefir/issues/88)
|
226 |
|
227 | ## 1.3.2 (26/04/2015)
|
228 |
|
229 | - A bug in `.flatMap` fixed [#92](https://github.com/kefirjs/kefir/issues/92)
|
230 |
|
231 | ## 1.3.1 (04/04/2015)
|
232 |
|
233 | - The `.transduce` method updated to add support of new protocol [#78](https://github.com/kefirjs/kefir/issues/78)
|
234 |
|
235 |
|
236 | ## 1.3.0 (29/03/2015)
|
237 |
|
238 | - Following methods are deprecated:
|
239 | `.repeatedly`, `.mapTo`, `.pluck`, `.invoke`, `.not`, `.timestamp`, `.tap`, `.and`, `.or`
|
240 | [#71](https://github.com/kefirjs/kefir/issues/71)
|
241 |
|
242 | ## 1.2.0 (14/03/2015)
|
243 |
|
244 | - `Kefir.sampledBy` is deprecated in favor of 3 arity `Kefir.combine`
|
245 |
|
246 | ## 1.1.0 (15/02/2015)
|
247 |
|
248 | - The `Bus` and `Pool` classes are exposed as `Kefir.Bus` and `Kefir.Pool`
|
249 | - A bug in `.merge` and `.zip` (which may cause them to not unsubscribe from their sources in very rare cases) fixed
|
250 | - New method `.emitEvent` in Emitter, Emitter Object, and Bus
|
251 | - New method `Kefir.repeat`
|
252 |
|
253 | ## 1.0.0 (31/01/2015)
|
254 |
|
255 | - jQuery plugin moved to a [separate repo](https://github.com/kefirjs/kefir-jquery)
|
256 | - Minor improvement in .skipDuplicates method [#42](https://github.com/kefirjs/kefir/issues/42)
|
257 | - Deperecated method .withDefault now removed
|
258 |
|
259 | ## 0.5.3 (12/01/2015)
|
260 |
|
261 | - A bug in .fromBinder fixed (continuation of [#35](https://github.com/kefirjs/kefir/issues/35)
|
262 |
|
263 | ## 0.5.2 (12/01/2015)
|
264 |
|
265 | - A bug in .fromBinder fixed [#35](https://github.com/kefirjs/kefir/issues/35)
|
266 |
|
267 | ## 0.5.1 (08/01/2015)
|
268 |
|
269 | - Undocumented methods `.on/.off` renamed to `._on/._off`
|
270 | - The `.changes` method now can be called on a stream
|
271 | - The `.toProperty` method now can be called on a property, and works similar to `.withDefault`
|
272 | - The `.withDefault` method is now deprecated, and will be removed in the future
|
273 | - New method `.fromSubUnsub`
|
274 | - New method `.fromNodeCallback`
|
275 | - New method `.fromPromise`
|
276 |
|
277 |
|
278 | ## 0.5.0 (06/01/2015)
|
279 |
|
280 | - Base errors support added (i.e. errors flow through all kind of transformations/combinations)
|
281 | - Properties now may have a current error (as well as current value)
|
282 | - New method `.onError`
|
283 | - New method `.offError`
|
284 | - New method `.error` in Emitter, Emitter Object, and Bus
|
285 | - New method `Kefir.constantError`
|
286 | - New method `.mapErrors`
|
287 | - New method `.filterErrors`
|
288 | - New method `.endOnError`
|
289 | - New method `.errorsToValues`
|
290 | - New method `.valuesToErrors`
|
291 | - New method `.skipErrors`
|
292 | - New method `.skipValues`
|
293 |
|
294 |
|
295 | ## 0.4.2 (24/12/2014)
|
296 |
|
297 | - A bug in `.flatMap` fixed [#29](https://github.com/kefirjs/kefir/issues/29)
|
298 | - Minor perf fixes
|
299 |
|
300 | ## 0.4.1 (30/11/2014)
|
301 |
|
302 | - New method `.bufferWhile`
|
303 | - New method `.bufferBy`
|
304 | - New method `.bufferWhileBy`
|
305 | - New method `.withDefault`
|
306 | - New method `.zip`
|
307 |
|
308 |
|
309 | ## 0.4.0 (23/11/2014)
|
310 |
|
311 | - The `seed` argument in `.scan`, `.reduce`, and `.diff` is now optional
|
312 | - Removed support of ["array functions"](https://github.com/kefirjs/kefir/blob/2edf32a82d5b24ecb6ed99c9bcbd2391b91c8715/docs-src/descriptions/about-callbacks.jade)
|
313 | - The default `fn` in `obs.sampledBy(other, fn)` changed from `function(a, b) {return [a, b]}` to `function(a, b) {return a}`. The default `fn` for `Kefir.sampledBy` hasn't changed.
|
314 | - New method `.mapEnd`
|
315 | - New method `.skipEnd`
|
316 | - The `fn` argument in `.filter`, `.takeWhile`, and `.skipWhile` is now optional
|
317 |
|
318 |
|
319 | ## 0.3.0 (19/11/2014)
|
320 |
|
321 | - Removed undocumented feature of `.merge` and `.concat` that allowed to not wrap observables to array but pass them as individual arguments
|
322 | - Changed arguments order in `.scan`, `.reduce`, and `.diff`
|
323 | - Added support of on/off methods pair to `.fromEvent`
|
324 | - Removed undocumented support of bind/unbind pair from `.fromEvent`
|
325 | - Method `.waitFor` renamed to `.skipUntilBy`
|
326 | - New method `.takeUntilBy`
|
327 | - Method `source.flatMapFirst(fn)` now won't call `fn` when skiping values from `source`
|
328 |
|
329 | ## 0.2.11 (03/11/2014)
|
330 |
|
331 | - The `fn` argument of the `.diff` method is now optional
|
332 | - New method `.waitFor`
|
333 | - New method `.takeWhileBy`
|
334 | - New method `.skipWhileBy`
|
335 |
|
336 |
|
337 | ## 0.2.10 (26/10/2014)
|
338 |
|
339 | - Method `.transform` renamed to `.flatten`
|
340 | - New method `.slidingWindow`
|
341 |
|
342 |
|
343 | ## 0.2.9 (19/10/2014)
|
344 |
|
345 | - The `fn` argument of the `.transform` method is now optional
|
346 | - New method `.transduce`
|
347 |
|
348 |
|
349 | ## 0.2.8 (12/10/2014)
|
350 |
|
351 | - Method `.flatMapWithConcurrencyLimit` renamed to `.flatMapConcurLimit`
|
352 | - New method `.transform`
|
353 | - New method `.timestamp`
|
354 | - New method `Kefir.bus`
|
355 |
|
356 |
|
357 | ## 0.2.7 (05/10/2014)
|
358 |
|
359 | Methods so far:
|
360 |
|
361 | - Kefir.emitter
|
362 | - Kefir.never
|
363 | - Kefir.later
|
364 | - Kefir.interval
|
365 | - Kefir.sequentially
|
366 | - Kefir.repeatedly
|
367 | - Kefir.fromPoll
|
368 | - Kefir.withInterval
|
369 | - Kefir.fromCallback
|
370 | - Kefir.fromEvent
|
371 | - Kefir.fromBinder
|
372 | - Kefir.constant
|
373 | - jQuery::asKefirStream
|
374 | - jQuery::asKefirProperty
|
375 | - .toProperty
|
376 | - .changes
|
377 | - .onValue
|
378 | - .offValue
|
379 | - .onEnd
|
380 | - .offEnd
|
381 | - .onAny
|
382 | - .offAny
|
383 | - .log
|
384 | - .offLog
|
385 | - .map
|
386 | - .mapTo
|
387 | - .pluck
|
388 | - .invoke
|
389 | - .not
|
390 | - .tap
|
391 | - .filter
|
392 | - .take
|
393 | - .takeWhile
|
394 | - .skip
|
395 | - .skipWhile
|
396 | - .skipDuplicates
|
397 | - .diff
|
398 | - .scan
|
399 | - .reduce
|
400 | - .delay
|
401 | - .throttle
|
402 | - .debounce
|
403 | - .withHandler
|
404 | - .combine
|
405 | - .and
|
406 | - .or
|
407 | - .sampledBy
|
408 | - .merge
|
409 | - .concat
|
410 | - .pool
|
411 | - .flatMap
|
412 | - .flatMapLatest
|
413 | - .flatMapFirst
|
414 | - .flatMapConcat
|
415 | - .flatMapWithConcurrencyLimit
|
416 | - .awating
|
417 | - .filterBy
|