public inbox for git@vger.kernel.org 
 help / color / mirror / Atom feed
From: Derrick Stolee <stolee@gmail•com>
To: Henrique Ferreiro <hferreiro@igalia•com>,
	Derrick Stolee via GitGitGadget <gitgitgadget@gmail•com>,
	git@vger•kernel.org
Cc: gitster@pobox•com, ps@pks•im, atthewhughes934@gmail•com,
	johannes.schindelin@gmx•de
Subject: Re: [PATCH v2 5/5] scalar: document config settings
Date: Fri, 12 Dec 2025 09:06:18 -0500	[thread overview]
Message-ID: <e1d51a8f-582f-425e-9682-c93411b4d090@gmail.com> (raw)
In-Reply-To: <e19246a7-40db-41d0-9cdf-817833123f45@igalia.com>

On 12/11/2025 9:20 AM, Henrique Ferreiro wrote:
> On 12/1/25 5:50 PM, Derrick Stolee via GitGitGadget wrote:
>> From: Derrick Stolee <stolee@gmail•com>
>>
>> Add user-facing documentation that justifies the values being set by
>> 'scalar clone', 'scalar register', and 'scalar reconfigure'.
> 
> Hi Derrick. I was planning to contribute a patch removing some config
> options so I'll take this opportunity to just discuss those here.
> 
> My motivation is that some of the options seem to be related to things
> other than performance and the list is huge, so I believe that some
> options don't belong to scalar.
> 
>> +REQUIRED AND RECOMMENDED CONFIG
>> +-------------------------------
> 
> There's no mention on which configs are required and which are
> recommended, and it looks like none are actually required so maybe just
> remove REQUIRED.

You're absolutely right. Good eye! I started this documentation before
going back and removing the "required" configs.
 
>> +am.keepCR=true::
>> +core.logAllRefUpdates=true::
>> +credential.https://dev.azure.com.useHttpPath=true::
>> +http.sslBackend=schannel::
> 
> These options are not related to performance. Why not keeping them out
> of scalar?
> 
>> +core.autoCRLF=false::
>> +core.safeCRLF=false::
>> +index.threads=true::
> 
> These options just duplicate the default settings.

We did find that index.threads=true gives something more when explicitly
set, so there is currently value in keeping it explicit.

The CRLF configs are sometimes set globally on Windows systems, but we
want the local repository to override those global settings for
performance reasons.
 
>> +feature.manyFiles=false::
>> +    This disables the "many files" optimizations grouped under this feature
>> +    config. The expectation is that all valuable optimizations are also set
>> +    explicitly by Scalar config, and any differences are intentional.
> 
> I disagree with this reasoning. This thread was actually brought to my
> attention when working on setting manyFiles to true in scalar:
> https://github.com/git/git/pull/2125.
> 
> Do you foresee any features that would apply to scalar but not to
> manyFiles? I'd even say that some scalar options could be moved to
> manyFiles instead, so that people that don't use scalar can benefit too.

I suppose that the default reason is that registering a repo with Scalar
already enables some config in an "indirect" way and having it rely on
features.manyFiles would be another layer of indirection.

The historical reason is that we initially didn't want changes to the
features.* config settings to automatically be assigned to Scalar. I
think this is more important on the features.experimental side, as
the intention of features.manyFiles is very similar to the intention of
cloning/registering with Scalar.

For now, I'm going to leave this as-is, because we have enough changes
to the config settings and documentation. You can submit a change on top
of this one to demonstrate the value of setting features.manyFiles=true
and how that impacts the code in its new shape.

Thanks,
-Stolee


  reply	other threads:[~2025-12-12 14:06 UTC|newest]

Thread overview: 48+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2025-11-26 22:18 [PATCH 0/5] Audit and document Scalar config Derrick Stolee via GitGitGadget
2025-11-26 22:18 ` [PATCH 1/5] scalar: annotate config file with "set by scalar" Derrick Stolee via GitGitGadget
2025-11-26 23:55   ` Junio C Hamano
2025-12-01  8:55     ` Patrick Steinhardt
2025-11-26 22:18 ` [PATCH 2/5] scalar: use index.skipHash=true for performance Derrick Stolee via GitGitGadget
2025-11-26 23:57   ` Junio C Hamano
2025-11-30 19:55     ` Derrick Stolee
2025-11-26 22:18 ` [PATCH 3/5] scalar: remove stale config values Derrick Stolee via GitGitGadget
2025-11-27  0:00   ` Junio C Hamano
2025-11-26 22:18 ` [PATCH 4/5] scalar: alphabetize and simplify config Derrick Stolee via GitGitGadget
2025-12-01  8:55   ` Patrick Steinhardt
2025-12-01 12:35     ` Derrick Stolee
2025-11-26 22:18 ` [PATCH 5/5] scalar: document config settings Derrick Stolee via GitGitGadget
2025-11-27  0:09   ` Junio C Hamano
2025-11-30 19:56     ` Derrick Stolee
2025-12-01  8:55   ` Patrick Steinhardt
2025-12-01 12:40     ` Derrick Stolee
2025-12-01 14:04 ` [PATCH 0/5] Audit and document Scalar config Johannes Schindelin
2025-12-01 16:50 ` [PATCH v2 " Derrick Stolee via GitGitGadget
2025-12-01 16:50   ` [PATCH v2 1/5] scalar: annotate config file with "set by scalar" Derrick Stolee via GitGitGadget
2025-12-02  7:53     ` Patrick Steinhardt
2025-12-01 16:50   ` [PATCH v2 2/5] scalar: use index.skipHash=true for performance Derrick Stolee via GitGitGadget
2025-12-01 16:50   ` [PATCH v2 3/5] scalar: remove stale config values Derrick Stolee via GitGitGadget
2025-12-01 17:46     ` Matthew Hughes
2025-12-02  7:53       ` Patrick Steinhardt
2025-12-02 19:04         ` Matthew Hughes
2025-12-02 19:22           ` Patrick Steinhardt
2025-12-07  0:34             ` Junio C Hamano
2025-12-08  6:58               ` Patrick Steinhardt
2025-12-12 13:57       ` Derrick Stolee
2025-12-01 16:50   ` [PATCH v2 4/5] scalar: alphabetize and simplify config Derrick Stolee via GitGitGadget
2025-12-01 16:50   ` [PATCH v2 5/5] scalar: document config settings Derrick Stolee via GitGitGadget
2025-12-01 17:58     ` Matthew Hughes
2025-12-02  7:53       ` Patrick Steinhardt
2025-12-11 14:20     ` Henrique Ferreiro
2025-12-12 14:06       ` Derrick Stolee [this message]
2025-12-15 12:14         ` Henrique Ferreiro
2025-12-02  2:05   ` [PATCH v2 0/5] Audit and document Scalar config Junio C Hamano
2025-12-12 15:15   ` [PATCH v3 " Derrick Stolee via GitGitGadget
2025-12-12 15:15     ` [PATCH v3 1/5] scalar: annotate config file with "set by scalar" Derrick Stolee via GitGitGadget
2025-12-12 15:15     ` [PATCH v3 2/5] scalar: use index.skipHash=true for performance Derrick Stolee via GitGitGadget
2025-12-12 15:15     ` [PATCH v3 3/5] scalar: remove stale config values Derrick Stolee via GitGitGadget
2025-12-12 15:15     ` [PATCH v3 4/5] scalar: alphabetize and simplify config Derrick Stolee via GitGitGadget
2025-12-12 15:15     ` [PATCH v3 5/5] scalar: document config settings Derrick Stolee via GitGitGadget
2025-12-15 12:33       ` Henrique Ferreiro
2025-12-12 23:49     ` [PATCH v3 0/5] Audit and document Scalar config Junio C Hamano
2025-12-15 14:33       ` Derrick Stolee
2025-12-16  0:39         ` Junio C Hamano

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=e1d51a8f-582f-425e-9682-c93411b4d090@gmail.com \
    --to=stolee@gmail$(echo .)com \
    --cc=atthewhughes934@gmail$(echo .)com \
    --cc=git@vger$(echo .)kernel.org \
    --cc=gitgitgadget@gmail$(echo .)com \
    --cc=gitster@pobox$(echo .)com \
    --cc=hferreiro@igalia$(echo .)com \
    --cc=johannes.schindelin@gmx$(echo .)de \
    --cc=ps@pks$(echo .)im \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html
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