DPDK patches and discussions
 help / color / mirror / Atom feed
From: Jerin Jacob <jerinjacobk@gmail.com>
To: Andrew Rybchenko <arybchenko@solarflare.com>
Cc: Bruce Richardson <bruce.richardson@intel.com>,
	 "Ananyev, Konstantin" <konstantin.ananyev@intel.com>,
	 Stephen Hemminger <stephen@networkplumber.org>,
	"dev@dpdk.org" <dev@dpdk.org>
Subject: Re: [dpdk-dev] [PATCH RFC] devtools: increase default line length to 100
Date: Wed, 10 Jun 2020 14:17:48 +0530	[thread overview]
Message-ID: <CALBAE1OQvbUru65cGf1ZaomhVVPSL5H1xiaCOSu6T6_4M72P+w@mail.gmail.com> (raw)
In-Reply-To: <4e577242-6e2e-03ba-b299-297c5cdf05d5@solarflare.com>

On Wed, Jun 10, 2020 at 1:57 PM Andrew Rybchenko
<arybchenko@solarflare.com> wrote:
>
> On 6/10/20 8:22 AM, Jerin Jacob wrote:
> > On Tue, Jun 9, 2020 at 7:27 PM Bruce Richardson
> > <bruce.richardson@intel.com> wrote:
> >>
> >> On Tue, Jun 09, 2020 at 04:40:28PM +0300, Andrew Rybchenko wrote:
> >>> On 6/9/20 1:00 PM, Ananyev, Konstantin wrote:
> >>>>
> >>>>>
> >>>>> On Mon, Jun 08, 2020 at 12:17:23PM -0700, Stephen Hemminger wrote:
> >>>>>> On Mon,  8 Jun 2020 17:46:40 +0100 Bruce Richardson
> >>>>>> <bruce.richardson@intel.com> wrote:
> >>>>>>
> >>>>>>> Rather than continuing to recommend an 80-char line limit, let's
> >>>>>>> take a hint from the Linux kernel[1] and aim for an 100-char
> >>>>>>> recommended limit instead.
> >>>>>>>
> >>>>>>> [1]
> >>>>>>> https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=bdc48fa11e46f867ea4d75fa59ee87a7f48be144
> >>>>>>>
> >>>>>>> Signed-off-by: Bruce Richardson <bruce.richardson@intel.com> ---
> >>>>>>> devtools/checkpatches.sh                 | 2 +-
> >>>>>>> doc/guides/contributing/coding_style.rst | 2 +- 2 files changed, 2
> >>>>>>> insertions(+), 2 deletions(-)
> >>>>>>>
> >>>>>>> diff --git a/devtools/checkpatches.sh b/devtools/checkpatches.sh
> >>>>>>> index 158087f1c..4970ed830 100755 --- a/devtools/checkpatches.sh +++
> >>>>>>> b/devtools/checkpatches.sh @@ -15,7 +15,7 @@
> >>>>>>> VALIDATE_NEW_API=$(dirname $(readlink -f $0))/check-symbol-change.sh
> >>>>>>> # Codespell can also be enabled by setting DPDK_CHECKPATCH_CODESPELL
> >>>>>>> to a valid path # to a dictionary.txt file if dictionary.txt is not
> >>>>>>> in the default location.
> >>>>>>> codespell=${DPDK_CHECKPATCH_CODESPELL:-enable}
> >>>>>>> -length=${DPDK_CHECKPATCH_LINE_LENGTH:-80}
> >>>>>>> +length=${DPDK_CHECKPATCH_LINE_LENGTH:-100}
> >>>>>>>
> >>>>>>>  # override default Linux options options="--no-tree" diff --git
> >>>>>>>  a/doc/guides/contributing/coding_style.rst
> >>>>>>>  b/doc/guides/contributing/coding_style.rst index
> >>>>>>>  4efde93f6..1db3a7bbe 100644 ---
> >>>>>>>  a/doc/guides/contributing/coding_style.rst +++
> >>>>>>>  b/doc/guides/contributing/coding_style.rst @@ -21,7 +21,7 @@ The
> >>>>>>>  rules and guidelines given in this document cannot cover every
> >>>>>>>  situation, so * In the case of creating new files, the style should
> >>>>>>>  be consistent within each file in a given directory or module.  *
> >>>>>>>  The primary reason for coding standards is to increase code
> >>>>>>>  readability and comprehensibility, therefore always use whatever
> >>>>>>>  option
> >>>>> will make the code easiest to read.
> >>>>>>>
> >>>>>>> -Line length is recommended to be not more than 80 characters,
> >>>>>>> including comments.  +Line length is recommended to be not more than
> >>>>>>> 100 characters, including comments.  [Tab stop size should be
> >>>>>>> assumed to be 8-characters wide].
> >>>>>>>
> >>>>>>>  .. note::
> >>>>>>
> >>>>>> I would even support going to 120 characters.
> >>>>>>
> >>>>>> Acked-by: Stephen Hemminger <stephen@networkplumber.org>
> >>>>>
> >>>>> I think 100 is enough.
> >>>>>
> >>>>> In my case, I have a 1080p 24" monitor, and with two terminals
> >>>>> side-by-side 100 characters just fits inside each vim window. Going to
> >>>>> 120 would be fine for single terminal at a time, but I would find
> >>>>> awkward for e.g.  side-by-side diff comparison in meld etc.
> >>>>
> >>>> My preference would be to keep things as it is - 80 chars per line.
> >>>> Having multiple different formatting styles in one source file looks
> >>>> really awkward and make it hard to follow.
> >>>
> >>> +1
> >>>
> >> I wouldn't personally consider increasing the max line length as a style
> >> change, but even if you consider it such I'd worry about rejecting style
> >> changes on the basis that it may be different to what is there before. That
> >> logic means that we can never, ever change any element of DPDK coding style.
> >>
> >> I can see the issue with changes that require us to rework the style of
> >> code in order to comply with the new style, but changing the max length
> >> from 80 to 100 does not make 80-char lines incorrect and needing changes.
> >
> > Another point is: Other projects derived from the Linux kernel coding
> > standard also
> > getting migrated to the new coding standard. This change would be useful for:
> > a) People works on multiple Linux coding standard derived projects
>
> Valid point, but not really strong.
> I think that .editorconfig solves it.

Yes, For adding the code. I meaning, Viewing the code there will be a disparity.

>
> > b) Some of the code such as 'base' and 'common' code for HW drivers
> > are shared between multiple projects.
> > Such code needs adjustment/change when pulling to the DPDK code base
> > it it still follows 80 chars per line.
>
> Base and common code are not required to follow DPDK coding
> style even now.

I see, I dont think it is expressed in devtools/checkpatches.sh. I.e
CI tools still flag as checkpatch issues.

Coming to original concern:(code disparity with existing code)
Another option is, It is possible to change existing code to 100 lines
with clang-format in an automatic fashion. But it will have a lot of
changes.
        "C_Cpp.clang_format_style": "{ BasedOnStyle: LLVM,
IndentWidth: 8, TabWidth: 8, UseTab: Always,
AllowShortIfStatementsOnASingleLine: false, IndentCaseLabels: false,
ColumnLimit: 100, AllowShortFunctionsOnASingleLine: false,
AlwaysBreakAfterReturnType: AllDefinitions, ColumnLimit: 100,
ConstructorInitializerAllOnOneLineOrOnePerLine: true,
ConstructorInitializerIndentWidth: 8, ContinuationIndentWidth: 8,
BreakBeforeBraces: Linux, AllowShortBlocksOnASingleLine: false,
AlignConsecutiveAssignments: false, AlignEscapedNewlines: Right,
AlignConsecutiveMacros : true, MaxEmptyLinesToKeep : 1,
Cpp11BracedListStyle : true, AlignTrailingComments : true,
ForEachMacros: ['TAILQ_FOREACH_SAFE', STAILQ_FOREACH',
'rte_graph_foreach_node', 'TAILQ_FOREACH', 'RTE_ETH_FOREACH_DEV']}",

  reply	other threads:[~2020-06-10  8:48 UTC|newest]

Thread overview: 13+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2020-06-08 16:46 Bruce Richardson
2020-06-08 19:17 ` Stephen Hemminger
2020-06-09  4:42   ` Jerin Jacob
2020-06-09  9:29   ` Bruce Richardson
2020-06-09 10:00     ` Ananyev, Konstantin
2020-06-09 13:40       ` Andrew Rybchenko
2020-06-09 13:57         ` Bruce Richardson
2020-06-10  5:22           ` Jerin Jacob
2020-06-10  8:27             ` Andrew Rybchenko
2020-06-10  8:47               ` Jerin Jacob [this message]
2020-06-10  9:28                 ` Andrew Rybchenko
2020-06-10  9:59                   ` Bruce Richardson
2020-08-07  0:29 ` Thomas Monjalon

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-all 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=CALBAE1OQvbUru65cGf1ZaomhVVPSL5H1xiaCOSu6T6_4M72P+w@mail.gmail.com \
    --to=jerinjacobk@gmail.com \
    --cc=arybchenko@solarflare.com \
    --cc=bruce.richardson@intel.com \
    --cc=dev@dpdk.org \
    --cc=konstantin.ananyev@intel.com \
    --cc=stephen@networkplumber.org \
    /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;
as well as URLs for NNTP newsgroup(s).