Q.async() no longer unwraps returned promises

The following snippet:

    var Q = require('q');
    var test = Q.async(function*() {
        return Q(123);
    });
    test().then(console.log);

now prints { state: "fulfilled", value: 123 } instead of 123