All of lore.kernel.org
 help / color / mirror / Atom feed
From: Junio C Hamano <gitster@pobox.com>
To: Phillip Wood <phillip.wood123@gmail.com>
Cc: Ayush Chandekar <ayu.chandekar@gmail.com>,
	 christian.couder@gmail.com, git@vger.kernel.org,
	 shyamthakkar001@gmail.com, kristofferhaugsbakk@fastmail.com
Subject: Re: [GSOC PATCH v2] commit: avoid scanning trailing comments when 'core.commentChar' is "auto"
Date: Fri, 27 Jun 2025 07:52:06 -0700	[thread overview]
Message-ID: <xmqqms9t8cfd.fsf@gitster.g> (raw)
In-Reply-To: <91982162-b138-4bb1-81fd-6f9185801c99@gmail.com> (Phillip Wood's message of "Fri, 27 Jun 2025 09:34:30 +0100")

Phillip Wood <phillip.wood123@gmail.com> writes:

>> +	size_t cutoff;
>> +
>> +	/* Ignore comment chars in trailing comments (e.g., Conflicts:) */
>> +	cutoff = sb->len - ignored_log_message_bytes(sb->buf, sb->len);
>
> This finds the "Conflicts:" line. I was surprised to see that the
> string it looks for is hard coded and not translated, however the
> sequencer (also surprisingly) does not translate that message either
> so it should work.

There is a funny chicken-and-egg problem, though.  It limits the
search for "Conflicts" by using wt_status_locate_end() based on the
current value of comment_line_str.  When core.commentstring is set
to "auto", the code that reads the configuration does not touch the
comment_line_str variable, which is initialized to '#'.  So

	[core]
	    commentstring = '%'
	    commentstring = auto

would have '%' in comment_line_str upon entering this codepath, let
wt_status_locate_end() use '%' as the comment string to find the end
of the log message, and then looks for "Conflicts:" in the result.

Which may or may not be what you want.

> If you used an existing file (F1 or F2) like most of the rest of the
> tests in this file we could avoid creating this commit and save
> ourselves a couple of processes.

Excellent suggestion.

>> +	test_grep "^# Changes to be committed:$" actual
>
> I agree that it is a good idea to anchor the start of the message, but
> I'm not sure it is helpful to anchor the end of the message as we
> don't want the test to fail just because an unrelated change adds some
> whitespace to the end of this line. I'd be tempted to drop the ':' for
> the same reason.

Again, excellent.


> Thanks for fixing this
>
> Phillip

Thanks.

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

Thread overview: 44+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2025-06-26 13:22 [GSOC PATCH] commit: avoid scanning trailing comments when 'core.commentChar' is "auto" Ayush Chandekar
2025-06-26 14:33 ` Junio C Hamano
2025-06-26 21:30   ` Ayush Chandekar
2025-06-26 15:40 ` Kristoffer Haugsbakk
2025-06-26 21:28   ` Ayush Chandekar
2025-06-26 22:16 ` [GSOC PATCH v2] " Ayush Chandekar
2025-06-27  8:34   ` Phillip Wood
2025-06-27 14:52     ` Junio C Hamano [this message]
2025-06-28 10:37       ` Ayush Chandekar
2025-06-28 13:38       ` Phillip Wood
2025-06-28 14:33         ` Ayush Chandekar
2025-06-30  8:59           ` Phillip Wood
2025-06-30 17:34             ` Ayush Chandekar
2025-06-28 15:10         ` Phillip Wood
2025-06-30 14:11         ` Junio C Hamano
2025-06-28 10:18     ` Ayush Chandekar
2025-06-27  9:04   ` Christian Couder
2025-06-30 18:25 ` [GSOC PATCH v3] " Ayush Chandekar
2025-07-01 13:17   ` Phillip Wood
2025-07-01 18:33     ` Ayush Chandekar
2025-07-01 19:31       ` Phillip Wood
2025-07-02 23:46         ` Ayush Chandekar
2025-07-04  8:23           ` Phillip Wood
2025-07-08 15:47             ` Ayush Chandekar
2025-07-09 14:17               ` Phillip Wood
2025-07-15 18:51 ` [GSOC PATCH 0/2] commit: improve behaviour of core.commentChar=auto for comments in commit messages Ayush Chandekar
2025-07-15 18:56   ` [GSOC PATCH v4 " Ayush Chandekar
2025-07-15 18:51   ` [GSOC PATCH 1/2] commit: avoid scanning trailing comments when 'core.commentChar' is "auto" Ayush Chandekar
2025-07-15 18:57     ` [GSOC PATCH v4 " Ayush Chandekar
2025-07-15 18:51   ` [GSOC PATCH 2/2] config: set comment_line_str to "#" when core.commentChar=auto Ayush Chandekar
2025-07-15 18:57     ` [GSOC PATCH v4 " Ayush Chandekar
2025-07-15 21:23     ` [GSOC PATCH " Junio C Hamano
2025-07-15 22:15       ` Ayush Chandekar
2025-07-15 23:30         ` Junio C Hamano
2025-07-16 11:04           ` Ayush Chandekar
2025-07-16 15:21             ` Junio C Hamano
2025-07-16 15:24               ` Phillip Wood
2025-07-16 15:29                 ` Junio C Hamano
2025-07-16 11:43 ` [GSOC PATCH v5 0/2] commit: improve behaviour of core.commentChar=auto for comments in commit messages Ayush Chandekar
2025-07-16 11:43   ` [GSOC PATCH v5 1/2] commit: avoid scanning trailing comments when 'core.commentChar' is "auto" Ayush Chandekar
2025-07-16 11:43   ` [GSOC PATCH v5 2/2] config: set comment_line_str to "#" when core.commentChar=auto Ayush Chandekar
2025-07-16 15:28     ` Junio C Hamano
2025-07-16 14:28   ` [GSOC PATCH v5 0/2] commit: improve behaviour of core.commentChar=auto for comments in commit messages Phillip Wood
2025-07-16 15:29     ` 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=xmqqms9t8cfd.fsf@gitster.g \
    --to=gitster@pobox.com \
    --cc=ayu.chandekar@gmail.com \
    --cc=christian.couder@gmail.com \
    --cc=git@vger.kernel.org \
    --cc=kristofferhaugsbakk@fastmail.com \
    --cc=phillip.wood123@gmail.com \
    --cc=shyamthakkar001@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.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.