5f6e348ce24cfae85c6520fb913b7772f4ff9718
[aai/esr-gui.git] /
1 ## 2.10.2 (2015-10-01)
2
3 Features:
4
5  - `.timeout()` now takes a custom error object as second argument
6
7 ## 2.10.1 (2015-09-21)
8
9  - Fix error "Cannot promisify an API that has normal methods with 'Async'-suffix" when promisifying certain objects with a custom promisifier
10
11 ## 2.10.0 (2015-09-08)
12
13 Features:
14
15  - `Promise.using` can now take the promises-for-resources as an array ([#733](.)).
16  - Browser builds for minimal core are now hosted on CDN ([#724](.)).
17
18 Bugfixes:
19
20  - Disabling debug mode with `BLUEBIRD_DEBUG=0` environment variable now works ([#719](.)).
21  - Fix unhandled rejection reporting when passing rejected promise to `.return()` ([#721](.)).
22  - Fix unbound promise's then handlers being called with wrong `this` value ([#738](.)).
23
24 ## 2.9.34 (2015-07-15)
25
26 Bugfixes:
27
28 -  Correct domain for .map, .each, .filter, .reduce callbacks ([#701](.)).
29  - Preserve bound-with-promise promises across the entire chain ([#702](.)).
30
31 ## 2.9.33 (2015-07-09)
32
33 Bugfixes:
34
35  - Methods on `Function.prototype` are no longer promisified ([#680](.)).
36
37 ## 2.9.32 (2015-07-03)
38
39 Bugfixes:
40
41  - Fix `.return(primitiveValue)` returning a wrapped version of the primitive value when a Node.js domain is active ([#689](.)).
42
43 ## 2.9.31 (2015-07-03)
44
45 Bugfixes:
46
47  - Fix Promises/A+ compliance issue regarding circular thenables: the correct behavior is to go into an infinite loop instead of warning with an error (Fixes [#682](.)).
48  - Fix "(node) warning: possible EventEmitter memory leak detected" ([#661](.)).
49  - Fix callbacks sometimes being called with a wrong node.js domain ([#664](.)).
50  - Fix callbacks sometimes not being called at all in iOS 8.1 WebApp mode ([#666](.), [#687](.)).
51
52 ## 2.9.30 (2015-06-14)
53
54 Bugfixes:
55
56  - Fix regression with `promisifyAll` not promisifying certain methods
57
58 ## 2.9.29 (2015-06-14)
59
60 Bugfixes:
61
62  - Improve `promisifyAll` detection of functions that are class constructors. Fixes mongodb 2.x promisification.
63
64 ## 2.9.28 (2015-06-14)
65
66 Bugfixes:
67
68  - Fix handled rejection being reported as unhandled in certain scenarios when using [.all](.) or [Promise.join](.) ([#645](.))
69  - Fix custom scheduler not being called in Google Chrome when long stack traces are enabled ([#650](.))
70
71 ## 2.9.27 (2015-05-30)
72
73 Bugfixes:
74
75  - Fix `sinon.useFakeTimers()` breaking scheduler ([#631](.))
76
77 Misc:
78
79  - Add nw testing facilities (`node tools/test --nw`)
80
81 ## 2.9.26 (2015-05-25)
82
83 Bugfixes:
84
85  - Fix crash in NW [#624](.)
86  - Fix [`.return()`](.) not supporting `undefined` as return value [#627](.)
87
88 ## 2.9.25 (2015-04-28)
89
90 Bugfixes:
91
92  - Fix crash in node 0.8
93
94 ## 2.9.24 (2015-04-02)
95
96 Bugfixes:
97
98  - Fix not being able to load multiple bluebird copies introduced in 2.9.22 ([#559](.), [#561](.), [#560](.)).
99
100 ## 2.9.23 (2015-04-02)
101
102 Bugfixes:
103
104  - Fix node.js domain propagation ([#521](.)).
105
106 ## 2.9.22 (2015-04-02)
107
108  - Fix `.promisify` crashing in phantom JS ([#556](.))
109
110 ## 2.9.21 (2015-03-30)
111
112  - Fix error object's `'stack'`' overwriting causing an error when its defined to be a setter that throws an error ([#552](.)).
113
114 ## 2.9.20 (2015-03-29)
115
116 Bugfixes:
117
118  - Fix regression where there is a long delay between calling `.cancel()` and promise actually getting cancelled in Chrome when long stack traces are enabled
119
120 ## 2.9.19 (2015-03-29)
121
122 Bugfixes:
123
124  - Fix crashing in Chrome when long stack traces are disabled
125
126 ## 2.9.18 (2015-03-29)
127
128 Bugfixes:
129
130  - Fix settlePromises using trampoline
131
132 ## 2.9.17 (2015-03-29)
133
134
135 Bugfixes:
136
137  - Fix Chrome DevTools async stack traceability ([#542](.)).
138
139 ## 2.9.16 (2015-03-28)
140
141 Features:
142
143  - Use setImmediate if available
144
145 ## 2.9.15 (2015-03-26)
146
147 Features:
148
149  - Added `.asCallback` alias for `.nodeify`.
150
151 Bugfixes:
152
153  - Don't always use nextTick, but try to pick up setImmediate or setTimeout in NW. Fixes [#534](.), [#525](.)
154  - Make progress a core feature. Fixes [#535](.) Note that progress has been removed in 3.x - this is only a fix necessary for 2.x custom builds.
155
156 ## 2.9.14 (2015-03-12)
157
158 Bugfixes:
159
160  - Always use process.nextTick. Fixes [#525](.)
161
162 ## 2.9.13 (2015-02-27)
163
164 Bugfixes:
165
166  - Fix .each, .filter, .reduce and .map callbacks being called synchornously if the input is immediate. ([#513](.))
167
168 ## 2.9.12 (2015-02-19)
169
170 Bugfixes:
171
172  - Fix memory leak introduced in 2.9.0 ([#502](.))
173
174 ## 2.9.11 (2015-02-19)
175
176 Bugfixes:
177
178  - Fix [#503](.)
179
180 ## 2.9.10 (2015-02-18)
181
182 Bugfixes:
183
184  - Fix [#501](.)
185
186 ## 2.9.9 (2015-02-12)
187
188 Bugfixes:
189
190  - Fix `TypeError: Cannot assign to read only property 'length'` when jsdom has declared a read-only length for all objects to inherit.
191
192 ## 2.9.8 (2015-02-10)
193
194 Bugfixes:
195
196  - Fix regression introduced in 2.9.7 where promisify didn't properly dynamically look up methods on `this`
197
198 ## 2.9.7 (2015-02-08)
199
200 Bugfixes:
201
202  - Fix `promisify` not retaining custom properties of the function. This enables promisifying the `"request"` module's export function and its methods at the same time.
203  - Fix `promisifyAll` methods being dependent on `this` when they are not originally dependent on `this`. This enables e.g. passing promisified `fs` functions directly as callbacks without having to bind them to `fs`.
204  - Fix `process.nextTick` being used over `setImmediate` in node.
205
206 ## 2.9.6 (2015-02-02)
207
208 Bugfixes:
209
210  - Node environment detection can no longer be fooled
211
212 ## 2.9.5 (2015-02-02)
213
214 Misc:
215
216  - Warn when [`.then()`](.) is passed non-functions
217
218 ## 2.9.4 (2015-01-30)
219
220 Bugfixes:
221
222  - Fix [.timeout()](.) not calling `clearTimeout` with the proper handle in node causing the process to wait for unneeded timeout. This was a regression introduced in 2.9.1.
223
224 ## 2.9.3 (2015-01-27)
225
226 Bugfixes:
227
228  - Fix node-webkit compatibility issue ([#467](https://github.com/petkaantonov/bluebird/pull/467))
229  - Fix long stack trace support in recent firefox versions
230
231 ## 2.9.2 (2015-01-26)
232
233 Bugfixes:
234
235  - Fix critical bug regarding to using promisifyAll in browser that was introduced in 2.9.0 ([#466](https://github.com/petkaantonov/bluebird/issues/466)).
236
237 Misc:
238
239  - Add `"browser"` entry point to package.json
240
241 ## 2.9.1 (2015-01-24)
242
243 Features:
244
245  - If a bound promise is returned by the callback to [`Promise.method`](#promisemethodfunction-fn---function) and [`Promise.try`](#promisetryfunction-fn--arraydynamicdynamic-arguments--dynamic-ctx----promise), the returned promise will be bound to the same value
246
247 ## 2.9.0 (2015-01-24)
248
249 Features:
250
251  - Add [`Promise.fromNode`](API.md#promisefromnodefunction-resolver---promise)
252  - Add new paramter `value` for [`Promise.bind`](API.md#promisebinddynamic-thisarg--dynamic-value---promise)
253
254 Bugfixes:
255
256  - Fix several issues with [`cancellation`](API.md#cancellation) and [`.bind()`](API.md#binddynamic-thisarg---promise) interoperation when `thisArg` is a promise or thenable
257  - Fix promises created in [`disposers`](API#disposerfunction-disposer---disposer) not having proper long stack trace context
258  - Fix [`Promise.join`](API.md#promisejoinpromisethenablevalue-promises-function-handler---promise) sometimes passing the passed in callback function as the last argument to itself.
259
260 Misc:
261
262  - Reduce minified full browser build file size by not including unused code generation functionality.
263  - Major internal refactoring related to testing code and source code file layout
264
265 ## 2.8.2 (2015-01-20)
266
267 Features:
268
269  - [Global rejection events](https://github.com/petkaantonov/bluebird/blob/master/API.md#global-rejection-events) are now fired both as DOM3 events and as legacy events in browsers
270
271 ## 2.8.1 (2015-01-20)
272
273 Bugfixes:
274
275  - Fix long stack trace stiching consistency when rejected from thenables
276
277 ## 2.8.0 (2015-01-19)
278
279 Features:
280
281  - Major debuggability improvements:
282     - Long stack traces have been re-designed. They are now much more readable,
283       succint, relevant and consistent across bluebird features.
284     - Long stack traces are supported now in IE10+
285
286 ## 2.7.1 (2015-01-15)
287
288 Bugfixes:
289
290  - Fix [#447](https://github.com/petkaantonov/bluebird/issues/447)
291
292 ## 2.7.0 (2015-01-15)
293
294 Features:
295
296  - Added more context to stack traces originating from coroutines ([#421](https://github.com/petkaantonov/bluebird/issues/421))
297  - Implemented [global rejection events](https://github.com/petkaantonov/bluebird/blob/master/API.md#global-rejection-events) ([#428](https://github.com/petkaantonov/bluebird/issues/428), [#357](https://github.com/petkaantonov/bluebird/issues/357))
298  - [Custom promisifiers](https://github.com/petkaantonov/bluebird/blob/master/API.md#option-promisifier) are now passed the default promisifier which can be used to add enhancements on top of normal node promisification
299  - [Promisification filters](https://github.com/petkaantonov/bluebird/blob/master/API.md#option-filter) are now passed `passesDefaultFilter` boolean
300
301 Bugfixes:
302
303  - Fix `.noConflict()` call signature ([#446]())
304  - Fix `Promise.method`ified functions being called with `undefined` when they were called with no arguments
305
306 ## 2.6.4 (2015-01-12)
307
308 Bugfixes:
309
310  - `OperationalErrors` thrown by promisified functions retain custom properties, such as `.code` and `.path`.
311
312 ## 2.6.3 (2015-01-12)
313
314 Bugfixes:
315
316  - Fix [#429](https://github.com/petkaantonov/bluebird/issues/429)
317  - Fix [#432](https://github.com/petkaantonov/bluebird/issues/432)
318  - Fix [#433](https://github.com/petkaantonov/bluebird/issues/433)
319
320 ## 2.6.2 (2015-01-07)
321
322 Bugfixes:
323
324  - Fix [#426](https://github.com/petkaantonov/bluebird/issues/426)
325
326 ## 2.6.1 (2015-01-07)
327
328 Bugfixes:
329
330  - Fixed built browser files not being included in the git tag release for bower
331
332 ## 2.6.0 (2015-01-06)
333
334 Features:
335
336  - Significantly improve parallel promise performance and memory usage (+50% faster, -50% less memory)
337
338
339 ## 2.5.3 (2014-12-30)
340
341 ## 2.5.2 (2014-12-29)
342
343 Bugfixes:
344
345  - Fix bug where already resolved promise gets attached more handlers while calling its handlers resulting in some handlers not being called
346  - Fix bug where then handlers are not called in the same order as they would run if Promises/A+ 2.3.2 was implemented as adoption
347  - Fix bug where using `Object.create(null)` as a rejection reason would crash bluebird
348
349 ## 2.5.1 (2014-12-29)
350
351 Bugfixes:
352
353  - Fix `.finally` throwing null error when it is derived from a promise that is resolved with a promise that is resolved with a promise
354
355 ## 2.5.0 (2014-12-28)
356
357 Features:
358
359  - [`.get`](#API.md#https://github.com/petkaantonov/bluebird/blob/master/API.md#getstring-propertyname---promise) now supports negative indexing.
360
361 Bugfixes:
362
363  - Fix bug with `Promise.method` wrapped function returning a promise that never resolves if the function returns a promise that is resolved with another promise
364  - Fix bug with `Promise.delay` never resolving if the value is a promise that is resolved with another promise
365
366 ## 2.4.3 (2014-12-28)
367
368 Bugfixes:
369
370  - Fix memory leak as described in [this Promises/A+ spec issue](https://github.com/promises-aplus/promises-spec/issues/179).
371
372 ## 2.4.2 (2014-12-21)
373
374 Bugfixes:
375
376  - Fix bug where spread rejected handler is ignored in case of rejection
377  - Fix synchronous scheduler passed to `setScheduler` causing infinite loop
378
379 ## 2.4.1 (2014-12-20)
380
381 Features:
382
383  - Error messages now have links to wiki pages for additional information
384  - Promises now clean up all references (to handlers, child promises etc) as soon as possible.
385
386 ## 2.4.0 (2014-12-18)
387
388 Features:
389
390  - Better filtering of bluebird internal calls in long stack traces, especially when using minified file in browsers
391  - Small performance improvements for all collection methods
392  - Promises now delete references to handlers attached to them as soon as possible
393  - Additional stack traces are now output on stderr/`console.warn` for errors that are thrown in the process/window from rejected `.done()` promises. See [#411](https://github.com/petkaantonov/bluebird/issues/411)
394
395 ## 2.3.11 (2014-10-31)
396
397 Bugfixes:
398
399  - Fix [#371](https://github.com/petkaantonov/bluebird/issues/371), [#373](https://github.com/petkaantonov/bluebird/issues/373)
400
401
402 ## 2.3.10 (2014-10-28)
403
404 Features:
405
406  - `Promise.method` no longer wraps primitive errors
407  - `Promise.try` no longer wraps primitive errors
408
409 ## 2.3.7 (2014-10-25)
410
411 Bugfixes:
412
413  - Fix [#359](https://github.com/petkaantonov/bluebird/issues/359), [#362](https://github.com/petkaantonov/bluebird/issues/362) and [#364](https://github.com/petkaantonov/bluebird/issues/364)
414
415 ## 2.3.6 (2014-10-15)
416
417 Features:
418
419  - Implement [`.reflect()`](API.md#reflect---promisepromiseinspection)
420
421 ## 2.3.5 (2014-10-06)
422
423 Bugfixes:
424
425  - Fix issue when promisifying methods whose names contain the string 'args'
426
427 ## 2.3.4 (2014-09-27)
428
429  - `P` alias was not declared inside WebWorkers
430
431 ## 2.3.3 (2014-09-27)
432
433 Bugfixes:
434
435  - Fix [#318](https://github.com/petkaantonov/bluebird/issues/318), [#314](https://github.com/petkaantonov/bluebird/issues/#314)
436
437 ## 2.3.2 (2014-08-25)
438
439 Bugfixes:
440
441  - `P` alias for `Promise` now exists in global scope when using browser builds without a module loader, fixing an issue with firefox extensions
442
443 ## 2.3.1 (2014-08-23)
444
445 Features:
446
447  - `.using` can now be used with disposers created from different bluebird copy
448
449 ## 2.3.0 (2014-08-13)
450
451 Features:
452
453  - [`.bind()`](API.md#binddynamic-thisarg---promise) and [`Promise.bind()`](API.md#promisebinddynamic-thisarg---promise) now await for the resolution of the `thisArg` if it's a promise or a thenable
454
455 Bugfixes:
456
457  - Fix [#276](https://github.com/petkaantonov/bluebird/issues/276)
458
459 ## 2.2.2 (2014-07-14)
460
461  - Fix [#259](https://github.com/petkaantonov/bluebird/issues/259)
462
463 ## 2.2.1 (2014-07-07)
464
465  - Fix multiline error messages only showing the first line
466
467 ## 2.2.0 (2014-07-07)
468
469 Bugfixes:
470
471  - `.any` and `.some` now consistently reject with RangeError when input array contains too few promises
472  - Fix iteration bug with `.reduce` when input array contains already fulfilled promises
473
474 ## 2.1.3 (2014-06-18)
475
476 Bugfixes:
477
478  - Fix [#235](https://github.com/petkaantonov/bluebird/issues/235)
479
480 ## 2.1.2 (2014-06-15)
481
482 Bugfixes:
483
484  - Fix [#232](https://github.com/petkaantonov/bluebird/issues/232)
485
486 ## 2.1.1 (2014-06-11)
487
488 ## 2.1.0 (2014-06-11)
489
490 Features:
491
492  - Add [`promisifier`](API.md#option-promisifier) option to `Promise.promisifyAll()`
493  - Improve performance of `.props()` and collection methods when used with immediate values
494
495
496 Bugfixes:
497
498  - Fix a bug where .reduce calls the callback for an already visited item
499  - Fix a bug where stack trace limit is calculated to be too small, which resulted in too short stack traces
500
501 <sub>Add undocumented experimental `yieldHandler` option to `Promise.coroutine`</sub>
502
503 ## 2.0.7 (2014-06-08)
504 ## 2.0.6 (2014-06-07)
505 ## 2.0.5 (2014-06-05)
506 ## 2.0.4 (2014-06-05)
507 ## 2.0.3 (2014-06-05)
508 ## 2.0.2 (2014-06-04)
509 ## 2.0.1 (2014-06-04)
510
511 ## 2.0.0 (2014-06-04)
512
513 #What's new in 2.0
514
515 - [Resource management](API.md#resource-management) - never leak resources again
516 - [Promisification](API.md#promisification) on steroids - entire modules can now be promisified with one line of code
517 - [`.map()`](API.md#mapfunction-mapper--object-options---promise), [`.each()`](API.md#eachfunction-iterator---promise), [`.filter()`](API.md#filterfunction-filterer--object-options---promise), [`.reduce()`](API.md#reducefunction-reducer--dynamic-initialvalue---promise) reimagined from simple sugar to powerful concurrency coordination tools
518 - [API Documentation](API.md) has been reorganized and more elaborate examples added
519 - Deprecated [progression](#progression-migration) and [deferreds](#deferred-migration)
520 - Improved performance and readability
521
522 Features:
523
524 - Added [`using()`](API.md#promiseusingpromisedisposer-promise-promisedisposer-promise--function-handler---promise) and [`disposer()`](API.md#disposerfunction-disposer---disposer)
525 - [`.map()`](API.md#mapfunction-mapper--object-options---promise) now calls the handler as soon as items in the input array become fulfilled
526 - Added a concurrency option to [`.map()`](API.md#mapfunction-mapper--object-options---promise)
527 - [`.filter()`](API.md#filterfunction-filterer--object-options---promise) now calls the handler as soon as items in the input array become fulfilled
528 - Added a concurrency option to [`.filter()`](API.md#filterfunction-filterer--object-options---promise)
529 - [`.reduce()`](API.md#reducefunction-reducer--dynamic-initialvalue---promise) now calls the handler as soon as items in the input array become fulfilled, but in-order
530 - Added [`.each()`](API.md#eachfunction-iterator---promise)
531 - [`Promise.resolve()`](API.md#promiseresolvedynamic-value---promise) behaves like `Promise.cast`. `Promise.cast` deprecated.
532 - [Synchronous inspection](API.md#synchronous-inspection): Removed `.inspect()`, added [`.value()`](API.md#value---dynamic) and [`.reason()`](API.md#reason---dynamic)
533 - [`Promise.join()`](API.md#promisejoinpromisethenablevalue-promises-function-handler---promise) now takes a function as the last argument
534 - Added [`Promise.setScheduler()`](API.md#promisesetschedulerfunction-scheduler---void)
535 - [`.cancel()`](API.md#cancelerror-reason---promise) supports a custom cancellation reason
536 - [`.timeout()`](API.md#timeoutint-ms--string-message---promise) now cancels the promise instead of rejecting it
537 - [`.nodeify()`](API.md#nodeifyfunction-callback--object-options---promise) now supports passing multiple success results when mapping promises to nodebacks
538 - Added `suffix` and `filter` options to [`Promise.promisifyAll()`](API.md#promisepromisifyallobject-target--object-options---object)
539
540 Breaking changes:
541
542 - Sparse array holes are not skipped by collection methods but treated as existing elements with `undefined` value
543 - `.map()` and `.filter()` do not call the given mapper or filterer function in any specific order
544 - Removed the `.inspect()` method
545 - Yielding an array from a coroutine is not supported by default. You can use [`coroutine.addYieldHandler()`](API.md#promisecoroutineaddyieldhandlerfunction-handler---void) to configure the old behavior (or any behavior you want).
546 - [`.any()`](API.md#any---promise) and [`.some()`](API.md#someint-count---promise) no longer use an array as the rejection reason. [`AggregateError`](API.md#aggregateerror) is used instead.
547
548
549 ## 1.2.4 (2014-04-27)
550
551 Bugfixes:
552
553  - Fix promisifyAll causing a syntax error when a method name is not a valid identifier
554  - Fix syntax error when es5.js is used in strict mode
555
556 ## 1.2.3 (2014-04-17)
557
558 Bugfixes:
559
560  - Fix [#179](https://github.com/petkaantonov/bluebird/issues/179)
561
562 ## 1.2.2 (2014-04-09)
563
564 Bugfixes:
565
566  - Promisified methods from promisifyAll no longer call the original method when it is overriden
567  - Nodeify doesn't pass second argument to the callback if the promise is fulfilled with `undefined`
568
569 ## 1.2.1 (2014-03-31)
570
571 Bugfixes:
572
573  - Fix [#168](https://github.com/petkaantonov/bluebird/issues/168)
574
575 ## 1.2.0 (2014-03-29)
576
577 Features:
578
579  - New method: [`.value()`](https://github.com/petkaantonov/bluebird/blob/master/API.md#value---dynamic)
580  - New method: [`.reason()`](https://github.com/petkaantonov/bluebird/blob/master/API.md#reason---dynamic)
581  - New method: [`Promise.onUnhandledRejectionHandled()`](https://github.com/petkaantonov/bluebird/blob/master/API.md#promiseonunhandledrejectionhandledfunction-handler---undefined)
582  - `Promise.map()`, `.map()`, `Promise.filter()` and `.filter()` start calling their callbacks as soon as possible while retaining a correct order. See [`8085922f`](https://github.com/petkaantonov/bluebird/commit/8085922fb95a9987fda0cf2337598ab4a98dc315).
583
584 Bugfixes:
585
586  - Fix [#165](https://github.com/petkaantonov/bluebird/issues/165)
587  - Fix [#166](https://github.com/petkaantonov/bluebird/issues/166)
588
589 ## 1.1.1 (2014-03-18)
590
591 Bugfixes:
592
593  - [#138](https://github.com/petkaantonov/bluebird/issues/138)
594  - [#144](https://github.com/petkaantonov/bluebird/issues/144)
595  - [#148](https://github.com/petkaantonov/bluebird/issues/148)
596  - [#151](https://github.com/petkaantonov/bluebird/issues/151)
597
598 ## 1.1.0 (2014-03-08)
599
600 Features:
601
602  - Implement [`Promise.prototype.tap()`](https://github.com/petkaantonov/bluebird/blob/master/API.md#tapfunction-handler---promise)
603  - Implement [`Promise.coroutine.addYieldHandler()`](https://github.com/petkaantonov/bluebird/blob/master/API.md#promisecoroutineaddyieldhandlerfunction-handler---void)
604  - Deprecate `Promise.prototype.spawn`
605
606 Bugfixes:
607
608  - Fix already rejected promises being reported as unhandled when handled through collection methods
609  - Fix browserisfy crashing from checking `process.version.indexOf`
610
611 ## 1.0.8 (2014-03-03)
612
613 Bugfixes:
614
615  - Fix active domain being lost across asynchronous boundaries in Node.JS 10.xx
616
617 ## 1.0.7 (2014-02-25)
618
619 Bugfixes:
620
621  - Fix handled errors being reported
622
623 ## 1.0.6 (2014-02-17)
624
625 Bugfixes:
626
627  -  Fix bug with unhandled rejections not being reported
628     when using `Promise.try` or `Promise.method` without
629     attaching further handlers
630
631 ## 1.0.5 (2014-02-15)
632
633 Features:
634
635  - Node.js performance: promisified functions try to check amount of passed arguments in most optimal order
636  - Node.js promisified functions will have same `.length` as the original function minus one (for the callback parameter)
637
638 ## 1.0.4 (2014-02-09)
639
640 Features:
641
642  - Possibly unhandled rejection handler will always get a stack trace, even if the rejection or thrown error was not an error
643  - Unhandled rejections are tracked per promise, not per error. So if you create multiple branches from a single ancestor and that ancestor gets rejected, each branch with no error handler with the end will cause a possibly unhandled rejection handler invocation
644
645 Bugfixes:
646
647  - Fix unhandled non-writable objects or primitives not reported by possibly unhandled rejection handler
648
649 ## 1.0.3 (2014-02-05)
650
651 Bugfixes:
652
653  - [#93](https://github.com/petkaantonov/bluebird/issues/88)
654
655 ## 1.0.2 (2014-02-04)
656
657 Features:
658
659  - Significantly improve performance of foreign bluebird thenables
660
661 Bugfixes:
662
663  - [#88](https://github.com/petkaantonov/bluebird/issues/88)
664
665 ## 1.0.1 (2014-01-28)
666
667 Features:
668
669  - Error objects that have property `.isAsync = true` will now be caught by `.error()`
670
671 Bugfixes:
672
673  - Fix TypeError and RangeError shims not working without `new` operator
674
675 ## 1.0.0 (2014-01-12)
676
677 Features:
678
679  - `.filter`, `.map`, and `.reduce` no longer skip sparse array holes. This is a backwards incompatible change.
680  - Like `.map` and `.filter`, `.reduce` now allows returning promises and thenables from the iteration function.
681
682 Bugfixes:
683
684  - [#58](https://github.com/petkaantonov/bluebird/issues/58)
685  - [#61](https://github.com/petkaantonov/bluebird/issues/61)
686  - [#64](https://github.com/petkaantonov/bluebird/issues/64)
687  - [#60](https://github.com/petkaantonov/bluebird/issues/60)
688
689 ## 0.11.6-1 (2013-12-29)
690
691 ## 0.11.6-0 (2013-12-29)
692
693 Features:
694
695  - You may now return promises and thenables from the filterer function used in `Promise.filter` and `Promise.prototype.filter`.
696
697  - `.error()` now catches additional sources of rejections:
698
699     - Rejections originating from `Promise.reject`
700
701     - Rejections originating from thenables using
702     the `reject` callback
703
704     - Rejections originating from promisified callbacks
705     which use the `errback` argument
706
707     - Rejections originating from `new Promise` constructor
708     where the `reject` callback is called explicitly
709
710     - Rejections originating from `PromiseResolver` where
711     `.reject()` method is called explicitly
712
713 Bugfixes:
714
715  - Fix `captureStackTrace` being called when it was `null`
716  - Fix `Promise.map` not unwrapping thenables
717
718 ## 0.11.5-1 (2013-12-15)
719
720 ## 0.11.5-0 (2013-12-03)
721
722 Features:
723
724  - Improve performance of collection methods
725  - Improve performance of promise chains
726
727 ## 0.11.4-1 (2013-12-02)
728
729 ## 0.11.4-0 (2013-12-02)
730
731 Bugfixes:
732
733  - Fix `Promise.some` behavior with arguments like negative integers, 0...
734  - Fix stack traces of synchronously throwing promisified functions'
735
736 ## 0.11.3-0 (2013-12-02)
737
738 Features:
739
740  - Improve performance of generators
741
742 Bugfixes:
743
744  - Fix critical bug with collection methods.
745
746 ## 0.11.2-0 (2013-12-02)
747
748 Features:
749
750  - Improve performance of all collection methods
751
752 ## 0.11.1-0 (2013-12-02)
753
754 Features:
755
756 - Improve overall performance.
757 - Improve performance of promisified functions.
758 - Improve performance of catch filters.
759 - Improve performance of .finally.
760
761 Bugfixes:
762
763 - Fix `.finally()` rejecting if passed non-function. It will now ignore non-functions like `.then`.
764 - Fix `.finally()` not converting thenables returned from the handler to promises.
765 - `.spread()` now rejects if the ultimate value given to it is not spreadable.
766
767 ## 0.11.0-0 (2013-12-02)
768
769 Features:
770
771  - Improve overall performance when not using `.bind()` or cancellation.
772  - Promises are now not cancellable by default. This is backwards incompatible change - see [`.cancellable()`](https://github.com/petkaantonov/bluebird/blob/master/API.md#cancellable---promise)
773  - [`Promise.delay`](https://github.com/petkaantonov/bluebird/blob/master/API.md#promisedelaydynamic-value-int-ms---promise)
774  - [`.delay()`](https://github.com/petkaantonov/bluebird/blob/master/API.md#delayint-ms---promise)
775  - [`.timeout()`](https://github.com/petkaantonov/bluebird/blob/master/API.md#timeoutint-ms--string-message---promise)
776
777 ## 0.10.14-0 (2013-12-01)
778
779 Bugfixes:
780
781  - Fix race condition when mixing 3rd party asynchrony.
782
783 ## 0.10.13-1 (2013-11-30)
784
785 ## 0.10.13-0 (2013-11-30)
786
787 Bugfixes:
788
789  - Fix another bug with progression.
790
791 ## 0.10.12-0 (2013-11-30)
792
793 Bugfixes:
794
795  - Fix bug with progression.
796
797 ## 0.10.11-4 (2013-11-29)
798
799 ## 0.10.11-2 (2013-11-29)
800
801 Bugfixes:
802
803  - Fix `.race()` not propagating bound values.
804
805 ## 0.10.11-1 (2013-11-29)
806
807 Features:
808
809  - Improve performance of `Promise.race`
810
811 ## 0.10.11-0 (2013-11-29)
812
813 Bugfixes:
814
815  - Fixed `Promise.promisifyAll` invoking property accessors. Only data properties with function values are considered.
816
817 ## 0.10.10-0 (2013-11-28)
818
819 Features:
820
821  - Disable long stack traces in browsers by default. Call `Promise.longStackTraces()` to enable them.
822
823 ## 0.10.9-1 (2013-11-27)
824
825 Bugfixes:
826
827  - Fail early when `new Promise` is constructed incorrectly
828
829 ## 0.10.9-0 (2013-11-27)
830
831 Bugfixes:
832
833  - Promise.props now takes a [thenable-for-collection](https://github.com/petkaantonov/bluebird/blob/f41edac61b7c421608ff439bb5a09b7cffeadcf9/test/mocha/props.js#L197-L217)
834  - All promise collection methods now reject when a promise-or-thenable-for-collection turns out not to give a collection
835
836 ## 0.10.8-0 (2013-11-25)
837
838 Features:
839
840  - All static collection methods take thenable-for-collection
841
842 ## 0.10.7-0 (2013-11-25)
843
844 Features:
845
846  - throw TypeError when thenable resolves with itself
847  - Make .race() and Promise.race() forever pending on empty collections
848
849 ## 0.10.6-0 (2013-11-25)
850
851 Bugfixes:
852
853  - Promise.resolve and PromiseResolver.resolve follow thenables too.
854
855 ## 0.10.5-0 (2013-11-24)
856
857 Bugfixes:
858
859  - Fix infinite loop when thenable resolves with itself
860
861 ## 0.10.4-1 (2013-11-24)
862
863 Bugfixes:
864
865  - Fix a file missing from build. (Critical fix)
866
867 ## 0.10.4-0 (2013-11-24)
868
869 Features:
870
871  - Remove dependency of es5-shim and es5-sham when using ES3.
872
873 ## 0.10.3-0 (2013-11-24)
874
875 Features:
876
877  - Improve performance of `Promise.method`
878
879 ## 0.10.2-1 (2013-11-24)
880
881 Features:
882
883  - Rename PromiseResolver#asCallback to PromiseResolver#callback
884
885 ## 0.10.2-0 (2013-11-24)
886
887 Features:
888
889  - Remove memoization of thenables
890
891 ## 0.10.1-0 (2013-11-21)
892
893 Features:
894
895  - Add methods `Promise.resolve()`, `Promise.reject()`, `Promise.defer()` and `.resolve()`.
896
897 ## 0.10.0-1 (2013-11-17)
898
899 ## 0.10.0-0 (2013-11-17)
900
901 Features:
902
903  - Implement `Promise.method()`
904  - Implement `.return()`
905  - Implement `.throw()`
906
907 Bugfixes:
908
909  - Fix promises being able to use themselves as resolution or follower value
910
911 ## 0.9.11-1 (2013-11-14)
912
913 Features:
914
915  - Implicit `Promise.all()` when yielding an array from generators
916
917 ## 0.9.11-0 (2013-11-13)
918
919 Bugfixes:
920
921  - Fix `.spread` not unwrapping thenables
922
923 ## 0.9.10-2 (2013-11-13)
924
925 Features:
926
927  - Improve performance of promisified functions on V8
928
929 Bugfixes:
930
931  - Report unhandled rejections even when long stack traces are disabled
932  - Fix `.error()` showing up in stack traces
933
934 ## 0.9.10-1 (2013-11-05)
935
936 Bugfixes:
937
938  - Catch filter method calls showing in stack traces
939
940 ## 0.9.10-0 (2013-11-05)
941
942 Bugfixes:
943
944  - Support primitives in catch filters
945
946 ## 0.9.9-0 (2013-11-05)
947
948 Features:
949
950  - Add `Promise.race()` and `.race()`
951
952 ## 0.9.8-0 (2013-11-01)
953
954 Bugfixes:
955
956  - Fix bug with `Promise.try` not unwrapping returned promises and thenables
957
958 ## 0.9.7-0 (2013-10-29)
959
960 Bugfixes:
961
962  - Fix bug with build files containing duplicated code for promise.js
963
964 ## 0.9.6-0 (2013-10-28)
965
966 Features:
967
968  - Improve output of reporting unhandled non-errors
969  - Implement RejectionError wrapping and `.error()` method
970
971 ## 0.9.5-0 (2013-10-27)
972
973 Features:
974
975  - Allow fresh copies of the library to be made
976
977 ## 0.9.4-1 (2013-10-27)
978
979 ## 0.9.4-0 (2013-10-27)
980
981 Bugfixes:
982
983  - Rollback non-working multiple fresh copies feature
984
985 ## 0.9.3-0 (2013-10-27)
986
987 Features:
988
989  - Allow fresh copies of the library to be made
990  - Add more components to customized builds
991
992 ## 0.9.2-1 (2013-10-25)
993
994 ## 0.9.2-0 (2013-10-25)
995
996 Features:
997
998  - Allow custom builds
999
1000 ## 0.9.1-1 (2013-10-22)
1001
1002 Bugfixes:
1003
1004  - Fix unhandled rethrown exceptions not reported
1005
1006 ## 0.9.1-0 (2013-10-22)
1007
1008 Features:
1009
1010  - Improve performance of `Promise.try`
1011  - Extend `Promise.try` to accept arguments and ctx to make it more usable in promisification of synchronous functions.
1012
1013 ## 0.9.0-0 (2013-10-18)
1014
1015 Features:
1016
1017  - Implement `.bind` and `Promise.bind`
1018
1019 Bugfixes:
1020
1021  - Fix `.some()` when argument is a pending promise that later resolves to an array
1022
1023 ## 0.8.5-1 (2013-10-17)
1024
1025 Features:
1026
1027  - Enable process wide long stack traces through BLUEBIRD_DEBUG environment variable
1028
1029 ## 0.8.5-0 (2013-10-16)
1030
1031 Features:
1032
1033  - Improve performance of all collection methods
1034
1035 Bugfixes:
1036
1037  - Fix .finally passing the value to handlers
1038  - Remove kew from benchmarks due to bugs in the library breaking the benchmark
1039  - Fix some bluebird library calls potentially appearing in stack traces
1040
1041 ## 0.8.4-1 (2013-10-15)
1042
1043 Bugfixes:
1044
1045  - Fix .pending() call showing in long stack traces
1046
1047 ## 0.8.4-0 (2013-10-15)
1048
1049 Bugfixes:
1050
1051  - Fix PromiseArray and its sub-classes swallowing possibly unhandled rejections
1052
1053 ## 0.8.3-3 (2013-10-14)
1054
1055 Bugfixes:
1056
1057  - Fix AMD-declaration using named module.
1058
1059 ## 0.8.3-2 (2013-10-14)
1060
1061 Features:
1062
1063  - The mortals that can handle it may now release Zalgo by `require("bluebird/zalgo");`
1064
1065 ## 0.8.3-1 (2013-10-14)
1066
1067 Bugfixes:
1068
1069  - Fix memory leak when using the same promise to attach handlers over and over again
1070
1071 ## 0.8.3-0 (2013-10-13)
1072
1073 Features:
1074
1075  - Add `Promise.props()` and `Promise.prototype.props()`. They work like `.all()` for object properties.
1076
1077 Bugfixes:
1078
1079  - Fix bug with .some returning garbage when sparse arrays have rejections
1080
1081 ## 0.8.2-2 (2013-10-13)
1082
1083 Features:
1084
1085  - Improve performance of `.reduce()` when `initialValue` can be synchronously cast to a value
1086
1087 ## 0.8.2-1 (2013-10-12)
1088
1089 Bugfixes:
1090
1091  - Fix .npmignore having irrelevant files
1092
1093 ## 0.8.2-0 (2013-10-12)
1094
1095 Features:
1096
1097  - Improve performance of `.some()`
1098
1099 ## 0.8.1-0 (2013-10-11)
1100
1101 Bugfixes:
1102
1103  - Remove uses of dynamic evaluation (`new Function`, `eval` etc) when strictly not necessary. Use feature detection to use static evaluation to avoid errors when dynamic evaluation is prohibited.
1104
1105 ## 0.8.0-3 (2013-10-10)
1106
1107 Features:
1108
1109  - Add `.asCallback` property to `PromiseResolver`s
1110
1111 ## 0.8.0-2 (2013-10-10)
1112
1113 ## 0.8.0-1 (2013-10-09)
1114
1115 Features:
1116
1117  - Improve overall performance. Be able to sustain infinite recursion when using promises.
1118
1119 ## 0.8.0-0 (2013-10-09)
1120
1121 Bugfixes:
1122
1123  - Fix stackoverflow error when function calls itself "synchronously" from a promise handler
1124
1125 ## 0.7.12-2 (2013-10-09)
1126
1127 Bugfixes:
1128
1129  - Fix safari 6 not using `MutationObserver` as a scheduler
1130  - Fix process exceptions interfering with internal queue flushing
1131
1132 ## 0.7.12-1 (2013-10-09)
1133
1134 Bugfixes:
1135
1136  - Don't try to detect if generators are available to allow shims to be used
1137
1138 ## 0.7.12-0 (2013-10-08)
1139
1140 Features:
1141
1142  - Promisification now consider all functions on the object and its prototype chain
1143  - Individual promisifcation uses current `this` if no explicit receiver is given
1144  - Give better stack traces when promisified callbacks throw or errback primitives such as strings by wrapping them in an `Error` object.
1145
1146 Bugfixes:
1147
1148  - Fix runtime APIs throwing synchronous errors
1149
1150 ## 0.7.11-0 (2013-10-08)
1151
1152 Features:
1153
1154  - Deprecate `Promise.promisify(Object target)` in favor of `Promise.promisifyAll(Object target)` to avoid confusion with function objects
1155  - Coroutines now throw error when a non-promise is `yielded`
1156
1157 ## 0.7.10-1 (2013-10-05)
1158
1159 Features:
1160
1161  - Make tests pass Internet Explorer 8
1162
1163 ## 0.7.10-0 (2013-10-05)
1164
1165 Features:
1166
1167  - Create browser tests
1168
1169 ## 0.7.9-1 (2013-10-03)
1170
1171 Bugfixes:
1172
1173  - Fix promise cast bug when thenable fulfills using itself as the fulfillment value
1174
1175 ## 0.7.9-0 (2013-10-03)
1176
1177 Features:
1178
1179  - More performance improvements when long stack traces are enabled
1180
1181 ## 0.7.8-1 (2013-10-02)
1182
1183 Features:
1184
1185  - Performance improvements when long stack traces are enabled
1186
1187 ## 0.7.8-0 (2013-10-02)
1188
1189 Bugfixes:
1190
1191  - Fix promisified methods not turning synchronous exceptions into rejections
1192
1193 ## 0.7.7-1 (2013-10-02)
1194
1195 Features:
1196
1197  - feature
1198
1199 Bugfixes:
1200
1201  - bugfix
1202
1203 ## 0.7.7-0 (2013-10-01)
1204
1205 Features:
1206
1207  - feature
1208
1209 Bugfixes:
1210
1211  - bugfix
1212
1213 ## 0.7.6-0 (2013-09-29)
1214
1215 Features:
1216
1217  - feature
1218
1219 Bugfixes:
1220
1221  - bugfix
1222
1223 ## 0.7.5-0 (2013-09-28)
1224
1225 Features:
1226
1227  - feature
1228
1229 Bugfixes:
1230
1231  - bugfix
1232
1233 ## 0.7.4-1 (2013-09-28)
1234
1235 Features:
1236
1237  - feature
1238
1239 Bugfixes:
1240
1241  - bugfix
1242
1243 ## 0.7.4-0 (2013-09-28)
1244
1245 Features:
1246
1247  - feature
1248
1249 Bugfixes:
1250
1251  - bugfix
1252
1253 ## 0.7.3-1 (2013-09-28)
1254
1255 Features:
1256
1257  - feature
1258
1259 Bugfixes:
1260
1261  - bugfix
1262
1263 ## 0.7.3-0 (2013-09-27)
1264
1265 Features:
1266
1267  - feature
1268
1269 Bugfixes:
1270
1271  - bugfix
1272
1273 ## 0.7.2-0 (2013-09-27)
1274
1275 Features:
1276
1277  - feature
1278
1279 Bugfixes:
1280
1281  - bugfix
1282
1283 ## 0.7.1-5 (2013-09-26)
1284
1285 Features:
1286
1287  - feature
1288
1289 Bugfixes:
1290
1291  - bugfix
1292
1293 ## 0.7.1-4 (2013-09-25)
1294
1295 Features:
1296
1297  - feature
1298
1299 Bugfixes:
1300
1301  - bugfix
1302
1303 ## 0.7.1-3 (2013-09-25)
1304
1305 Features:
1306
1307  - feature
1308
1309 Bugfixes:
1310
1311  - bugfix
1312
1313 ## 0.7.1-2 (2013-09-24)
1314
1315 Features:
1316
1317  - feature
1318
1319 Bugfixes:
1320
1321  - bugfix
1322
1323 ## 0.7.1-1 (2013-09-24)
1324
1325 Features:
1326
1327  - feature
1328
1329 Bugfixes:
1330
1331  - bugfix
1332
1333 ## 0.7.1-0 (2013-09-24)
1334
1335 Features:
1336
1337  - feature
1338
1339 Bugfixes:
1340
1341  - bugfix
1342
1343 ## 0.7.0-1 (2013-09-23)
1344
1345 Features:
1346
1347  - feature
1348
1349 Bugfixes:
1350
1351  - bugfix
1352
1353 ## 0.7.0-0 (2013-09-23)
1354
1355 Features:
1356
1357  - feature
1358
1359 Bugfixes:
1360
1361  - bugfix
1362
1363 ## 0.6.5-2 (2013-09-20)
1364
1365 Features:
1366
1367  - feature
1368
1369 Bugfixes:
1370
1371  - bugfix
1372
1373 ## 0.6.5-1 (2013-09-18)
1374
1375 Features:
1376
1377  - feature
1378
1379 Bugfixes:
1380
1381  - bugfix
1382
1383 ## 0.6.5-0 (2013-09-18)
1384
1385 Features:
1386
1387  - feature
1388
1389 Bugfixes:
1390
1391  - bugfix
1392
1393 ## 0.6.4-1 (2013-09-18)
1394
1395 Features:
1396
1397  - feature
1398
1399 Bugfixes:
1400
1401  - bugfix
1402
1403 ## 0.6.4-0 (2013-09-18)
1404
1405 Features:
1406
1407  - feature
1408
1409 Bugfixes:
1410
1411  - bugfix
1412
1413 ## 0.6.3-4 (2013-09-18)
1414
1415 Features:
1416
1417  - feature
1418
1419 Bugfixes:
1420
1421  - bugfix
1422
1423 ## 0.6.3-3 (2013-09-18)
1424
1425 Features:
1426
1427  - feature
1428
1429 Bugfixes:
1430
1431  - bugfix
1432
1433 ## 0.6.3-2 (2013-09-16)
1434
1435 Features:
1436
1437  - feature
1438
1439 Bugfixes:
1440
1441  - bugfix
1442
1443 ## 0.6.3-1 (2013-09-16)
1444
1445 Features:
1446
1447  - feature
1448
1449 Bugfixes:
1450
1451  - bugfix
1452
1453 ## 0.6.3-0 (2013-09-15)
1454
1455 Features:
1456
1457  - feature
1458
1459 Bugfixes:
1460
1461  - bugfix
1462
1463 ## 0.6.2-1 (2013-09-14)
1464
1465 Features:
1466
1467  - feature
1468
1469 Bugfixes:
1470
1471  - bugfix
1472
1473 ## 0.6.2-0 (2013-09-14)
1474
1475 Features:
1476
1477  - feature
1478
1479 Bugfixes:
1480
1481  - bugfix
1482
1483 ## 0.6.1-0 (2013-09-14)
1484
1485 Features:
1486
1487  - feature
1488
1489 Bugfixes:
1490
1491  - bugfix
1492
1493 ## 0.6.0-0 (2013-09-13)
1494
1495 Features:
1496
1497  - feature
1498
1499 Bugfixes:
1500
1501  - bugfix
1502
1503 ## 0.5.9-6 (2013-09-12)
1504
1505 Features:
1506
1507  - feature
1508
1509 Bugfixes:
1510
1511  - bugfix
1512
1513 ## 0.5.9-5 (2013-09-12)
1514
1515 Features:
1516
1517  - feature
1518
1519 Bugfixes:
1520
1521  - bugfix
1522
1523 ## 0.5.9-4 (2013-09-12)
1524
1525 Features:
1526
1527  - feature
1528
1529 Bugfixes:
1530
1531  - bugfix
1532
1533 ## 0.5.9-3 (2013-09-11)
1534
1535 Features:
1536
1537  - feature
1538
1539 Bugfixes:
1540
1541  - bugfix
1542
1543 ## 0.5.9-2 (2013-09-11)
1544
1545 Features:
1546
1547  - feature
1548
1549 Bugfixes:
1550
1551  - bugfix
1552
1553 ## 0.5.9-1 (2013-09-11)
1554
1555 Features:
1556
1557  - feature
1558
1559 Bugfixes:
1560
1561  - bugfix
1562
1563 ## 0.5.9-0 (2013-09-11)
1564
1565 Features:
1566
1567  - feature
1568
1569 Bugfixes:
1570
1571  - bugfix
1572
1573 ## 0.5.8-1 (2013-09-11)
1574
1575 Features:
1576
1577  - feature
1578
1579 Bugfixes:
1580
1581  - bugfix
1582
1583 ## 0.5.8-0 (2013-09-11)
1584
1585 Features:
1586
1587  - feature
1588
1589 Bugfixes:
1590
1591  - bugfix
1592
1593 ## 0.5.7-0 (2013-09-11)
1594
1595 Features:
1596
1597  - feature
1598
1599 Bugfixes:
1600
1601  - bugfix
1602
1603 ## 0.5.6-1 (2013-09-10)
1604
1605 Features:
1606
1607  - feature
1608
1609 Bugfixes:
1610
1611  - bugfix
1612
1613 ## 0.5.6-0 (2013-09-10)
1614
1615 Features:
1616
1617  - feature
1618
1619 Bugfixes:
1620
1621  - bugfix
1622
1623 ## 0.5.5-1 (2013-09-10)
1624
1625 Features:
1626
1627  - feature
1628
1629 Bugfixes:
1630
1631  - bugfix
1632
1633 ## 0.5.5-0 (2013-09-09)
1634
1635 Features:
1636
1637  - feature
1638
1639 Bugfixes:
1640
1641  - bugfix
1642
1643 ## 0.5.4-1 (2013-09-08)
1644
1645 Features:
1646
1647  - feature
1648
1649 Bugfixes:
1650
1651  - bugfix
1652
1653 ## 0.5.4-0 (2013-09-08)
1654
1655 Features:
1656
1657  - feature
1658
1659 Bugfixes:
1660
1661  - bugfix
1662
1663 ## 0.5.3-0 (2013-09-07)
1664
1665 Features:
1666
1667  - feature
1668
1669 Bugfixes:
1670
1671  - bugfix
1672
1673 ## 0.5.2-0 (2013-09-07)
1674
1675 Features:
1676
1677  - feature
1678
1679 Bugfixes:
1680
1681  - bugfix
1682
1683 ## 0.5.1-0 (2013-09-07)
1684
1685 Features:
1686
1687  - feature
1688
1689 Bugfixes:
1690
1691  - bugfix
1692
1693 ## 0.5.0-0 (2013-09-07)
1694
1695 Features:
1696
1697  - feature
1698
1699 Bugfixes:
1700
1701  - bugfix
1702
1703 ## 0.4.0-0 (2013-09-06)
1704
1705 Features:
1706
1707  - feature
1708
1709 Bugfixes:
1710
1711  - bugfix
1712
1713 ## 0.3.0-1 (2013-09-06)
1714
1715 Features:
1716
1717  - feature
1718
1719 Bugfixes:
1720
1721  - bugfix
1722
1723 ## 0.3.0 (2013-09-06)