-
Notifications
You must be signed in to change notification settings - Fork 500
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
Cucumber 4 support #671
Comments
manual gems are not that scary, add a I'm not super worried about cucumber 2, whoever wants that can hopefully use an old version of paralllel_tests making a separate gem is a lot of overhead and will get out of sync over time, so I'd prefer not to. would recommend to use a branch of parallel_tests until cucumber 4 and after we switch it over |
Ok! I'll use my branch until cucumber 4 is out, and then we'll see 👍. |
Cucumber 4 was released. I dusted off my old branch and it seems to still work correctly. Do you want to me to prepare a PR? |
yes, definitely make a PR! |
Sure, I'll prepare the PR tomorrow! As far as I can see, old cucumbers would still be supported. As a matter of fact, support for cucumber 2.x might actually be restored as a side effect. The downside is the need for users to manually add the |
I still believe the best way to approach this would be to extract support to a You said
But if we keep the gem in this repo and make releases always in sync with |
To me it feels wrong that end users need to add dependencies they're not using directly to their |
end users that don't use cucumber should not have to add cucumber to their
Gemfile
but if they are using cucumber they have to have one of the supported
versions installed (ideally it's not just 1)
…On Sat, Jun 6, 2020 at 8:11 AM David Rodríguez ***@***.***> wrote:
To me it feels wrong that end users need to add dependencies they're not
using directly to their Gemfile to make this work.
—
You are receiving this because you modified the open/close state.
Reply to this email directly, view it on GitHub
<#671 (comment)>,
or unsubscribe
<https://github.com/notifications/unsubscribe-auth/AAACYZ2S37SVJVWLGBXBWR3RVJMDJANCNFSM4GJGXCMA>
.
|
Oh, I think you might have missed my initial comments in this thread. My implementation of cucumber 4 support uses an extra gem, |
don't add it to the gemspec, but as |
Well, it will work in the sense that it will allow the users to upgrade the gem, and then fail at runtime and tell users that they need to add the |
yeah, it's not great, but having everyone install extra gems is also bad :(
I guess the only clean solution is parallel_tests_cucumber gem :(
…On Sat, Jun 6, 2020 at 9:39 AM David Rodríguez ***@***.***> wrote:
Well, it will work in the sense that it will allow the users to upgrade
them gem, and then fail at runtime and tell users that they need to add the
cuke_modeler gem to their Gemfile. To me that's not the best user
experience.
—
You are receiving this because you modified the open/close state.
Reply to this email directly, view it on GitHub
<#671 (comment)>,
or unsubscribe
<https://github.com/notifications/unsubscribe-auth/AAACYZ23AWSJWO27EXGL2SLRVJWL5ANCNFSM4GJGXCMA>
.
|
That's what I'm suggesting. |
Yeah, let's do it then ... you make the new gem and then we remove cucumber support here or how do you envision this ? |
That sounds good to me. I would probably leave cucumber 3 support in this gem for a while until people transition. |
alternatively: can we leave base cucumber support in here and have the extras as a gem ? (log parsing/ splitting etc fancyness ?) |
I'll have a first look at what extracting the gem involves and get back 👍. |
Ok, so I understand the situation better now. Only use cases that need |
awesome! :D
…On Tue, Jun 9, 2020 at 3:43 AM David Rodríguez ***@***.***> wrote:
Ok, so I understand the situation better now. Only use cases that need
cuke_modeler are the --group-by step and --group-by scenario flags. Given
this is the case, I believe your initial suggestion of trying to activate
the extra dependency at runtime and give a proper message if not there
feels easier.
—
You are receiving this because you modified the open/close state.
Reply to this email directly, view it on GitHub
<#671 (comment)>,
or unsubscribe
<https://github.com/notifications/unsubscribe-auth/AAACYZ6PDJ77M7MKPE4Z3HTRVYG5VANCNFSM4GJGXCMA>
.
|
Great, working on it now. One more question, are you fine with testing only against cucumber 4 from now on, or should I add some machinery to test against different major versions of cucumber? |
should be fine, we can look into dual-testing after the initial PR is done
to make it simpler
…On Tue, Jun 9, 2020 at 8:14 AM David Rodríguez ***@***.***> wrote:
Great, working on it now. One more question, are you fine with testing
only against cucumber 4 from now on, or should I add some machinery to test
against different major versions of cucumber?
—
You are receiving this because you modified the open/close state.
Reply to this email directly, view it on GitHub
<#671 (comment)>,
or unsubscribe
<https://github.com/notifications/unsubscribe-auth/AAACYZ3OIBDAFLNLUAZ2EHDRVZGWPANCNFSM4GJGXCMA>
.
|
I need a bug fix that hopefully will be released with cucumber 4, but since I use
cucumber
throughparallel_tests
, I won't be able to use it untilparallel_tests
add support. So I'm looking into adding it.Initially it seemed pretty hard because there's pretty low level
gherkin
parsing stuff involved in this gem, but then thanks to this comment, I found this gem that provides exactly the kind of APIparallel_tests
use.I switched
parallel_tests
code to use this gem in this branch and it seems to work just fine. Maybe using this gem even adds back support for cucumber 2, which is currently broken... 🤷♂️.Anyways, the problem with doing this, is that another dependency needs to be added, and since this gem has no specific framework dependencies, it will need to be manually done by end users. So... I'm not sure what's best, but I lean towards extracting cucumber support to a separate
parallel_tests-cucumber
gem that actually depends oncucumber
andcuke_modeler
.Thoughts?
The text was updated successfully, but these errors were encountered: