Mark,

Your understanding of “Patch Available” certainly makes sense and it explains 
why you approach the process the way you do. I have a slightly different 
personal understanding of “Patch Available” — I read it to mean “the person 
responsible for this Jira has contributed code they feel solves the issue.” A 
review will (hopefully) determine if that assertion is correct and complete. I 
think we kind of agree on "my viewpoint is simply that "Patch Available" means 
"Awaiting Review" or "In Review.”” but I see “In Review” as a potentially 
iterative process — it could be on the second pass of the contributor 
responding to comments, but it’s still “In Review” in my eyes. I don’t know 
that the granularity of Jira supports the specific workflow states of “been 
reviewed once but not complete/accepted yet”.

What state does “Cancel Patch” result in? If it just reverts to “Open”, I don’t 
see the value because that obfuscates the difference between a Jira that hasn’t 
even been touched and one that has 90% of the code done. I agree we should make 
the RM’s job easier, but I also think it doesn’t help the visibility for 
reviewers to see a Jira marked as “open” when there is the potential for that 
patch to be ready for merge in a very short amount of time.

I think these conversations will ultimately help us narrow in on shared 
definitions that make sense to everyone though, so I’m glad we’re talking about 
it.

Andy LoPresto
[email protected]
[email protected]
PGP Fingerprint: 70EC B3E5 98A6 5A3F D3C4  BACE 3C6E F65B 2F7D EF69

> On Feb 24, 2017, at 1:07 PM, Mark Payne <[email protected]> wrote:
> 
> Andy,
> 
> If the reviewer is looking for clarification, then it may make sense to leave 
> the JIRA in "Patch Available" state
> as you suggest. If there are minor fixes needed, though, then the patch is 
> not ready. In JIRA, the verbiage for
> Cancel Patch says "The patch is not yet ready to be committed." So if minor 
> fixes are needed, then I believe
> it is appropriate to Cancel Patch. Once those changes (minor or not) are made 
> and the PR updated, then the
> PR needs review again and the status should be changed back to "Patch 
> Available" again.
> 
> I guess my viewpoint is simply that "Patch Available" means "Awaiting Review" 
> or "In Review." If it is awaiting
> changes of some kind and won't be merged as-is, then we should Cancel Patch.
> 
> Do you or others have differing views on the meaning of "Patch Available"?
> 
> Thanks
> -Mark
> 
> 
> On Feb 24, 2017, at 3:27 PM, Andy LoPresto 
> <[email protected]<mailto:[email protected]>> wrote:
> 
> Mark,
> 
> I like your point about updating the Jira with the Fix Version at the time 
> the PR review begins (or when the PR is submitted, if the contributor is 
> aware of this process). I think it’s better than waiting for the merge, as I 
> proposed before.
> 
> I agree that the reviewer is responsible for keeping the Jira updated in line 
> with their work. I don’t know if I am on the same page as you for “Cancel 
> Patch” if the PR needs changes; sometimes these are minor fixes or just 
> looking for clarification from the contributor, and I don’t think that 
> warrants canceling the availability of the patch. If they are major 
> architectural changes, then that makes more sense to me.
> 
> Andy LoPresto
> [email protected]<mailto:[email protected]>
> [email protected]<mailto:[email protected]>
> PGP Fingerprint: 70EC B3E5 98A6 5A3F D3C4  BACE 3C6E F65B 2F7D EF69
> 
> On Feb 24, 2017, at 12:08 PM, Mark Payne 
> <[email protected]<mailto:[email protected]>> wrote:
> 
> Personally, I am afraid that if we don't set a Fix Version on JIRA's, that 
> some PR's will be lost
> or stalled. I rarely go to github and start looking through the PRs. Instead, 
> I go to JIRA and look
> at what is assigned with a fixVersion of the next release. Then I'll go and 
> review JIRA's that are
> in a state of "Patch Available." Even then I often come across many PR's that 
> have already been
> reviewed by one or more other committers and are awaiting updates.
> 
> So I propose that we address this slightly differently. I believe that we 
> should assign a Fix Version to
> a JIRA whenever a PR is submitted. Then, whenever a committer reviews a PR, 
> he/she should be
> responsible for updating the JIRA. If the PR is merged then the JIRA should 
> be resolved as Fixed.
> But if the PR is not merged because some changes are needed, the reviewer 
> should then go back to
> the JIRA and click 'Cancel Patch'. We are typically very good about resolving 
> as fixed once a PR is
> merged, but we don't typically cancel the patch otherwise.
> 
> If we followed this workflow, then a Release Manager (or anyone else) can 
> easily see which tickets
> need to be reviewed before a release happens and which ones can be pushed out 
> because they
> are not ready (even if a PR has been posted). It also makes it much easier 
> for reviewers to quickly
> know which tickets are awaiting review.
> 
> Thoughts?
> 
> -Mark
> 
> 
> On Feb 23, 2017, at 3:37 AM, Andy LoPresto 
> <[email protected]<mailto:[email protected]>> wrote:
> 
> As someone who has surely been guilty of optimistically setting fix versions 
> and then not meeting them, I second Joe's point about it holding up releases. 
> Better to get the PR out, reviewed, and merged *before* setting the fix 
> version in my opinion.
> 
> Andy LoPresto
> [email protected]<mailto:[email protected]>
> [email protected]<mailto:[email protected]>
> PGP Fingerprint: 70EC B3E5 98A6 5A3F D3C4  BACE 3C6E F65B 2F7D EF69
> 
> On Feb 22, 2017, at 19:39, Joe Witt <[email protected]> wrote:
> 
> Peter,
> 
> This is just my preference so discussion is certainly open.  But the
> way I see it we should not set the fix version on JIRAs unless they
> really should block a release without resolution or if due to some
> roadmap/planning/discussion it is a new feature/improvement that is
> tied to a release.  Otherwise, for the many things which pop up
> throughout a given release cycle they should be avoided.  That is to
> say the majority of the time we'd avoid fix versions until the act of
> merging a contribution which also means it has been reviewed.
> 
> From the release management point of view:
> This approach helps greatly as until now it is has been really
> difficult and time consuming to pull together/close down a release as
> pretty much anyone can set these fix versions and make it appear as
> though the release is not ready when in reality it is perfectly
> releasable as-is but might miss out on some contribs that someone
> would like to see in the release but has as of yet not gotten the PR
> and/or review traction necessary.
> 
> From the contributor point of view:
> If someone makes a contribution they obviously want that code to end
> up in a release.  But being an RTC community we need and want peer
> review before the code is submitted.  Some contributions are frankly
> hard to get peer review on or simply take time for someone to
> volunteer to do.  PRs which are difficult to test, lack testing, are
> related to systems or environments which are not easily replicated,
> etc.. are inherently harder to get peer review for.  Also, the
> community has grown quite rapidly and sometimes the hygiene of a given
> PR isn't great.  So our 'patch available' and 'open PR' count ticks
> up.  We need reviews/feedback as much as we need contributions so it
> is important for folks that want those contributions in to build
> meritocracy as well in reviewing others contributions.  This helps
> build a network of contributors/reviewers and improves the timeliness
> of reviews.  Long story short here is that because at times PRs can
> sit too long sometimes people put a fix version on the JIRA so it acts
> as a sort of 'gating function' on the release.  This I am saying is
> the practice that should not occur (given the thoughts above).  We
> should instead take the issue of how to more effectively
> triage/review/provide feedback/and manage expectations for
> contributions so contributors don't feel like their stuff will just
> sit forever.
> 
> Does that make sense and seem fair?
> 
> Thanks
> Joe
> 
> 
> 
> On Wed, Feb 22, 2017 at 2:39 PM, Peter Wicks (pwicks) <[email protected]> 
> wrote:
> Just for clarification, "We really need to avoid the practice of setting fix 
> versions without traction", would mean don't set a version number until after 
> we've submitted a PR? Until after the PR has been closed? Other?
> 
> Thanks,
> Peter
> 
> -----Original Message-----
> From: Joe Witt [mailto:[email protected]]
> Sent: Wednesday, February 22, 2017 12:55 PM
> To: [email protected]
> Subject: Closing in on a NiFi 1.2.0 release?
> 
> team,
> 
> On the users lists we had an ask of when we are planning to cut a
> 1.2.0 release.  And someone else asked me recently off-list.
> 
> There are 45 open JIRAs tagged to it as of now.
> 
> https://issues.apache.org/jira/issues/?jql=project%20%3D%20NIFI%20AND%20fixVersion%20%3D%201.2.0%20AND%20resolution%20%3D%20Unresolved%20ORDER%20BY%20priority%20DESC%2C%20key%20DESC
> 
> I'd be favorable to going through and seeing if we can start the motions for 
> a 1.2.0 release and which are ones we can wait for and which we should have 
> in 1.2.0 for sure.
> 
> Is there any reason folks can think of to hold off on a 1.2.0 release?
> 
> A non trivial number of the JIRAs are for things which have or do not have 
> PRs but have no review traction.  We really need to avoid the practice of 
> setting fix versions without traction on this as otherwise it holds up the 
> releases.
> 
> Thanks
> Joe
> 
> 
> 

Attachment: signature.asc
Description: Message signed with OpenPGP using GPGMail

Reply via email to