[SUREFIRE-1654] Remove deprecated forkMode parameter#575
Conversation
|
Hey, I'm aware of the integration test failures and will try to address them tomorrow. |
mthmulders
left a comment
There was a problem hiding this comment.
Thanks for this thorough work, @SimonBaars! I also appreciate your "reviewers' guide".
I think the proposed changes introduce a few duplicate lines - nothing too serious in terms of damage caused, but let's make sure the code is left better than when we first found it.
We should make sure that the migration guide (how to get away from forkMode) ends up somewhere in the release announcements of Surefire 3.0.0 (and if there's a milestone release in between, maybe there as well).
Finally, I'd appreciate it if somebody else with knowledge about Surefire could review these changes, too.
I don't know how to do this. Will you pull this? |
|
Hey, I resolved the failing tests (except for |
|
@mthmulders We need another review for this PR, so ideally it won't lay dormant for too long. Do you know someone to include? |
In hindsight, it might be a better approach to keep the content in maven-surefire-plugin/src/site/apt/examples/fork-options-and-parallel-execution.apt.vm. We should update it - instead of
We might want to go for something like
|
|
@SimonBaars Thank you for the massive work. I guess we owe you a pack of Amstel.
|
|
@SimonBaars Thanks ... I will try to review and test in a few days |
|
First check:
|
slawekjaranowski
left a comment
There was a problem hiding this comment.
Looks ok for me.
Local test ok, tested with it test and with Maven core-its
21e6bc8 to
80adc4f
Compare
michael-o
left a comment
There was a problem hiding this comment.
If Slawek approves then I can I approve as well.
|
Nobody knows - but every removed line of code can help for simplify, so be brave and go forward |
|
Resolve #2095 |
The
forkModeparameter has been deprecated in Surefire 2.14, and with the upcoming 3.0 release, it's finally time to remove the parameter once and for all.Reviewer instructions
Removing the
forkModeended up being a quite comprehensive change. Throughout the refactoring/restructuring process, I ran the tests and integration tests often, to ensure equivalent behavior. I re-purposed mostforkModetests to test theforkCountparameter, removing a few that were per definition redundant.Each commit should address a "sub-issue" I had to tackle to remove the
forkMode. If the entire diff looks daunting, I can recommend reviewing commit-by-commit. Each commit should be a version that compiles on its own.Here are a few more pointers for reviewing:
forkModetoforkCount.forkModeparameter, before moving on to the entire diff.What's next?
While working on this, I noticed a few codebase styling issues that I'd like to refactor. To keep the diff of this PR sensible, I decided it would be better to open a separate PR for that. So you can expect another PR incoming 😉
Checklist
Following this checklist to help us incorporate your
contribution quickly and easily:
for the change (usually before you start working on it). Trivial changes like typos do not
require a JIRA issue. Your pull request should address just this issue, without
pulling in other changes.
[SUREFIRE-XXX] - Fixes bug in ApproximateQuantiles,where you replace
SUREFIRE-XXXwith the appropriate JIRA issue. Best practiceis to use the JIRA issue title in the pull request title and in the first line of the
commit message.
mvn clean installto make sure basic checks pass. A more thorough check willbe performed on your pull request automatically.
mvn -Prun-its clean install).If your pull request is about ~20 lines of code you don't need to sign an
Individual Contributor License Agreement if you are unsure
please ask on the developers list.
License
To make clear that you license your contribution under
the Apache License Version 2.0, January 2004
you have to acknowledge this by using the following check-box.
I hereby declare this contribution to be licenced under the Apache License Version 2.0, January 2004
In any other case, please file an Apache Individual Contributor License Agreement.