On 07/10/15 17:56, Wu, Jiaxin wrote: > Hi Laszlo, > Thank you for your wonderful explanation. > > You explained before you *did* get a personal copy of the v2. I > *thought* you got a personal v2 copy *maybe* by setting the specific > mail filtering rule. > > Also as you said it's a "terrible practice" for edk2-mailing list's > "crazy setting", "because followups posted to the *reflected* message > will have no chance to Cc: the maintainer!" --->Yes! Except the > followers check the content with "Cc:" tags carefully, he will do > miss the Cc people by followups mail.
Correct; if a person is careful enough to look at the Cc: tags in the message body, and copies the names manually to Cc: headers in his MUA, then things should work. (And yes, I tend to re-Cc people manually.) > So, I bothered to send the > patches to specify the maintainers with “--to==someone” tag to avoid > this issue. The maintainers and myself(also the others in > edk2-mailing) *did* get the following headers: > From: Jiaxin > To: edk2-devel@lists.sourceforge.net; Someone > > That is not only sender and Cc maintainer want, but also the other > follower's want. That's a nice workaround I guess (I have not been aware of it, so thanks for sharing it), but it has several drawbacks: - You cannot specify different recipients for different patches. If your patches modify different packages, then that implies different sets of maintainers too, probably. (Unless, of course, you send each patch email with a separate invocation of git-send-email, which is quite a mess if you have longer patch series.) - If you send v2, v3, v4, you need to remember to include the same set of people as in the previous version. Whereas, if you stick the Cc into the commit message, then it stays permanent after a rebase, for the next version too. - Including the Cc's in the commit message has additional value: - once the patch is committed, the commit message displays that X and Y and Z were Cc'd. This proves "awareness". - The commit log can be searched for Cc's. Useful not just for natural persons, but for pseudo-Cc's as well; for example Jordan recently suggested to nominate patches as "trivial", and as "stable", by Cc'ing them to the edk2-trivial *name*, and the UDK... *name*, but the usual edk2 email list address. This allows people to search for patches in the commit log (and the mailing list) that are candidates for the "trivial patch" workflow or for the UDK branch. > I have another question not verified yet: If we use "To: Someone" tag > in commit message instead of "Cc: Someone" tag, How about > edk2-mailing list setting? I don't know. As far as I know, the To: tag inside the commit message is fully unusual, and I think git-send-email doesn't even recognize it. So, your initial practice with the Cc: tags was correct. We shouldn't diverge from otherwise well-working open source practices, just to work around the brokenness of the list software. The Cc-stripping problem should be hopefully sorted out once we move to the new mailing list. Thank you! Laszlo > > Thanks again. > Jiaxin > > > -----Original Message----- > From: Laszlo Ersek [mailto:ler...@redhat.com] > Sent: Friday, July 10, 2015 7:29 PM > To: Wu, Jiaxin > Cc: Justen, Jordan L; edk2-devel@lists.sourceforge.net; af...@apple.com > Subject: Re: [edk2] [PATCH v3 3/7] EmulatorPkg: Remove Ip4ConfigDxe module > from EmulatorPkg > > On 07/10/15 10:40, Wu, Jiaxin wrote: >> Yes, edk2-devel will strip it. You can check version2 for those series >> patches, I had added someone with cc tag to the commit message, but it >> haven't actually cc to those people. > > Yes, you did! I *did* get a personal copy of the v2 patches from you! > > (And another one from the list server.) > > We discussed this earlier. I explained it to you, and I think you missed the > point. > > The edk2-devel list's settings *cannot* interfere with the Cc headers of the > patch email that *you* send out. The list settings can only influence the Cc > headers on the emails that the list server *reflects*. > > Here's a diagram: > > Jiaxin > / \ > / \ > [Cc: Laszlo] [To: edk2-devel] > | | > | | > Laszlo list server > / | | \ > / | | \ > Laszlo Jiaxin | ... > Jordan > > Assume the following: > > - You write the commit message for your patch, and add "Cc: Laszlo" to > the commit message. > > - Then you format the patch with "git format-patch", and send it with > "git send-email" to "edk2-devel" (To:). > > Then the following happens: > > (1) The "git send-email" program will automatically set the Cc: header of the > email from the Cc: tag in the commit message. That is, the message mailed out > *from your side* will have the following headers: > > From: Jiaxin > To: edk2-devel > Cc: Laszlo > > (2) That message will be *directly* sent to two recipients: Laszlo, and the > edk2-devel list server. > > (3) Laszlo will get a copy directly from you, and another copy > *reflected* from the mailing list server. (Laszlo has mail filters in place > that file the direct copy into his INBOX, and the reflected copy into his > edk2-devel folder.) > > The copy that Laszlo directly gets from Jiaxin will have the following > headers: > > From: Jiaxin > To: edk2-devel > Cc: Laszlo > > The copy that Laszlo gets from the mailing list server will have the > following headers: > > From: Jiaxin > To: edk2-devel > > This is because the mailing list server is *stupid*. It sees, in its internal > database, that Laszlo is subscribed, and therefore thinks (completely > incorrectly) that Laszlo should not be Cc:-d on messages reflected from the > list, "because he gets them anyway". > > (4) Jiaxin, since he is subscribed, will get one copy of the message, > reflected by the mailing list server. The headers on that message will be: > > From: Jiaxin > To: edk2-devel > > No Cc:Laszlo. See above why. > > (5) Jordan, because he is subscribed, gets one copy of the message, reflected > by the mailing list server. The headers on Jordan's copy will say: > > From: Jiaxin > To: edk2-devel > > No Cc: Laszlo. See above why. > > (6) Now, if Jordan responds at this point, then he will *not* carbon-copy > Laszlo, because the message that he received *lacks* the Cc. > > Because, the mailing list server is *stupid*, and intentionally stripped > Cc:Laszlo, *even though* Jiaxin added it initially. > > ----*---- > > Summary: > > - The mailing list is stupid. It strips the Cc's of subscribed people, > but (obviously) it can do this only with messages that it *reflects*. > > - The *original* emails sent out by a patch submitter should > *nonetheless* Cc: the maintainers, because the maintainers will get > those messages *directly*. That's the point. > > The mailing list's broken settings prevent list followups from carrying > forward the Cc, but the initial, direct email does adhere to the Cc's. > > Laszlo > >> >> For the git script format, I know it support both linux shell and windows >> CMD(CMD is my choice). >> *Firstly, we must add the git installation path to system variable(PATH with >> "C:\Program Files (x86)\Git\cmd"). >> *And then, we can create a ".bat" file with any git cmd you want to execute >> for those patch series. >> For example in ".bat" file: >> git send-email 0000.patch --to=edk2-devel@lists.sourceforge.net >> --to="someone" --to= "someone" >> git send-email 0001.patch --to=edk2-devel@lists.sourceforge.net --to= >> "someone" --to= "someone" >> git send-email 0002.patch --to=edk2-devel@lists.sourceforge.net --to= >> "someone" --to= "someone" >> git send-email 0003.patch --to=edk2-devel@lists.sourceforge.net --to= >> "someone" --to= "someone" >> git send-email 0004.patch --to=edk2-devel@lists.sourceforge.net --to= >> "someone" --to= "someone" >> *Finally, you just need to run this ".bat" file. >> >> Thanks. >> Jiaxin >> >> -----Original Message----- >> From: Justen, Jordan L >> Sent: Friday, July 10, 2015 4:14 PM >> To: Wu, Jiaxin; edk2-devel@lists.sourceforge.net; af...@apple.com >> Subject: RE: [PATCH v3 3/7] EmulatorPkg: Remove Ip4ConfigDxe module >> from EmulatorPkg >> >> On 2015-07-10 00:29:18, Wu, Jiaxin wrote: >>> I agree your suggested format absolutely. Sorry for my missing any >>> attention. >>> >>> I'm not "Cc" any maintainer manually. We should know that the Cc part >>> maintainers in commit message will be ignored by edk2-devel if the >>> maintainers already in edk2-devel mailing list. >> >> You mean edk2-devel will strip it? Maybe there is a list setting to look at. >> >> Anyway, I think the Cc will still go directly to the Cc'd addresses. >> >>> So, if we want >>> to send out the patch to someone personally, we must need to specify >>> the maintainers with “--to xxx” in git bash. Fortunately for git, it >>> support the script format, which also can help us save a lot of time >>> when have multiple versions of the patch series. >> >> How does this work? >> >> Anyway, I'd still like to figure out if there are problems using the >> standard Cc method. >> >> -Jordan >> >>> -----Original Message----- >>> From: Justen, Jordan L >>> Sent: Friday, July 10, 2015 2:48 PM >>> To: Wu, Jiaxin; edk2-devel@lists.sourceforge.net; af...@apple.com >>> Subject: Re: [PATCH v3 3/7] EmulatorPkg: Remove Ip4ConfigDxe module >>> from EmulatorPkg >>> >>> When you send new versions of the patch series, can you not reply to >>> the previous version? Then discussions for each version of the series >>> can happen separately. (It also makes v3 get a little hidden in the >>> old v1/v2 emails.) >>> >>> On 2015-07-09 00:24:34, Jiaxin Wu wrote: >>>> Version3 continue to update with a proper commit message. >>> >>> I guess you don't agree with my suggested format? >>> >>> v3: >>> * Update with a proper commit message >>> >>>> Ip4ConfigDxe driver is deprecated in UEFI 2.5, so we will not support >>>> original Ip4Config Protocol, which is replace by Ip4Config2 Protocol >>>> integrated in Ip4Dxe driver(git commit 1f6729ff (SVN r17853)).Therefore we >>>> can remove Ip4ConfigDxe driver from this build. >>> >>> This commit message line is too long: >>> >>> https://github.com/tianocore/tianocore.github.io/wiki/Commit-Message- >>> F >>> ormat >>> >>>> Contributed-under: TianoCore Contribution Agreement 1.0 >>>> Signed-off-by: Jiaxin Wu <jiaxin...@intel.com> >>> >>> I guess you Cc'd Andrew and I manually? >>> >>> If you add "Cc: Jordan Justen <jordan.l.jus...@intel.com>" to the commit >>> message, then git send-email will automatically add the Cc's when sending >>> the email. It can save a lot of time when you have multiple versions of the >>> patch series. >>> >>> Anyway, I guess with the long commit message lines fixed, then >>> patches >>> 3 & 5 Reviewed-by: Jordan Justen <jordan.l.jus...@intel.com> >>> >>>> --- >>>> EmulatorPkg/EmulatorPkg.dsc | 1 - >>>> EmulatorPkg/EmulatorPkg.fdf | 3 +-- >>>> 2 files changed, 1 insertion(+), 3 deletions(-) >>>> >>>> diff --git a/EmulatorPkg/EmulatorPkg.dsc >>>> b/EmulatorPkg/EmulatorPkg.dsc index b16fcac..e0c6161 100644 >>>> --- a/EmulatorPkg/EmulatorPkg.dsc >>>> +++ b/EmulatorPkg/EmulatorPkg.dsc >>>> @@ -355,11 +355,10 @@ >>>> # Network stack drivers >>>> # >>>> MdeModulePkg/Universal/Network/DpcDxe/DpcDxe.inf >>>> MdeModulePkg/Universal/Network/ArpDxe/ArpDxe.inf >>>> MdeModulePkg/Universal/Network/Dhcp4Dxe/Dhcp4Dxe.inf >>>> - MdeModulePkg/Universal/Network/Ip4ConfigDxe/Ip4ConfigDxe.inf >>>> MdeModulePkg/Universal/Network/Ip4Dxe/Ip4Dxe.inf >>>> MdeModulePkg/Universal/Network/MnpDxe/MnpDxe.inf >>>> MdeModulePkg/Universal/Network/VlanConfigDxe/VlanConfigDxe.inf >>>> MdeModulePkg/Universal/Network/Mtftp4Dxe/Mtftp4Dxe.inf >>>> MdeModulePkg/Universal/Network/Tcp4Dxe/Tcp4Dxe.inf >>>> diff --git a/EmulatorPkg/EmulatorPkg.fdf >>>> b/EmulatorPkg/EmulatorPkg.fdf index 83b1de6..a002389 100644 >>>> --- a/EmulatorPkg/EmulatorPkg.fdf >>>> +++ b/EmulatorPkg/EmulatorPkg.fdf >>>> @@ -1,9 +1,9 @@ >>>> ## @file >>>> # This is Emulator FDF file with UEFI HII features enabled # -# >>>> Copyright (c) 2008 - 2013, Intel Corporation. All rights >>>> reserved.<BR> >>>> +# Copyright (c) 2008 - 2015, Intel Corporation. All rights >>>> +reserved.<BR> >>>> # Portions copyright (c) 2009 - 2011, Apple Inc. All rights >>>> reserved.<BR> # # This program and the accompanying materials # >>>> are licensed and made available under the terms and conditions of >>>> the BSD License # which accompanies this distribution. The full >>>> text of the license may be found at @@ -194,11 +194,10 @@ INF >>>> MdeModulePkg/Application/HelloWorld/HelloWorld.inf >>>> INF EmulatorPkg/EmuSnpDxe/EmuSnpDxe.inf >>>> !endif >>>> INF MdeModulePkg/Universal/Network/DpcDxe/DpcDxe.inf >>>> INF MdeModulePkg/Universal/Network/ArpDxe/ArpDxe.inf >>>> INF MdeModulePkg/Universal/Network/Dhcp4Dxe/Dhcp4Dxe.inf >>>> -INF MdeModulePkg/Universal/Network/Ip4ConfigDxe/Ip4ConfigDxe.inf >>>> INF MdeModulePkg/Universal/Network/Ip4Dxe/Ip4Dxe.inf >>>> INF MdeModulePkg/Universal/Network/MnpDxe/MnpDxe.inf >>>> INF MdeModulePkg/Universal/Network/VlanConfigDxe/VlanConfigDxe.inf >>>> INF MdeModulePkg/Universal/Network/Mtftp4Dxe/Mtftp4Dxe.inf >>>> INF MdeModulePkg/Universal/Network/Tcp4Dxe/Tcp4Dxe.inf >>>> -- >>>> 1.9.5.msysgit.1 >>>> >> ---------------------------------------------------------------------- >> -------- Don't Limit Your Business. Reach for the Cloud. >> GigeNET's Cloud Solutions provide you with the tools and support that >> you need to offload your IT needs and focus on growing your business. >> Configured For All Businesses. Start Your Cloud Today. >> https://www.gigenetcloud.com/ >> _______________________________________________ >> edk2-devel mailing list >> edk2-devel@lists.sourceforge.net >> https://lists.sourceforge.net/lists/listinfo/edk2-devel >> > ------------------------------------------------------------------------------ Don't Limit Your Business. Reach for the Cloud. GigeNET's Cloud Solutions provide you with the tools and support that you need to offload your IT needs and focus on growing your business. Configured For All Businesses. Start Your Cloud Today. https://www.gigenetcloud.com/ _______________________________________________ edk2-devel mailing list edk2-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/edk2-devel