From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from dpdk.org (dpdk.org [92.243.14.124]) by inbox.dpdk.org (Postfix) with ESMTP id 02553A04A4; Tue, 26 May 2020 11:43:20 +0200 (CEST) Received: from [92.243.14.124] (localhost [127.0.0.1]) by dpdk.org (Postfix) with ESMTP id 0E0B21DA2E; Tue, 26 May 2020 11:43:20 +0200 (CEST) Received: from mga05.intel.com (mga05.intel.com [192.55.52.43]) by dpdk.org (Postfix) with ESMTP id A9A581DA1F; Tue, 26 May 2020 11:43:18 +0200 (CEST) IronPort-SDR: Tl8u3doB9wCyyFXHQGq/xQQZDKAbXGRlxVx+pN6sila9an3tnCu02SHgJZ7YSKujQhGp+poRHe rYOuAfgCIY3Q== X-Amp-Result: SKIPPED(no attachment in message) X-Amp-File-Uploaded: False Received: from fmsmga001.fm.intel.com ([10.253.24.23]) by fmsmga105.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 26 May 2020 02:43:17 -0700 IronPort-SDR: v9da/Dgmd/JPd3Y4NylEn6VPvNVUsrG7QhlITXz3jec2wsGUBbabyz8ZFu/XgDWQNg7M2xCZLA bSaFnXm7u2YA== X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.73,436,1583222400"; d="scan'208";a="375648522" Received: from aburakov-mobl.ger.corp.intel.com (HELO [10.209.43.93]) ([10.209.43.93]) by fmsmga001.fm.intel.com with ESMTP; 26 May 2020 02:43:15 -0700 To: =?UTF-8?Q?Morten_Br=c3=b8rup?= , Thomas Monjalon , Jerin Jacob Cc: Maxime Coquelin , dpdk-dev , techboard@dpdk.org, "Jim St. Leger" References: <98CBD80474FA8B44BF855DF32C47DC35C60FEA@smartserver.smartshare.dk> <6512da71-09a0-3357-27b1-58939597bcf1@redhat.com> <1d1c7a90-934b-3db4-b7d6-308a0ebb7ee4@intel.com> <11959277.FkLDZFFinP@thomas> <98CBD80474FA8B44BF855DF32C47DC35C60FF5@smartserver.smartshare.dk> From: "Burakov, Anatoly" Message-ID: Date: Tue, 26 May 2020 10:43:15 +0100 User-Agent: Mozilla/5.0 (Windows NT 10.0; WOW64; rv:68.0) Gecko/20100101 Thunderbird/68.8.0 MIME-Version: 1.0 In-Reply-To: <98CBD80474FA8B44BF855DF32C47DC35C60FF5@smartserver.smartshare.dk> Content-Type: text/plain; charset=utf-8; format=flowed Content-Language: en-US Content-Transfer-Encoding: 8bit Subject: Re: [dpdk-dev] [dpdk-techboard] Consider improving the DPDKcontribution processes X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: DPDK patches and discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dev-bounces@dpdk.org Sender: "dev" On 25-May-20 7:44 PM, Morten Brørup wrote: >> From: dev [mailto:dev-bounces@dpdk.org] On Behalf Of Thomas Monjalon >> Sent: Monday, May 25, 2020 6:29 PM >> >> 25/05/2020 18:09, Burakov, Anatoly: >>> On 25-May-20 5:04 PM, Maxime Coquelin wrote: >>>> On 5/25/20 5:59 PM, Burakov, Anatoly wrote: >>>>> On 25-May-20 4:52 PM, Maxime Coquelin wrote: >>>>>> On 5/25/20 5:35 PM, Jerin Jacob wrote: >>>>>>> On May 25, 2020 Thomas Monjalon wrote: >>>>>>>> My concern about clarity is the history of the discussion. >>>>>>>> When we post a new versions in GitHub, it's very hard to keep >> track >>>>>>>> of the history. >>>>>>>> As a maintainer, I need to see the history to understand what >> happened, >>>>>>>> what we are waiting for, and what should be merged. >>>>>>> >>>>>>> IMO, The complete history is available per pull request URL. >>>>>>> I think, Github also email notification mechanism those to >> prefer to see >>>>>>> comments in the email too. >>>>>>> >>>>>>> In addition to that, Bugzilla, patchwork, CI stuff all >> integrated into >>>>>>> one place. >>>>>>> I am quite impressed with vscode community collaboration. >>>>>>> https://github.com/Microsoft/vscode/pulls >>>>>> >>>>>> Out of curiosity, just checked the git history and I'm not that >>>>>> impressed. For example last commit on the master branch: >>>>>> >>>>>> >> https://github.com/microsoft/vscode/commit/2a4cecf3f2f72346d06990feeb74 >> 46b3915d6148 >>>>>> >>>>>> >>>>>> Commit title: " Fix #98530 " >>>>>> Commit message empty, no explanation on what the patch is doing. >>>>>> >>>>>> Then, let's check the the issue it is pointed to: >>>>>> https://github.com/microsoft/vscode/issues/98530 >>>>>> >>>>>> Issue is created 15 minutes before the patch is being merged. All >> that >>>>>> done by the same contributor, without any review. >>>>>> >>>>> >>>>> Just because they do it wrong doesn't mean we can't do it right :) >> This >>>>> says more about Microsoft's lack of process around VSCode than it >> does >>>>> about Github the tool. >>>>> >>>> >>>> True. I was just pointing out that is not the kind of process I >> would >>>> personally want to adopt. >>>> >>> >>> You won't find disagreement here, but this "process" is not due to >> the >>> tool. You can just as well allow Thomas to merge stuff without any >>> review because he has commit rights, no Github needed - and you would >> be >>> faced with the same problem. >>> >>> So, i don't think Jerin was suggesting that we degrade our >> merge/commit >>> rules. Rather, the point was that (whatever you think of VSCode's >>> review/merge process) there are a lot of pull requests and there is >>> healthy community collaboration. I'm not saying we don't have that, >> >> Yes, recent survey said the process was fine: >> http://mails.dpdk.org/archives/announce/2019-June/000268.html >> >> >>> obviously, but i have a suspicion that we'll get more of it if we >> lower >>> the barrier for entry (not the barrier for merge!). I think there is >> a >>> way to lower the secondary skill level needed to contribute to DPDK >>> without lowering coding/merge standards with it. > > That is exactly what I am asking for: Lowering the barrier and increasing the feeling of success for newcomers. (The barrier for merge is probably fine; I'll leave that discussion to the maintainers.) > >> >> About the barrier for entry, maybe it is not obvious because I don't >> communicate a lot about it, but please be aware that I (and other >> maintainers I think) are doing a lot of changes in newcomer patches >> to avoid asking them knowing the whole process from the beginning. >> Then frequent contributors get educated on the way. > > Great! I wish that every developer would think and behave this way. Part of the problem is, there are two different maintainers here: maintainers like myself, who maintain a certain area of the code, and maintainers like Thomas, who has *commit rights* and maintains the entire tree. And therein lies the problem: Thomas (David, etc.) doesn't look at every area of the code, he relies on us to do it. However, *he* is doing the committing, and fixing up patches, etc. - so, i can't really say things like, "hey, your indentation's wrong here, but Thomas will fix it on apply" because that's me pushing more work onto Thomas, something i don't think i have the moral right to do :) So, while Thomas is free to "fix on apply" at his own desire, i don't think we have to make this a habit. > >> >> I think the only real barrier we have is to sign the patch >> with a real name and send an email to right list. >> The ask for SoB real name is probably what started this thread >> in Morten's mind. And the SoB requirement will *never* change. > > The incorrect Signed-off-by might be the only hard barrier (which we cannot avoid). But that did not trigger me. > > I was raising the discussion to bring attention to soft barriers for contributors. What triggered me was the request to split the patch into multiple patches; a kind of feedback I have seen before. For an experienced git user, this is probably very easy, but for a git newbie (like myself), it basically means starting all over and trying to figure out the right set of git commands to do this, which can be perceived as a difficult task requiring a lot of effort. > > Perhaps we could supplement the Contributor Guidelines with a set of cookbooks for different steps in the contribution process, so reviewers can be refer newcomers to the relevant of these as part of the feedback. Just like any professional customer support team has a set of canned answers ready for common customer issues. (Please note: I am not suggesting adding an AI/ML chat bot reviewer to the mailing list!) That's a great idea, although it's arguably slightly out of scope for DPDK. Then again, we do have a "fixline" instructions, so why not have a "git reset HEAD^ && git add -p" in there while we're at it :) > > The amount of Contributor Guideline documentation is also a balance... it must be long enough to contain the relevant information to get going, but short enough for newcomers to bother reading it. > -- Thanks, Anatoly