On 12/15/2016 11:38 PM, Augie Fackler wrote:
(I’m trying to be brief here - hopefully it doesn’t come across as upset, 
because I’m not - mostly I was blindsided by a policy claim that I don’t 
remember.)

On Dec 15, 2016, at 3:40 PM, Pierre-Yves David <pierre-yves.da...@ens-lyon.org> 
wrote:

So, to sum up, my stance is "Let us not revisit decision made by Matt for a 
while". Of course they might be case were we could make an exception if it is really 
worth it. Code style does not seems to be high profile enough for that (and is a lot of 
work to adjust).

In broad strokes, I agree that we should make an effort to not cause a wave of 
sea change. My perception of this particular issue is that:

1) The codebase is already somewhat inconsistent (despite the efforts of mpm 
and others) when it comes to constant naming

My perception (and apparently Kevin's too) is that the codebase is currently consistent¹. A very quick check of the current code seems to confirm it is consistent (but that was a quick check). So, I think you need to back this statement with stronger fact than just your perception.

Note for all as we speak about advocating for changes. On a general basis I expect people proposing changes to something established, (especially, behavior changes (different this case)) to provides extended details one around the following things:
- What's the current situation,
- What are the clear gains brought on the table by the new proposal,
- What are the drawback/cost of doing that change.

2) mpm’s preferred style conflicts with both what we do in our c (sigh) *and* 
what the rest of the world does in Python (and most other languages)

I agree here. (However as said in the previous email, there is many debatable choice in the current style. But the fact we have a style is something I find good.)

3) Constants are becoming more common in our codebase than they used to be, 
which is good.

I don't share this perception either, for the past five years I've been using many constants in my Mercurial development and seen plenty used too. But that is a perception. Can you provide data to support your perception?

4) It’s not actually worth the amount of ink we’ve spilled on it right now.

I agree, this is part of why I'm putting style change inside the "Let us not revisit decision made by Matt for a while" principle, we have been using the current style for almost 12 years and our code base run. So I would rather keep the status quo for now and focus on more urgent things to discuss.

The sum of those things is that I’d prefer, in new code, to violate the 
oral-history-only (that is, not codified in a check-code rule or other formal 
coding style declaration) convention whereby constants are indistinguishable 
from variables,

Actually, the "all lower case, no underscore" rule is written down somewhere on the wiki:

  https://www.mercurial-scm.org/wiki/CodingStyle#Naming_conventions

(note: the page can probably use an update)

> by acquiescing to the broader Python coding conventions on this single issue. I don’t want to go back and fix up old code, just try and move the clarity needle on new code.

So, given that I currently consider the code-base overall consistent (until proven otherwise). I think there is value in consistency.

Of someone whats to make an extensive study and proposal of how we could move from a consistent lower-case-consts style to a consistent UPPER-CASE-CONST (better) style, that would be worse studying (to be honest, the migration looks a bit scary)

In addition, given that Matt used to have strong feeling about code-style consistency. I would appreciate, if that someone waited until next October before doing so.

I’ve seen some people say they’re fine with such a new policy, and many 
contributors (including me when I’m on autopilot, despite a decade of history 
with this codebase) are doing it by default, which was the thing that really 
pushed me toward making this proposal.

I’m fine to explicitly defer this (until the next sprint perhaps? Would that be 
far enough in the future?), if that’s what the broader community (rather than 
just one person) would like. I’m also fine to hear the proposal rejected on its 
merits (rather than a “we’re not changing things now” policy),

[extracted the last bit on it own line to clarify what I'm replying to]

> but I haven’t heard any objections to the actual proposal, only the timing.

That part is confusing to me, two emails ago, on this thread, Kevin voted -0 on the proposal. (You are replying to my reply to that Kevin's email.)

Possible steps forward: we agree to discuss this at the sprint (so probably 
March), knowing that I'll probably want to go and do invasive cleanup of 
constants in network-related code at that time, or we actually discuss making 
the policy change now so we can avoid future churn. Thoughts? I’m open to other 
paths as well.

Here is the things that are important to me (from most important to least important):

* Before we decide something, I would like an assessment of the current situation in the code base and some actual plan(s) of how to do the migration (and to what extend).

* This seems like a discussion more suited for a Sprint than emails,

* I would prefer we wait until October before having serious talk about this. Both because we probably have more important matters to focus our energy by then and out of respect for Matt opinion.

Cheers,

--
Pierre-Yves David

[1] sure there is a handful of exception.
_______________________________________________
Mercurial-devel mailing list
Mercurial-devel@mercurial-scm.org
https://www.mercurial-scm.org/mailman/listinfo/mercurial-devel

Reply via email to