timjroberts / cucumber-js-tsflow

Provides 'specflow' like bindings for Cucumber.js in TypeScript 1.7+.
MIT License
133 stars 34 forks source link

Use @cucumber/cucumber instead of cucumber #74

Closed stanecli closed 3 years ago

stanecli commented 3 years ago

Hi. Although it is quite unreasonable for me why they moved the package in the first place, the title says it all: the 'cucumber' package is deprecated, @cucumber/cucumber is the new one. The two versions are the same (7.0.0-rc.0), so it's not a show stopper, for now.. It's just quite frustrating when you just want to try something out and it doesn't work out of the box because of some import errors. Otherwise, it's a great project! :) Cheers

x80486 commented 3 years ago

Would be really great to update this one, even if it's on -rc for now :partying_face:

timjroberts commented 3 years ago

Could you elaborate a little more please? cucumber-tsflow doesn't have a direct dependency on cucumber. Technically it should be in its peer dependencies, but you essentially bring your own version of cucumber into your project.

stanecli commented 3 years ago

I can't give you more because I've completely rewritten the codebase for a PoC since this post and then moved on to specflow (for other technical reasons). If others will have a similar problem, someone will create an issue for sure. I'm closing this for now.

x80486 commented 3 years ago

If you have a current project with cucumber-tsflow and update the cucumber dependency to @cucumber/cucumber, it won't work any more. It's that simple.

I see that somehow cucumber-tsflow is trying to reference some bits from cucumber instead of using @cucumber/cucumber.

wudong commented 3 years ago

There was a pr recently merged to update the dependency to @cucumber. But it is not yet released due to the new version of cucumber is still in rc.

Maybe we should release a rc version as well to track this?

On Fri, 6 Nov 2020, 13:41 x80486, notifications@github.com wrote:

If you have a current project with cucumber-tsflow and update the cucumber dependency to @cucumber/cucumber, it won't work any more. It's that simple.

I see that somehow cucumber-tsflow is trying to reference some bits from cucumber instead of using @cucumber/cucumber.

— You are receiving this because you are subscribed to this thread. Reply to this email directly, view it on GitHub https://github.com/timjroberts/cucumber-js-tsflow/issues/74#issuecomment-723086436, or unsubscribe https://github.com/notifications/unsubscribe-auth/AACJFJKIDKCG7ZQPFCSWQE3SOP4IRANCNFSM4TI2L2NA .

timjroberts commented 3 years ago

Right, I think I understand. Yes, cucumber-tsflow imports cucumber - but it's meant to be a peer (currently unspecified in the package.json file though). If they changed the package name of cucumber and that is what you bring into your project, then cucumber-tsflow won't be able to resolve it because it is still trying to import using the previous package name.

I can see this has been updated, but not release. So yes, perhaps we can release this as an rc too.