4 * support passing the rest of the arguments to co into the generator
7 function *gen(...args) { }
14 * support regular functions (that return promises)
19 * refactor `isGeneratorFunction`
20 * expose generator function from `co.wrap()`
21 * drop support for node < 0.12
26 * check for generator functions in a ES5-transpiler-friendly way
31 * support comparing generator functions with ES6 transpilers
36 * fix memory leak #180
41 * always return a global promise implementation
46 * friendlier ES6 module exports
51 * co now returns a promise and uses promises underneath
52 * `co.wrap()` for wrapping generator functions
57 * remove `setImmediate()` shim for node 0.8. semi-backwards breaking.
58 Users are expected to shim themselves. Also returns CommonJS browser support.
59 * added key order preservation for objects. thanks @greim
60 * replace `q` with `bluebird` in benchmarks and tests
65 * add `setImmediate()` fallback to `process.nextTick`
66 * remove duplicate code in toThunk
72 * fix object/array test failure which tries to enumerate dates. Closes #98
73 * fix final callback error propagation. Closes #92
78 * fix toThunk object check regression. Closes #89
83 * refactor: arrayToThunk @AutoSponge #88
88 * fixed: nil arguments replaced with error fn
93 * fixed: callback passed as an argument to generators
98 * fixed: callback passed as an argument to generators
99 * change: `co(function *(){})` now returns a reusable thunk
100 * change: `this` must now be passed through the returned thunk, ex. `co(function *(){}).call(this)`
101 * fix "generator already finished" errors
106 * add `yield object` support
111 * change: make the `isGenerator()` function more generic
116 * add passing of arguments into the generator. closes #33.
121 * remove callback in favour of thunk-only co(). Closes #30 [breaking change]
122 * remove `co.wrap()` [breaking change]
127 * fix: preserve receiver with co.wrap()
132 * remove setImmediate() usage - ~110% perf increase. Closes #14
137 * add receiver propagation support
138 * examples: update streams.js example to use `http.get()` and streams2 API
143 * fix gen.next(val) for latest v8. Closes #8
148 * add promise support to joins
149 * add `yield generatorFunction` support
150 * add `yield generator` support
151 * add nested join support
156 * add passing of arguments
161 * fix join() of zero thunks
166 * add array yielding support. great suggestion by @domenic
171 * add promise support
172 * change nextTick to setImmediate