From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from linux.microsoft.com (linux.microsoft.com [13.77.154.182]) by mx.groups.io with SMTP id smtpd.web12.809.1637090801757073154 for ; Tue, 16 Nov 2021 11:26:42 -0800 Authentication-Results: mx.groups.io; dkim=pass header.i=@linux.microsoft.com header.s=default header.b=UHPPYeO9; spf=pass (domain: linux.microsoft.com, ip: 13.77.154.182, mailfrom: mikuback@linux.microsoft.com) Received: from [10.0.0.19] (c-73-27-179-174.hsd1.fl.comcast.net [73.27.179.174]) by linux.microsoft.com (Postfix) with ESMTPSA id 87A8220C6376; Tue, 16 Nov 2021 11:26:40 -0800 (PST) DKIM-Filter: OpenDKIM Filter v2.11.0 linux.microsoft.com 87A8220C6376 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linux.microsoft.com; s=default; t=1637090800; bh=FpDqh5/G5HoA8dAjD1JUrJ4ry05Unpf6/CyPimFRBcA=; h=Date:Subject:To:References:From:In-Reply-To:From; b=UHPPYeO9RarFAXdndO+NPh9e8olGxC9oGK6EU9QWkktXnIkKBeyelTgW5OlUIvEU7 iUuJOO2fMNLwBbDKRnE4Vx5H+hoA9E6yeb5nf/XDVfkYohIKSYU/6XOWGqI4yVMVPc oeOwB1n+Hh030YJXZWU4Ig8mfe7gy3bsSnKvuvio= Message-ID: <42fc968b-0108-da06-42a4-d946f0592072@linux.microsoft.com> Date: Tue, 16 Nov 2021 14:26:39 -0500 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:91.0) Gecko/20100101 Thunderbird/91.3.0 Subject: Re: [edk2-devel] Uncrustify configuration file and file/function templates To: "Kinney, Michael D" , "devel@edk2.groups.io" References: From: "Michael Kubacki" In-Reply-To: Content-Language: en-US Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit I think that makes sense. I will look into it further and let you know if there's any downsides found. On 11/16/2021 2:18 PM, Kinney, Michael D wrote: > Could we add this feature to the Uncrustify CI Plugin? > > Mike > >> -----Original Message----- >> From: Michael Kubacki >> Sent: Tuesday, November 16, 2021 10:54 AM >> To: devel@edk2.groups.io; Kinney, Michael D >> Subject: Re: [edk2-devel] Uncrustify configuration file and file/function templates >> >> I would prefer to have a single version of the file if possible to >> reduce synchronization issues across the two copies. >> >> It seems that a CI plugin to read the contents of the template files and >> search incoming code for that text wouldn't be too difficult to add as a >> new plugin. >> >> Thanks, >> Michael >> >> On 11/16/2021 1:31 PM, Michael D Kinney wrote: >>> Hi Michael, >>> >>> Should we have 2 versions of the config file? >>> >>> One used by automation tools such as CI and git hooks that do not use the >>> templates. >>> >>> And another one that a developer can optionally use that will add the >>> templates for missing file/function headers that the developer then needs >>> to fill out. >>> >>> One concern I have about the templates is if they get used but a developer >>> does not fill in the missing information. It would be best if a CI check >>> rejects a file/function header that has not been filled in. >>> >>> Mike >>> >>>> -----Original Message----- >>>> From: devel@edk2.groups.io On Behalf Of Michael Kubacki >>>> Sent: Tuesday, November 16, 2021 10:25 AM >>>> To: devel@edk2.groups.io; Kinney, Michael D >>>> Subject: Re: [edk2-devel] Uncrustify configuration file and file/function templates >>>> >>>> Hi Mike, >>>> >>>> Those were just disabled because I typically run a separate invocation >>>> of Uncrustify with them enabled to isolate code which is missing >>>> file/function headers. My thought was the templates are helpful but we >>>> would need to individually identify where they are placed to file TCBZs >>>> for maintainers to replace the template with the actual information. >>>> >>>> In some of my previous poc branches (like >>>> https://github.com/makubacki/edk2/commits/uncrustify_poc_3_with_headers), I >>>> also pushed a branch with those results. >>>> >>>> So I do think we would want them enabled in the final config file. We >>>> can also review the contents of the templates in the future patch series >>>> to see if any changes are recommended. >>>> >>>> I prefer using a .uncrustify directory to help group related collateral >>>> but I don't have a strong opinion there. >>>> >>>> Thanks, >>>> Michael >>>> >>>> On 11/16/2021 12:16 PM, Michael D Kinney wrote: >>>>> Hi Michael, >>>>> >>>>> In your POC branch (https://github.com/makubacki/edk2/tree/uncrustify_poc_5), I see the >>>>> uncrustify.cfg configuration file in the root. >>>>> >>>>> https://github.com/makubacki/edk2/blob/uncrustify_poc_5/uncrustify.cfg >>>>> >>>>> However, in your Wiki, you provide examples where this configuration file is in an >>>>> .uncrustify directory >>>>> >>>>> https://dev.azure.com/projectmu/Uncrustify/_wiki/wikis/Uncrustify.wiki/1/Project-Mu-(EDK-II)-Fork-Readme >>>>> >>>>> The uncrustify.cfg files also contains commented out settings for the file header >>>>> and function header templates. >>>>> >>>>> # cmt_insert_file_header = default_file_header.txt >>>>> # cmt_insert_func_header = default_function_header.txt >>>>> >>>>> Are these disabled on purpose? >>>>> >>>>> Do we want to enable them? If so, should the uncrustify configuration file >>>>> and the templates go into a .uncrustify directory? >>>>> >>>>> Thanks, >>>>> >>>>> Mike >>>>> >>>>> >>>>> >>>>> >>>>> >>>>> >>>>> >>>> >>>> >>>> >>>> >>> >>> >>> >>> >>> >>>