-
Notifications
You must be signed in to change notification settings - Fork 133
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
Update Conformance / Use u2d versions #284
Comments
This are great news! I'd like to see cucumber-cpp seamlessly integrated. |
When the wire plugin was first made many moons ago it was a sort of "spin-off" from cucumber ruby. That was used in contract testing. I didn't do any of said work. However this meant it was often tightly integrated into cucumber ruby. And then when it was no longer fashionable / used, it just fell by the wayside. A secondary (or arguably now, primary), use was to use as a server if you like where you could fire events to it, this is what cpp uses it as and others could too. If you find that cucumber-cpp just works as expected, then it is integrated and working. However it's likely that as we build up things we may find more items that are wrong / incorrect. Once we have a v1.0 of cpp cut where we're happy with where it's at, I think then we can look at auxiliary frameworks, such as tag-expressions/cucumber-expressions e.t.c and begin to look at CCK conformance. For reference. The only 100% CCK conformant flavour of cucumber (In the correct way), is JS. Cucumber-Ruby is fully conformant but "not in the right way" (That's being done now). JVM is closely following suit I believe in 2024 once the core maintainer has more time. Once you've got the v1.0 version cut we can also look at some of the more tightly coupled concepts, such as either gherkin (Which is already quite fully formed), or maybe something like the messages protocol (The messages protocol is basically our language agnostic way of decoupling large amounts of complexity and giving us an easier maintenance burden) -> It's worth pointing out cpp messages was first released only a month or so ago if you check here. So it might be a good time to look into that when you can - https://github.com/cucumber/messages/blob/main/CHANGELOG.md |
@luke-hill do I understand correct that the relevant thing for this issue is to make cucumber-cpp compatible with cucumber 9.x and cucumber-wire 7x? A short test (#285) indicate that it works for the few small built in examples. But as I understand you, this is probably by accident. If yes, my question is how we know that cucumber-cpp is really compatible? I understand from your last response that the CCK does not help here. Are there other tests or definitions? |
In here no I don't believe so. There are some in cucumber-wire which have recently been amended. |
🤔 What's the problem you're trying to solve?
@ursfassler - We're now trying to get the cpp version actively supported. The next step would be to fix any wire integrations to use as close to the latest version/s as possible.
Ideally this would see us be able to release a 1.0 version of the cpp framework with late(r) versions of cpp support (Get rid of lots of legacy code / support). And then go down the traditional semver path
✨ What's your proposed solution?
Update to use a cucumber wire 7.x version and a cucumber-ruby 9.x version
⛏ Have you considered any alternatives or workarounds?
N/A
📚 Any additional context?
Cucumber-Wire between v2 and v5 was predominantly not changed much, it was mainly focussed on de-coupling from the cucumber-ruby implementation. As such these versions for the wire plugin can largely be perceived to be identical / having very little difference/s
Since then the main changes are just ruby / stylistic tweaks. Again not much to worry about.
The bigger concern is cucumber-ruby. This has changed a lot. There are some bug fixes going in recently which show some of these oddities (Such as the envelopes not looking as expected). Also some of the acceptance tests with the integrations were a bit flaky. cc/ @canmor
This text was originally generated from a template, then edited by hand. You can modify the template here.
The text was updated successfully, but these errors were encountered: