> No validation in the world prevent me from typing manually "mess" instead of 
> "msg"/«message"

Code review will do.

> btw "svc" is more common imo

Agree. I think you can start a discussion and change some abbrevs if you wish.


> 17 июня 2021 г., в 10:23, Ivan Daschinsky <ivanda...@gmail.com> написал(а):
> 
> I'm sorry, but the rule is not strict and, moreover, not clear enough for
> constans. See here [1]
> ```
> Type and method names are usually not abbreviated (except for the
> well-accepted abbreviations such as EOF, Impl, Fifo, etc.).
> 
> Abbreviation applies to local variables, method parameters, class fields
> and in **some cases public static fileds** (constants) of the class.
> ```
> But there is not any list that contains these cases. I suppose, that
> constant naming should not be abbreviated.
> As I see, the most cases of violations, described in initial post, are
> about constant's namings.
> 
> I suppose that we should define strict and clear rules about constants
> naming.
> 
> [1] -- https://cwiki.apache.org/confluence/display/IGNITE/Abbreviation+Rules
> 
> 
> чт, 17 июн. 2021 г. в 10:10, Konstantin Orlov <kor...@gridgain.com>:
> 
>> Enforced validation doesn't guarantee code consistency. No validation in
>> the world prevent me from typing manually "mess" instead of "msg"/"message"
>> or "svc" instead of "srvc"/"service" (btw "svc" is more common imo).
>> 
>> And the fact that someone name a variable "count" instead of "cnt" doesn't
>> make the whole project immature.
>> 
>> --
>> Regards,
>> Konstantin Orlov
>> 
>> 
>> 
>> 
>>> On 17 Jun 2021, at 08:34, Ivan Pavlukhin <vololo...@gmail.com> wrote:
>>> 
>>> Hi Nikolay,
>>> 
>>> Thanks, it is rather interesting.
>>> 
>>> Do we all agree that using different conventions for different code
>>> packages does not break "consistency"? Or did I get something wrong?
>>> 
>>> 2021-06-17 7:12 GMT+03:00, Николай Ижиков <nizhi...@apache.org>:
>>>> Hello, Ivan.
>>>> 
>>>> We can create checkstyle rule to enforce usage of abbreviations.
>>>> Internal/public code differs by package.
>>>> 
>>>> PoC of rule [1]
>>>> 
>>>> [1] https://github.com/apache/ignite/pull/9153
>>>> 
>>>>> 17 июня 2021 г., в 07:01, Ivan Pavlukhin <vololo...@gmail.com>
>>>>> написал(а):
>>>>> 
>>>>> Nikita,
>>>>> 
>>>>> Do you have a plan in your mind how to make Ignite codebase consistent?
>>>>> 
>>>>> AFAIR, we had it intentionally inconsistent for a long time at least
>>>>> for one sake: for internal code we used special conventions (e.g.
>>>>> abbreviations, shorten getters) and common Java conventions for public
>>>>> API and examples (e.g. no abbreviations and usual getters).
>>>>> 
>>>>> 2021-06-16 23:37 GMT+03:00, Nikita Ivanov <niva...@gridgain.com>:
>>>>>> Consistency is what makes it easier to contribute to the project and
>>>>>> attract new members. Consistency implies strong, well defined and
>>>>>> universally enforced rules. Just because we have some individuals who
>>>>>> are lazy or inexperienced - it does not mean that the entire project
>>>>>> should relax the basic-level engineering discipline.
>>>>>> 
>>>>>> On a personal node - nothing screams "immaturity" louder that a code
>>>>>> that uses inconsistent naming, commenting, code style & organization,
>>>>>> etc.
>>>>>> --
>>>>>> Nikita Ivanov
>>>>>> 
>>>>>>> On Wed, Jun 16, 2021 at 5:56 AM Andrey Gura <ag...@apache.org>
>> wrote:
>>>>>>> 
>>>>>>> Hi,
>>>>>>> 
>>>>>>> I understand that this rule seems too strict or may be weird. But
>>>>>>> removing the rule could lead to review comments like "use future
>>>>>>> instead of fut". So my proposal is to change rule from "required" to
>>>>>>> "recommended".
>>>>>>> 
>>>>>>> On Wed, Jun 16, 2021 at 2:49 PM Valentin Kulichenko
>>>>>>> <valentin.kuliche...@gmail.com> wrote:
>>>>>>>> 
>>>>>>>> Konstantin, thanks for chiming in.
>>>>>>>> 
>>>>>>>> That's exactly my concern. Overformalization is generally not a good
>>>>>>>> thing.
>>>>>>>> Someone used "mess" to abbreviate "message"? That is surely not a
>> good
>>>>>>>> coding style, but that's what code reviews are for. I believe that
>> our
>>>>>>>> committers are more than capable of identifying such issues.
>>>>>>>> 
>>>>>>>> At the same time, with the current rules, we are *forced* to use
>>>>>>>> abbreviations like "locAddrGrpMgr", whether we like it or not. All
>> it
>>>>>>>> does
>>>>>>>> is makes it harder to contribute to Ignite, without providing any
>>>>>>>> clear
>>>>>>>> value.
>>>>>>>> 
>>>>>>>> -Val
>>>>>>>> 
>>>>>>>> On Thu, Jun 10, 2021 at 9:46 AM Konstantin Orlov <
>> kor...@gridgain.com>
>>>>>>>> wrote:
>>>>>>>> 
>>>>>>>>> +1 for making this optional
>>>>>>>>> 
>>>>>>>>> Common abbreviation rules is good for sure, but sometimes I getting
>>>>>>>>> sick
>>>>>>>>> of all those locAddrGrpMgr.
>>>>>>>>> 
>>>>>>>>> 
>>>>>>>>> --
>>>>>>>>> Regards,
>>>>>>>>> Konstantin Orlov
>>>>>>>>> 
>>>>>>>>> 
>>>>>>>>> 
>>>>>>>>> 
>>>>>>>>>> On 7 Jun 2021, at 14:31, Nikolay Izhikov <nizhi...@apache.org>
>>>>>>>>>> wrote:
>>>>>>>>>> 
>>>>>>>>>> Hello, Anton, Alexei.
>>>>>>>>>> 
>>>>>>>>>> Thanks for the feedback.
>>>>>>>>>> 
>>>>>>>>>> Personally, I’m pretty happy current abbreviation rules too.
>>>>>>>>>> Let see what we can do to make our codebase even more consistent.
>>>>>>>>>> 
>>>>>>>>>>> 7 июня 2021 г., в 13:23, Alexei Scherbakov <
>>>>>>>>> alexey.scherbak...@gmail.com> написал(а):
>>>>>>>>>>> 
>>>>>>>>>>> -1
>>>>>>>>>>> Common abbrevs add quality to the code.
>>>>>>>>>>> 
>>>>>>>>>>> пн, 7 июн. 2021 г. в 12:38, Anton Vinogradov <a...@apache.org>:
>>>>>>>>>>> 
>>>>>>>>>>>> -1 here.
>>>>>>>>>>>> We can fix the code and set up the rule.
>>>>>>>>>>>> 
>>>>>>>>>>>> This will help to prevent having a weird abbreviation like
>> "mess"
>>>>>>>>>>>> (from
>>>>>>>>>>>> "message") or "ign" (from "Ignite").
>>>>>>>>>>>> Also, the abbreviations list (hardcoded at IDEA plugin) allows
>> to
>>>>>>>>>>>> have
>>>>>>>>> same
>>>>>>>>>>>> names across the whole code, this should simplify the reading.
>>>>>>>>>>>> 
>>>>>>>>>>>> On Sat, Jun 5, 2021 at 10:49 PM Valentin Kulichenko <
>>>>>>>>>>>> valentin.kuliche...@gmail.com> wrote:
>>>>>>>>>>>> 
>>>>>>>>>>>>> I also support removing this requirement. It’s not the first
>>>>>>>>>>>>> time
>>>>>>>>> someone
>>>>>>>>>>>>> brings this up, and so far we haven’t been able to fix it. Not
>>>>>>>>>>>>> worth
>>>>>>>>> it
>>>>>>>>>>>> in
>>>>>>>>>>>>> my view.
>>>>>>>>>>>>> 
>>>>>>>>>>>>> -Val
>>>>>>>>>>>>> 
>>>>>>>>>>>>> On Sat, Jun 5, 2021 at 11:54 AM Nikolay Izhikov
>>>>>>>>>>>>> <nizhi...@apache.org>
>>>>>>>>>>>>> wrote:
>>>>>>>>>>>>> 
>>>>>>>>>>>>>> Hello, guys.
>>>>>>>>>>>>>> 
>>>>>>>>>>>>>> Thanks for the feedback.
>>>>>>>>>>>>>> 
>>>>>>>>>>>>>> Dmitry,
>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>> Manual rule enforcement saves a couple of symbols in code
>>>>>>>>>>>>>> 
>>>>>>>>>>>>>> I’m talking about automatic check.
>>>>>>>>>>>>>> We can implement it easily.
>>>>>>>>>>>>>> So, if we decide to keep this rule all we need is to fix
>>>>>>>>>>>>>> current
>>>>>>>>>>>>>> violations (several thousand!).
>>>>>>>>>>>>>> After it, checkstyle will automatically enforce this rule.
>>>>>>>>>>>>>> As you may know, currently, any PR checked according to our
>>>>>>>>> checkstyle
>>>>>>>>>>>>>> rules.
>>>>>>>>>>>>>> Please, take a look at little green check sign after PR name.
>>>>>>>>>>>>>> 
>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>> 5 июня 2021 г., в 00:57, Dmitry Pavlov <dpav...@apache.org>
>>>>>>>>>>>>> написал(а):
>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>> +1 for removal. Cnt and count both seem to be fine.
>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>> Manual rule enforcement saves a couple of symbols in code,
>> but
>>>>>>>>>>>> requires
>>>>>>>>>>>>>> some time from both contributor and reviewer.
>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>> Sincerely,
>>>>>>>>>>>>>>> Dmitriy Pavlov
>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>> On 2021/06/04 19:18:37, Pavel Tupitsyn <ptupit...@apache.org
>>> 
>>>>>>>>> wrote:
>>>>>>>>>>>>>>>> In my opinion, we should remove this rule.
>>>>>>>>>>>>>>>> Looks like a waste of time. freq or frequency, cnt or count,
>>>>>>>>>>>>>>>> it is
>>>>>>>>>>>>> fine
>>>>>>>>>>>>>>>> either way.
>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>> On Fri, Jun 4, 2021 at 7:39 PM Nikolay Izhikov <
>>>>>>>>> nizhi...@apache.org
>>>>>>>>>>>>> 
>>>>>>>>>>>>>> wrote:
>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>>> Hello, Igniters.
>>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>>> Right now, we have the rule to use some predefined list of
>>>>>>>>>>>>> abbrevation
>>>>>>>>>>>>>> for
>>>>>>>>>>>>>>>>> variable names [1].
>>>>>>>>>>>>>>>>> Some of the reviewers ask to follow this rule strictly.
>>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>>>> It is required to use abbreviated form for code
>>>>>>>>>>>>>>>>>> consistency.
>>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>>> I tried to implement this rule in form of checkstyle check
>>>>>>>>>>>>>>>>> [2] and
>>>>>>>>>>>> it
>>>>>>>>>>>>>>>>> seems like many of use doesn’t follow this requirement.
>>>>>>>>>>>>>>>>> My check found 4124 violation in core module.
>>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>>> Should we make this rule optional in documentation or
>> should
>>>>>>>>>>>>>>>>> we
>>>>>>>>>>>>> remove
>>>>>>>>>>>>>> it
>>>>>>>>>>>>>>>>> completely?
>>>>>>>>>>>>>>>>> Or should someone proceed and fix all the violations?
>>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>>> WDYT?
>>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>>> Example of output:
>>>>>>>>>>>>>>>>> ```
>>>>>>>>>>>>>>>>> [ERROR]
>>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>> 
>>>>>>>>>>>>> 
>>>>>>>>>>>> 
>>>>>>>>> 
>> /Users/sbt-izhikov-nv/work/ignite/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/persistence/db/IgnitePdsWithTtlTest.java:94:
>>>>>>>>>>>>>>>>> Abbrevation should be used for CACHE_NAME_LOCAL_ATOMIC!
>>>>>>>>>>>>>>>>> Please,
>>>>>>>>> use
>>>>>>>>>>>>>> loc,
>>>>>>>>>>>>>>>>> instead of LOCAL [IgniteAbbrevationsRule]
>>>>>>>>>>>>>>>>> [ERROR]
>>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>> 
>>>>>>>>>>>>> 
>>>>>>>>>>>> 
>>>>>>>>> 
>> /Users/sbt-izhikov-nv/work/ignite/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/persistence/db/IgnitePdsWithTtlTest.java:97:
>>>>>>>>>>>>>>>>> Abbrevation should be used for CACHE_NAME_LOCAL_TX! Please,
>>>>>>>>>>>>>>>>> use
>>>>>>>>>>>> loc,
>>>>>>>>>>>>>>>>> instead of LOCAL [IgniteAbbrevationsRule]
>>>>>>>>>>>>>>>>> [ERROR]
>>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>> 
>>>>>>>>>>>>> 
>>>>>>>>>>>> 
>>>>>>>>> 
>> /Users/sbt-izhikov-nv/work/ignite/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/persistence/db/IgnitePdsWithTtlTest.java:264:
>>>>>>>>>>>>>>>>> Abbrevation should be used for checkpointManager! Please,
>> use
>>>>>>>>>>>>>>>>> mgr,
>>>>>>>>>>>>>> instead
>>>>>>>>>>>>>>>>> of Manager [IgniteAbbrevationsRule]
>>>>>>>>>>>>>>>>> [ERROR]
>>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>> 
>>>>>>>>>>>>> 
>>>>>>>>>>>> 
>>>>>>>>> 
>> /Users/sbt-izhikov-nv/work/ignite/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/persistence/db/IgnitePdsPartitionPreloadTest.java:63:
>>>>>>>>>>>>>>>>> Abbrevation should be used for DEFAULT_REGION! Please, use
>>>>>>>>>>>>>>>>> dflt,
>>>>>>>>>>>>>> instead of
>>>>>>>>>>>>>>>>> DEFAULT [IgniteAbbrevationsRule]
>>>>>>>>>>>>>>>>> [ERROR]
>>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>> 
>>>>>>>>>>>>> 
>>>>>>>>>>>> 
>>>>>>>>> 
>> /Users/sbt-izhikov-nv/work/ignite/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/persistence/db/IgnitePdsWholeClusterRestartTest.java:47:
>>>>>>>>>>>>>>>>> Abbrevation should be used for ENTRIES_COUNT! Please, use
>>>>>>>>>>>>>>>>> cnt,
>>>>>>>>>>>>> instead
>>>>>>>>>>>>>> of
>>>>>>>>>>>>>>>>> COUNT [IgniteAbbrevationsRule]
>>>>>>>>>>>>>>>>> [ERROR]
>>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>> 
>>>>>>>>>>>>> 
>>>>>>>>>>>> 
>>>>>>>>> 
>> /Users/sbt-izhikov-nv/work/ignite/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/persistence/db/IgnitePdsRebalancingOnNotStableTopologyTest.java:49:
>>>>>>>>>>>>>>>>> Abbrevation should be used for CHECKPOINT_FREQUENCY!
>> Please,
>>>>>>>>>>>>>>>>> use
>>>>>>>>>>>>> freq,
>>>>>>>>>>>>>>>>> instead of FREQUENCY [IgniteAbbrevationsRule]
>>>>>>>>>>>>>>>>> [ERROR]
>>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>> 
>>>>>>>>>>>>> 
>>>>>>>>>>>> 
>>>>>>>>> 
>> /Users/sbt-izhikov-nv/work/ignite/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/persistence/db/IgnitePdsTransactionsHangTest.java:75:
>>>>>>>>>>>>>>>>> Abbrevation should be used for MAX_KEY_COUNT! Please, use
>>>>>>>>>>>>>>>>> cnt,
>>>>>>>>>>>>> instead
>>>>>>>>>>>>>> of
>>>>>>>>>>>>>>>>> COUNT [IgniteAbbrevationsRule]
>>>>>>>>>>>>>>>>> [ERROR]
>>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>> 
>>>>>>>>>>>>> 
>>>>>>>>>>>> 
>>>>>>>>> 
>> /Users/sbt-izhikov-nv/work/ignite/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/persistence/db/IgnitePdsTransactionsHangTest.java:78:
>>>>>>>>>>>>>>>>> Abbrevation should be used for CHECKPOINT_FREQUENCY!
>> Please,
>>>>>>>>>>>>>>>>> use
>>>>>>>>>>>>> freq,
>>>>>>>>>>>>>>>>> instead of FREQUENCY [IgniteAbbrevationsRule]
>>>>>>>>>>>>>>>>> [ERROR]
>>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>> 
>>>>>>>>>>>>> 
>>>>>>>>>>>> 
>>>>>>>>> 
>> /Users/sbt-izhikov-nv/work/ignite/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/persistence/db/SlowHistoricalRebalanceSmallHistoryTest.java:57:
>>>>>>>>>>>>>>>>> Abbrevation should be used for SUPPLY_MESSAGE_LATCH!
>> Please,
>>>>>>>>>>>>>>>>> use
>>>>>>>>>>>> msg,
>>>>>>>>>>>>>>>>> instead of MESSAGE [IgniteAbbrevationsRule]
>>>>>>>>>>>>>>>>> [ERROR]
>>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>> 
>>>>>>>>>>>>> 
>>>>>>>>>>>> 
>>>>>>>>> 
>> /Users/sbt-izhikov-nv/work/ignite/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/persistence/db/IgniteLogicalRecoveryTest.java:74:
>>>>>>>>>>>>>>>>> Abbrevation should be used for SHARED_GROUP_NAME! Please,
>> use
>>>>>>>>>>>>>>>>> grp,
>>>>>>>>>>>>>> instead
>>>>>>>>>>>>>>>>> of GROUP [IgniteAbbrevationsRule]
>>>>>>>>>>>>>>>>> [ERROR]
>>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>> 
>>>>>>>>>>>>> 
>>>>>>>>>>>> 
>>>>>>>>> 
>> /Users/sbt-izhikov-nv/work/ignite/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/persistence/db/IgniteLogicalRecoveryTest.java:200:
>>>>>>>>>>>>>>>>> Abbrevation should be used for cacheLoader! Please, use
>> ldr,
>>>>>>>>>>>> instead
>>>>>>>>>>>>> of
>>>>>>>>>>>>>>>>> Loader [IgniteAbbrevationsRule]
>>>>>>>>>>>>>>>>> ```
>>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>>> [1]
>>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>> 
>>>>>>>>>>>>> 
>>>>>>>>>>>> 
>>>>>>>>> 
>> https://cwiki.apache.org/confluence/display/IGNITE/Abbreviation+Rules#AbbreviationRules-VariableAbbreviation
>>>>>>>>>>>>>>>>> [2] https://github.com/apache/ignite/pull/9153
>>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>> 
>>>>>>>>>>>>>> 
>>>>>>>>>>>>> 
>>>>>>>>>>>> 
>>>>>>>>>>> 
>>>>>>>>>>> 
>>>>>>>>>>> --
>>>>>>>>>>> 
>>>>>>>>>>> Best regards,
>>>>>>>>>>> Alexei Scherbakov
>>>>>>>>>> 
>>>>>>>>> 
>>>>>>>>> 
>>>>>> 
>>>>> 
>>>>> 
>>>>> --
>>>>> 
>>>>> Best regards,
>>>>> Ivan Pavlukhin
>>>> 
>>> 
>>> 
>>> --
>>> 
>>> Best regards,
>>> Ivan Pavlukhin
>> 
>> 
> 
> -- 
> Sincerely yours, Ivan Daschinskiy

Reply via email to