git@vger.kernel.org mailing list mirror (one of many)
 help / color / mirror / code / Atom feed
From: Johannes Schindelin <Johannes.Schindelin@gmx.de>
To: Stefan Beller <sbeller@google.com>
Cc: git <git@vger.kernel.org>, Junio C Hamano <gitster@pobox.com>,
	Eric Sunshine <sunshine@sunshineco.com>
Subject: Re: [PATCH 1/3] rebase -i: demonstrate bug with fixup!/squash! commit messages
Date: Fri, 20 Apr 2018 22:38:05 +0200 (DST)	[thread overview]
Message-ID: <nycvar.QRO.7.76.6.1804202232360.4241@ZVAVAG-6OXH6DA.rhebcr.pbec.zvpebfbsg.pbz> (raw)
In-Reply-To: <nycvar.QRO.7.76.6.1804202149260.4241@ZVAVAG-6OXH6DA.rhebcr.pbec.zvpebfbsg.pbz>

Hi Stefan,

On Fri, 20 Apr 2018, Johannes Schindelin wrote:

> A brief test shows, however, that it is not quite as easy as
> s/grep/test_i18ngrep/, something more seems to be broken.

It seems that this week is my Rabbit Hole Week.

Turns out that we have a really, really long-standing bug in our rebase -i
where we construct the commit messages for fixup/squash chains.

Background: when having multiple fixup!/squash! commits for the same
original commit, the intermediate commits have messages starting with the
message

	# This is a combination of <N> commits.

and then every fixup/squash command increments that <N> and adds a header

	# This is the commit message #<N>:

before writing the respective commit message.

The problem arises from the fact that we deduce <N> from parsing the first
number in ASCII encoding on the first line.

That breaks e.g. when compiling with GETTEXT_POISON, and it is probably
not true in general, either.

So I introduced a patch that handles the absence of an ASCII-encoded
number gracefully, and now the test passes with and without
GETTEXT_POISON.

Thanks for the review that let me find and fix this bug!
Dscho

  reply	other threads:[~2018-04-20 20:38 UTC|newest]

Thread overview: 15+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2018-04-20 12:17 [PATCH 0/3] rebase -i: avoid stale "# This is a combination of" in commit messages Johannes Schindelin
2018-04-20 12:17 ` [PATCH 1/3] rebase -i: demonstrate bug with fixup!/squash! " Johannes Schindelin
2018-04-20 16:40   ` Stefan Beller
2018-04-20 20:04     ` Johannes Schindelin
2018-04-20 20:38       ` Johannes Schindelin [this message]
2018-04-20 20:44       ` Stefan Beller
2018-04-20 21:05         ` Johannes Schindelin
2018-04-20 19:29   ` Eric Sunshine
2018-04-20 19:31     ` Eric Sunshine
2018-04-20 20:52       ` Johannes Schindelin
2018-04-20 12:18 ` [PATCH 2/3] sequencer: leave a tell-tale when a fixup/squash failed Johannes Schindelin
2018-04-20 19:34   ` Eric Sunshine
2018-04-20 12:18 ` [PATCH 3/3] rebase --skip: clean up commit message after a failed fixup/squash Johannes Schindelin
2018-04-21 15:42   ` [PATCH 3/3] rebase --skip: clean up commit message after a failedfixup/squash Phillip Wood
2018-04-27 21:36     ` Johannes Schindelin

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=nycvar.QRO.7.76.6.1804202232360.4241@ZVAVAG-6OXH6DA.rhebcr.pbec.zvpebfbsg.pbz \
    --to=johannes.schindelin@gmx.de \
    --cc=git@vger.kernel.org \
    --cc=gitster@pobox.com \
    --cc=sbeller@google.com \
    --cc=sunshine@sunshineco.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).