-
Notifications
You must be signed in to change notification settings - Fork 2.7k
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
[MNG-6716] Test and fix erroneous compileRoots #274
Conversation
I am trying to understand the fix, but I don't. Although if I look at the bug report the OP add the same path twice in different representations. How does this fix address this? |
The comment in the code tries to explain it, but probably not that well. So the point is that there are 2 passes done to build a MavenProject. It was the case before the changes I made first. Before my change, the project built on 1st pass was build with "raw" values (no resolution as parent wasn't set) was discarded and a new project was then build on 2nd pass (with some resolved values) using the result of the 1st pass, but really creating new objects. Now I'm writing that, I think the fix is a bit weak. In general, we should instead identify what needs to be set on 1st pass and only set that, nothing more; and then on 2nd pass, set the other things. |
Recent changes in ProjectBuilder make that the compile roots could be set erroneously on 1st phase and propagated in the results. This patch just skips setting the compile source root in the 1st pass (when buildParentIfNonExisting==false). It also tests some other fields of MavenProject
@michael-o I gave a try to another approach that's hopefully cleaner and easier to understand. The commit was updated and is ready for a new review. |
@rfscholte Can you drop some lines? I guess don't know that part of code to apply proper judgement here. |
@michael-o your guess is as good as mine. It seems like these |
OK, I will push a branch and we'll see how far we get. |
ITs are running... |
Recent changes in ProjectBuilder make that the compile roots could be set erroneously on 1st phase and propagated in the results. This patch just skips setting the compile source root in the 1st pass (when buildParentIfNonExisting==false). It also tests some other fields of MavenProject This closes #274
It passes locally for me, but does not show up on Jekins. Any idea? |
I had that issue too. Trick is to hit "Scan Multibranch Pipeline Now" in Jenkins to force it manually. Need to investigate the cause |
So all ITs have passed on Jenkins. @mickaelistria Would you be so kind and test this out with the sample project of the reporter since he's offline for some while. If all is well, I will merge. If @rfscholte does not mind. |
I already tested it before submittinh the patch and the probable cause is fixed.bit I was never able to reproduce the actual symptom on Linux. |
It looks like we're still suffering from issues from last week, https://builds.apache.org/job/maven-box/job/maven/job/MNG-6716/ is unstable. I would prefer a stable Maven before starting to merge new fixes. |
everything looks ok to merge to master (and be able to launch 3.6.2 release process), isn't it? |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
#shipit
@hboutemy, I trust your judgement. If you bless, I'll do it too. |
@michael-o you asked (on the Jira issue) the user to check that the PR fixed the issue: I did it |
@hboutemy, let's go for it! |
It should be a good rule in every project that we would push PR before and after green Jenkins. Even some companies have a semaphore in the rooms and they stop the development if the build fails and they fix the build together. So there's only single failure to investigate at most. |
committed to master branch, thank you @mickaelistria |
Would be a new issue important in Resolver for the Maven release?
apache/maven-resolver@3e6eb78#commitcomment-34748393
…On Mon, Aug 19, 2019 at 11:45 PM Enrico Olivelli ***@***.***> wrote:
committed to master branch, thank you @mickaelistria
<https://github.com/mickaelistria>
I feel we are ready to cut 3.6.2
—
You are receiving this because you commented.
Reply to this email directly, view it on GitHub
<#274?email_source=notifications&email_token=AAH7ER4FEF3PBCGGBEUG35LQFMH6FA5CNFSM4IISF3W2YY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGOD4UMPXA#issuecomment-522766300>,
or mute the thread
<https://github.com/notifications/unsubscribe-auth/AAH7ER2FS7Q2MXJ7YFNF2NTQFMH6FANCNFSM4IISF3WQ>
.
|
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.
[MNG-XXX] - Fixes bug in ApproximateQuantiles
,where you replace
MNG-XXX
with 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 verify
to make sure basic checks pass. A more thorough check willbe performed on your pull request automatically.
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.
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.