D6183: copies: add config option for writing copy metadata to file and/or changset

martinvonz (Martin von Zweigbergk) phabricator at mercurial-scm.org
Sun Apr 14 01:22:21 EDT 2019


martinvonz added a comment.


  In https://phab.mercurial-scm.org/D6183#90722, @yuja wrote:
  
  > >   > It might be nitpicky, but I think it's better to not embed `\0` into the
  > >   >  extras field. Almost all extras data are texts, and IIRC we regret that
  > >   >  transplant sources are stored in binary form.
  > >   
  > >   Why not? I picked \0 and \n because they won't appear in filenames, so it's convenient in that way.
  >
  > I don't remember, but we do store even boolean value as text, not in binary
  >  `\0`/`\1` form. `transplant_source` is the solo exception.
  
  
  Perhaps it's just so `{extras}` doesn't print ANSI escape codes and such? (I assume that can still happen if put escape characters in your filenames, for example.)
  
  > https://www.mercurial-scm.org/wiki/ChangesetExtra
  > 
  > And if we pick \0/\n separators, _string_escape() wouldn't be needed
  >  at the encodecopies() layer.
  
  Oh, now I see what you're saying! That's embarrassing. So maybe we should `_string_escape()` the whole thing? I'll do that.

REPOSITORY
  rHG Mercurial

REVISION DETAIL
  https://phab.mercurial-scm.org/D6183

To: martinvonz, #hg-reviewers
Cc: yuja, pulkit, gracinet, marmoute, mercurial-devel


More information about the Mercurial-devel mailing list