From: Christian Couder <christian.couder@gmail.com>
To: Junio C Hamano <gitster@pobox.com>
Cc: git <git@vger.kernel.org>, "Jeff King" <peff@peff.net>,
"Ævar Arnfjörð" <avarab@gmail.com>,
"Nguyen Thai Ngoc Duy" <pclouds@gmail.com>,
"David Turner" <dturner@twopensource.com>,
"Eric Sunshine" <sunshine@sunshineco.com>,
"Torsten Bögershausen" <tboegi@web.de>,
"Stefan Beller" <sbeller@google.com>,
"Christian Couder" <chriscool@tuxfamily.org>
Subject: Re: [PATCH v7 09/11] config: add core.untrackedCache
Date: Tue, 26 Jan 2016 07:50:25 +0100 [thread overview]
Message-ID: <CAP8UFD27UOh-ckA3-JPY6a7KAZHOOLv+j4TkBSp-EDZRwdcbKw@mail.gmail.com> (raw)
In-Reply-To: <xmqqio2hfku0.fsf@gitster.mtv.corp.google.com>
On Mon, Jan 25, 2016 at 9:47 PM, Junio C Hamano <gitster@pobox.com> wrote:
> Christian Couder <christian.couder@gmail.com> writes:
>
>> diff --git a/read-cache.c b/read-cache.c
>> index 5be7cd1..a04ec8c 100644
>> --- a/read-cache.c
>> +++ b/read-cache.c
>> @@ -1497,10 +1497,23 @@ static struct cache_entry *create_from_disk(struct ondisk_cache_entry *ondisk,
>> return ce;
>> }
>>
>> -static void check_ce_order(struct index_state *istate)
>> +static void post_read_index_from(struct index_state *istate)
>> {
>> unsigned int i;
>>
>> + switch (git_config_get_untracked_cache()) {
>> + case -1: /* keep: do nothing */
>> + break;
>> + case 0: /* false */
>> + remove_untracked_cache(istate);
>> + break;
>> + case 1: /* true */
>> + add_untracked_cache(istate);
>> + break;
>> + default: /* unknown value: do nothing */
>> + break;
>> + }
>> +
>> for (i = 1; i < istate->cache_nr; i++) {
>> struct cache_entry *ce = istate->cache[i - 1];
>> struct cache_entry *next_ce = istate->cache[i];
>
> Bad manners.
>
> * The new code added to an existing function, unless there is a
> good reason, goes to the bottom. In this case, the verification
> of the ordering of cache entries and tweaking of UC extension are
> two unrelated things that can be independently done, and there is
> no justification why the new code has to come to top.
>
> * The old function name served as a good documentation of what it
> does. That is no longer the case. Each unrelated segment of
> this new function needs to be commented. Even better, perhaps
> leave the original check_ce_order() as-is, introduce a new
> function tweak_uc_extension(), and make the post_read_index()
> to be just two-liner function:
>
> static void post_read_index(struct index_state *istate)
> {
> check_ce_order(istate);
> tweak_uc_extension(istate);
> }
>
> That way the documentation value of each function that does one
> specific thing and named specific to its task will be kept, and
> there is no need for extra comments.
Ok, I will do that, thanks.
next prev parent reply other threads:[~2016-01-26 6:50 UTC|newest]
Thread overview: 16+ messages / expand[flat|nested] mbox.gz Atom feed top
2016-01-24 15:28 [PATCH v7 00/11] Untracked cache improvements Christian Couder
2016-01-24 15:28 ` [PATCH v7 01/11] dir: free untracked cache when removing it Christian Couder
2016-01-25 19:16 ` Stefan Beller
2016-01-26 6:48 ` Christian Couder
2016-01-24 15:28 ` [PATCH v7 02/11] update-index: use enum for untracked cache options Christian Couder
2016-01-24 15:28 ` [PATCH v7 03/11] update-index: add --test-untracked-cache Christian Couder
2016-01-24 15:28 ` [PATCH v7 04/11] update-index: add untracked cache notifications Christian Couder
2016-01-24 15:28 ` [PATCH v7 05/11] update-index: move 'uc' var declaration Christian Couder
2016-01-24 15:28 ` [PATCH v7 06/11] dir: add {new,add}_untracked_cache() Christian Couder
2016-01-24 15:28 ` [PATCH v7 07/11] dir: add remove_untracked_cache() Christian Couder
2016-01-24 15:28 ` [PATCH v7 08/11] dir: simplify untracked cache "ident" field Christian Couder
2016-01-24 15:28 ` [PATCH v7 09/11] config: add core.untrackedCache Christian Couder
2016-01-25 20:47 ` Junio C Hamano
2016-01-26 6:50 ` Christian Couder [this message]
2016-01-24 15:28 ` [PATCH v7 10/11] test-dump-untracked-cache: don't modify the untracked cache Christian Couder
2016-01-24 15:28 ` [PATCH v7 11/11] t7063: add tests for core.untrackedCache Christian Couder
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=CAP8UFD27UOh-ckA3-JPY6a7KAZHOOLv+j4TkBSp-EDZRwdcbKw@mail.gmail.com \
--to=christian.couder@gmail.com \
--cc=avarab@gmail.com \
--cc=chriscool@tuxfamily.org \
--cc=dturner@twopensource.com \
--cc=git@vger.kernel.org \
--cc=gitster@pobox.com \
--cc=pclouds@gmail.com \
--cc=peff@peff.net \
--cc=sbeller@google.com \
--cc=sunshine@sunshineco.com \
--cc=tboegi@web.de \
/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).