public inbox for devel@edk2.groups.io
 help / color / mirror / Atom feed
From: "Michael D Kinney" <michael.d.kinney@intel.com>
To: Laszlo Ersek <lersek@redhat.com>,
	"devel@edk2.groups.io" <devel@edk2.groups.io>,
	Sean Brogan <sean.brogan@microsoft.com>,
	"Bret Barkelew" <Bret.Barkelew@microsoft.com>,
	"Gao, Liming" <liming.gao@intel.com>,
	"Kinney, Michael D" <michael.d.kinney@intel.com>
Subject: Re: [edk2-devel] EDK II Maintainers - EDK II CI is now active on edk2/master
Date: Mon, 2 Dec 2019 19:55:20 +0000	[thread overview]
Message-ID: <E92EE9817A31E24EB0585FDF735412F5B9E25C97@ORSMSX113.amr.corp.intel.com> (raw)
In-Reply-To: <184dbbde-0916-7e09-476c-de700cc57dc5@redhat.com>

Hi Laszlo,

Comments below.

Mike

> -----Original Message-----
> From: Laszlo Ersek <lersek@redhat.com>
> Sent: Thursday, November 28, 2019 4:01 AM
> To: Kinney, Michael D <michael.d.kinney@intel.com>;
> devel@edk2.groups.io; Sean Brogan
> <sean.brogan@microsoft.com>; Bret Barkelew
> <Bret.Barkelew@microsoft.com>; Gao, Liming
> <liming.gao@intel.com>
> Subject: Re: [edk2-devel] EDK II Maintainers - EDK II
> CI is now active on edk2/master
> 
> On 11/27/19 20:03, Kinney, Michael D wrote:
> > Hi Laszlo,
> >
> > Do you want to see the presence of the 'push' label
> in a notification
> > when the PR is created, or just when the checks have
> been completed in
> > either the pass or the fail state?
> 
> I'd like to see the purpose of the PR in the first
> notification email that is sent out about the PR.
> Whoever submits the PR clearly knows what they want
> with the PR, so they should communicate it. Placing
> some kind of token in the subject of the email(s) would
> be great (very visible).
> 
> > A PR may be created initially without the 'push'
> label.
> 
> Yes, I noticed that when I first experimented with the
> feature. I found it a bit surprising (but not a
> problem).
> 
> > The EDK II Maintainer can resolve any issues in that
> PR using forced
> > pushes to restart the checks with the issues
> resolved.
> 
> Yes, this is valid for a personal CI build. (Keep
> trying until it passes.)
> 
> > When all check pass, the maintainer can then set the
> 'push' label and
> > re-open the PR.  Then the checks will run again and
> the PR will be
> > merged.
> 
> This -- that is, trying to push until it succeeds -- is
> an invalid pattern for merging patches into edk2
> master, I believe.

I disagree.  As long as email code reviews are done on
the modified patch set and approved before the 'push'
label is set, this is a valid use of the CI system.

> 
> I seem to recall an agreement on the list that, in case
> of conflicts, the revised patch set -- with the
> conflicts resolved -- should be reposted to the list
> for review. Or else, minimally, the maintainer should
> report back with an explanation, or even the actual
> diff, of the
> (minimal!) changes the maintainer had to incorporate,
> to resolve the conflicts.

I agree.  Must always go through code review if changes
are made without reviewers consent.

> 
> I believe we discussed this in connection to whether
> we'd allow github.com to auto-resolve conflicts. We
> said we wouldn't; every conflict would need human
> inspection. And if changes were necessary, relative to
> the reviewed patch series, those should
> 
> - either be minimal; implemented, and also reported
> back to the list, by the maintainer,
> - or more extensive, and reposted by the original
> contributor.

Agree.

> 
> I'd like as few as possible code changes to happen
> outside of the normal review process. (Note: I'm not
> saying "outside of the mailing list" -- once github.com
> satisfies all the requirements, our normal review
> process may become github.com based. And then, on that
> platform, significant conflict resolution should also
> not occur without re-reviewing.)

I am not suggesting any changes to the current code review 
requirements.  A developer/maintainer can initially submit
a PR without the 'push' label.  If any checks fail, and
code changes are required, another round of email based 
reviews are required (v2, v3, etc).  Once those reviews
are approved, the updated patch series can be forced pushed
to the developer/maintainer branch to verify the changes
pass all checks or not and repeat as needed.  All of this
on a single PR.

One example of a failure that does not require code review
is a conflict because another PR was processed just 
before the current PR was submitted.  The maintainer needs
to sync their branch with master and resubmit the PR.  If no
code or commit message changes are required, then no additional
email review is required. This is the same as step 5 in the
following section that also does not require another round
of reviews:

https://github.com/tianocore/tianocore.github.io/wiki/EDK-II-Development-Process#the-maintainer-process-for-the-edk-ii-project

> 
> > In this use case what email notifications would you
> like to see?
> 
> So this question doesn't seem to apply. It's OK if the
> maintainer does not add the "push" label immediately
> (given the UI, it's not even possible to do so). But a
> PR should be forever associated with a single purpose
> at "birth" (personal CI build, or actual push attempt),
> and the notification emails should reflect that
> purpose, from the start.
> 
> (IOW, I don't think it makes sense to "upgrade" a PR
> from "personal CI build" to "push to master".)

I disagree.  I think this is a good use case and helps 
minimize the total number of PRs in the PR history.  I am
not suggesting that this is the required use case.  I am
ok with a single PR handling multiple rounds of code 
reviews or multiple PRs for multiple rounds of code reviews.
However, if there are multiple PRs, we need to know that
the PRs are related to each other.

So my question still stands.  What notifications would
you like to see if we have the use case of a single PR
with multiple rounds of reviews and a transition from 
a PR without the 'push' label to a PR with a 'push' label?

> 
> Thanks!
> Laszlo


  reply	other threads:[~2019-12-02 19:55 UTC|newest]

Thread overview: 37+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2019-11-12  2:55 EDK II Maintainers - EDK II CI is now active on edk2/master Michael D Kinney
2019-11-12  8:56 ` [edk2-devel] " Laszlo Ersek
2019-11-12 19:50   ` Michael D Kinney
2019-11-12 19:52     ` Michael D Kinney
2019-11-13  7:56     ` Laszlo Ersek
2019-11-13  8:57 ` Laszlo Ersek
2019-11-13 16:23   ` Michael D Kinney
2019-11-13 17:03     ` Laszlo Ersek
2019-11-26  8:23 ` Laszlo Ersek
2019-11-27 19:03   ` Michael D Kinney
2019-11-28 12:00     ` Laszlo Ersek
2019-12-02 19:55       ` Michael D Kinney [this message]
2019-12-03  8:56         ` Laszlo Ersek
2019-12-03 17:07           ` Michael D Kinney
2019-12-03 20:39             ` Laszlo Ersek
2019-12-06 11:02 ` Laszlo Ersek
2019-12-06 11:07   ` Laszlo Ersek
2020-01-02 14:42 ` Philippe Mathieu-Daudé
2020-01-02 18:36   ` Michael D Kinney
2020-01-06 14:58     ` Philippe Mathieu-Daudé
2020-01-03 13:29   ` Laszlo Ersek
2020-01-06 17:29 ` Laszlo Ersek
2020-01-06 18:17   ` Michael D Kinney
2020-01-07  9:00     ` Laszlo Ersek
2020-01-09 21:30     ` Laszlo Ersek
2020-01-09 21:37       ` Michael D Kinney
2020-01-10 10:51         ` Laszlo Ersek
2020-03-08 11:12 ` Laszlo Ersek
  -- strict thread matches above, loose matches on Subject: below --
2020-03-08 19:21 Sean
2020-03-08 19:53 ` Michael D Kinney
2020-03-09 19:29   ` Laszlo Ersek
2020-03-09 19:32     ` Laszlo Ersek
2020-03-09 22:00       ` Michael D Kinney
2020-03-09 19:37     ` Laszlo Ersek
2020-03-09 20:06   ` Laszlo Ersek
2020-03-09 21:44     ` Michael D Kinney
2020-03-10  7:53       ` Laszlo Ersek

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-list from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=E92EE9817A31E24EB0585FDF735412F5B9E25C97@ORSMSX113.amr.corp.intel.com \
    --to=devel@edk2.groups.io \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox