-
-
Notifications
You must be signed in to change notification settings - Fork 2k
Consolidate duplicate CucumberOptions implementations #1773
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
Comments
The testng implementation does not have |
I split these intentionally to improve the encapsulation of In detail the concrete reasons for introducing runner specific
Will now only need to import classes from
This means that |
Comes to mind that it might be worth delaying V5 for this a bit more and pull extract the events and plugin interfaces to a separate module. |
Unfortunately this is not possible with annotations. |
## Summary With the introduction of v5 we will break the plugin API by moving packages from `cucumber.core` to `io.cucumber.core`. We can use this as an opportunity to extract the plugin and event classes to separate modules. This change moves `io.cucumber.core.plugin` to `io.cucumber.plugin` and `io.cucumber.core.event` to `io.cucumber.plugin.event`. While on its own this change provides little value it will allow us in the future to provide better support for plugins. With the introduction of JPMS we will want to expose these classes for plugin developers. However we also want to avoid the use of core by most end users. By moving these classes to their own modules we can avoid the use of core and future proof the introduction of JPMS. Closes #1773.
Both cucumber-junit and cucumber-testng implement their own
CucumberOptions
annotation. They are identical and should be moved to cucumber-core.The text was updated successfully, but these errors were encountered: