git/list[1] front-page[2] threads[3] people[4] search[5] about
 

Re: [PATCH] format-patch: escape "From " lines recognized by mailsplit

From
EWEric Wong <e@80x24.org>
Date
Jul 25, 2016, 08:43 UTC
Message-ID
<20160725084357.GA8025@starla>
In-Reply-To
<xmqqd1m3825y.fsf@gitster.mtv.corp.google.com>
Junio C Hamano <gitster@pobox.com> wrote:
Show 24 quoted lines
> Junio C Hamano <gitster@pobox.com> writes:
> > Eric Wong <e@80x24.org> writes:
> >
> >> Users have mistakenly copied "From " lines into commit messages
> >> in the past, and will certainly make the same mistakes in the
> >> future.  Since not everyone uses mboxrd, yet, we should at least
> >> prevent miss-split mails by always escaping "From " lines based
> >> on the check used by mailsplit.
> >>
> >> mailsplit will not perform unescaping by default, yet, as it
> >> could cause further invocations of format-patch from old
> >> versions of git to generate bad output.  Propagating the mboxo
> >> escaping is preferable to miss-split patches.  Unescaping may
> >> still be performed via "--mboxrd".
> >
> > As a tool to produce mbox file, quoting like this in format-patch
> > output may make sense, I would think, but shouldn't send-email undo
> > this when sending individual patches?
> 
> Also, doesn't it break "git rebase" (non-interactive), or anything
> that internally runs format-patch to individual files and then runs
> am on each of them, anything that knows that each output file from
> format-patch corresponds to a single change and there is no need to
> split, badly if we do this unconditionally?
Yes, rebase should probably unescape is_from_line matches.

Anything which spawns an editor should probably warn/reprompt users on is_from_line() matches, too, to prevent user errors from sneaking in.

> IOW, shouldn't this be an optional feature to format-patch that is
> triggered by passing a new command line option that currently nobody
> is passing?

I added --pretty=mboxrd as the optional feature for this reason. It'll take a while for people to start using it (or perhaps make it the default in git 3.0). In the meantime, I would prefer extra ">" being injected rather than breaking mailsplit completely.

Previous: Junio C HamanoNext: Junio C Hamano
Message 15 of 17 in “format-patch: escape "From " lines recognized by mailsplit”
  1. format-patch: escape "From " lines recognized by mailsplitEric Wong, Jul 22, 2016
  2. Johannes SchindelinJul 23, 2016
  3. Eric WongJul 24, 2016
  4. 1/2 mailinfo: extract is_from_line from mailsplitEric Wong, Jul 24, 2016
  5. Andreas SchwabJul 24, 2016
  6. Johannes SchindelinJul 24, 2016
  7. Andreas SchwabJul 24, 2016
  8. Junio C HamanoJul 25, 2016
  9. 2/2 format-patch: escape "From " lines recognized by mailsplitEric Wong, Jul 24, 2016
  10. Johannes SchindelinJul 24, 2016
  11. Jeff KingJul 24, 2016
  12. Junio C HamanoJul 24, 2016
  13. Eric WongJul 24, 2016
  14. Junio C HamanoJul 24, 2016
  15. Eric WongJul 25, 2016
  16. Junio C HamanoJul 25, 2016
  17. Eric WongJul 25, 2016

Read the whole thread, see it on lore, or plain text.

$ cat FOOTERMessages come from the public archive at lore.kernel.org/git, fetched every hour. The front page is chosen and written each morning by an AI editor and can be wrong; the threads themselves are the record. About and API. For agents: an MCP server at https://gitlist.dev/mcp, and any thread, story or person page as Markdown by adding .md to its URL (or sending Accept: text/markdown). Details in /llms.txt.