git@vger.kernel.org mailing list mirror (one of many)
 help / color / mirror / code / Atom feed
From: Junio C Hamano <gitster@pobox.com>
To: "Ævar Arnfjörð Bjarmason" <avarab@gmail.com>
Cc: Elijah Newren <newren@gmail.com>, Git Mailing List <git@vger.kernel.org>
Subject: Re: What's cooking in git.git (Sep 2021, #03; Fri, 10)
Date: Sat, 11 Sep 2021 14:38:23 -0700	[thread overview]
Message-ID: <xmqq4kaqn67k.fsf@gitster.g> (raw)
In-Reply-To: <87k0jn80np.fsf@evledraar.gmail.com> ("Ævar Arnfjörð Bjarmason"'s message of "Sat, 11 Sep 2021 19:42:59 +0200")

Ævar Arnfjörð Bjarmason <avarab@gmail.com> writes:

>>> * ms/customizable-ident-expansion (2021-09-01) 1 commit
>>>  - keyword expansion: make "$Id$" string configurable
>>>
>>>  Instead of "$Id$", user-specified string (like $FreeBSD$) can be
>>>  used as an in-blob placeholder for keyword expansion.
>>
>> Kinda disappointing to see mis-designs from CVS not only persist but
>> get extended.  Perhaps I'm just biased...
>
> Yeah, if we were doing this today we'd say no, just use a smudge/clean
> filter.
>
> Which is effectively what this feature in git is, i.e. before we had
> that we had this built in smudge/clean filter, but this pre-dates that
> facility.
>
> And yeah, the relevant projects should probably fix their build systems
> to not rely on this CVS-era concept.

So three of us are all unhappy about $Id$, which is sort of
understandable given how long we've been involved in the project.

In one sense, our $Id$ is slightly more useful than CVS's, because
you could detect a non-pristine blob (i.e. take the blob object name
after contracting "$Id:...$" into "$Id$" and if it does not match
what is recorded on "$Id:...$", the blob has been tampered), which
CVS's $Id$ would not help, but it is not a huge advantage.  I'd
rather keep it a low-profile checkbox item whose use is not actively
encouraged.

And then the execution in this topic makes it worse by tying the
customization to the attribute mechanism, which would not fly well
both from usability's point of view (the string $Id$ should not be
per path---or the users need to look up which replacement $Id$
string should be used in a path in .gitattributes) and also
correctness's point of view (when you need to decide if $FreeBSD$ in
a different path need to be replaced, your in-tree .gitattributes
file may have been, or may not yet have been, checked out from the
same source, and the attribute mechanism's notion of "in this path,
$FreeBSD$ is to be replaced, instead of $Id$" may or may not apply).
If it were tied to the normal .gitconfig mechanism, it might have
been slightly more palatable.

> But since we're probably not actually talking about ripping the "$Id$"
> feature out of git & telling users to use their own clean/smudge filter
> or whatever for it, I don't see much harm in that existing facility
> becoming configurable.

See above.  I am OK with configurability via the configuration mechansim,
but not via the attribute subsystem.

>>>  The "--preserve-merges" option of "git rebase" has been removed.
>>>
>>>  Will merge to 'master'.
>>
>> I'm not objecting, but I'm kind of surprised to see this after your
>> and Dscho's previous discussion at
>> https://lore.kernel.org/git/xmqqv939uis8.fsf@gitster.g/; I thought
>> it'd stay in next for a while.  Was this a mistake?
>
> Perhaps I was just really convincing in
> https://lore.kernel.org/git/87fsuedl5x.fsf@evledraar.gmail.com/ ? :)

This is merely a result from a mechanical upgrade of "to 'next'" to
"to 'master'" that happens when the whats-cooking draft gets auto
updated after merging topics to 'next', which probably happened
before the "let's merge and keep" discussion happened.



  reply	other threads:[~2021-09-11 21:38 UTC|newest]

Thread overview: 6+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2021-09-10 22:11 What's cooking in git.git (Sep 2021, #03; Fri, 10) Junio C Hamano
2021-09-11 17:27 ` Elijah Newren
2021-09-11 17:42   ` Ævar Arnfjörð Bjarmason
2021-09-11 21:38     ` Junio C Hamano [this message]
2021-09-13 12:11   ` js/retire-preserve-merges, was " Johannes Schindelin
2021-09-12  1:57 ` Taylor Blau

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

  List information: http://vger.kernel.org/majordomo-info.html

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=xmqq4kaqn67k.fsf@gitster.g \
    --to=gitster@pobox.com \
    --cc=avarab@gmail.com \
    --cc=git@vger.kernel.org \
    --cc=newren@gmail.com \
    /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.
Code repositories for project(s) associated with this public inbox

	https://80x24.org/mirrors/git.git

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 read-only IMAP folder(s) and NNTP newsgroup(s).