New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
0.8.0 exposes bluebird promises in API, breaking things #198
Comments
Sounds good to me. I maintain a downstream project which has had some hurt from this library exposing third-party types, and I could do without another round of the same...! @brendandburns this was your commit and it was a big regenerate - was it intentional to surface Bluebird, and if so is it okay to back it out? Is this going to need changes in the Swagger generator so it doesn't re-Bluebird us on the next regenerate? |
@kubernetes/client-node@0.8.0 exposes bluebird promises in its API, causing a lot of breaking changes. See kubernetes-client/javascript#198 for more information. This commit bites the bullet because exec-based auth is broken in earlier versions. The order of arguments for delete methods also changed, so update that.
Hrm, I'm not sure why the regenerate added bluebird promises to the API surface area. @flyboarder do you have any ideas here? |
In looking at this, I think we can simply remove the import from |
@kubernetes/client-node@0.8.0 exposes bluebird promises in its API, causing a lot of breaking changes. See kubernetes-client/javascript#198 for more information. Implement various fixes to workaround the issue. This commit bites the bullet because exec-based auth is broken in earlier versions. The order of arguments for delete methods also changed, so update that.
@brendandburns no idea here, I just ran the generator so I imagine the problem is caused upstream by that. Where is bluebird introduced in the project and do we actually use it internally anywhere? |
Commit f4c4a64 exposes bluebird promises as part of the externally facing API. This breaks downstream TypeScript projects in two ways:
@types/bluebird
were not moved from "devDependencies" to "dependencies" in the package.json, see Typescript definitions are broken in 0.7.1 #156 for context.The first issue is easy enough to fix. The second issue is a bit more complicated. Is there a compelling reason to use bluebird promises over native ES6 promises? If so, it is going to cause compilation failures in downstream projects.
I'd be happy to submit a PR to revert the addition of bluebird.
The text was updated successfully, but these errors were encountered: