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

Re: [PATCH 1/3] checkout: describe_detached_head: remove 3dots after committish

From
Philip Oakley <philipoakley@iee.org>
Date
Nov 9, 2017, 23:15 UTC
Message-ID
<EA775C6AB4684B7A86A88C733C132827@PhilipOakley>
In-Reply-To
<xmqqfu9pmsx3.fsf@gitster.mtv.corp.google.com>
From: "Junio C Hamano" <gitster@pobox.com>
Sent: Wednesday, November 08, 2017 1:59 AM
Show 34 quoted lines
> "Philip Oakley" <philipoakley@iee.org> writes:
>
>> But...
>>> ...
>>> This change causes quite a few tests to fall over; however, they
>>> all have truncated-something-longer-ellipses in their
>>> raw-diff-output expected sections, and removing the ellipses
>>> from there makes the tests pass again, :-)
>>
>> The number of failures you report in the test suit suggests that
>> someone somewhere will be expecting that notation, and that we may
>> need a deprecation period, perhaps with an 'ellipsis' config variable
>> whose default value can later be flipped, though that leaves a config
>> value needing support forever!
>
> Hmmm, never thought about that.
>
> I have been assuming that tools reading "--raw" output that is
> abbreviated would be crazy, because they have to strip the dots and
> the number of dots may not always be three [*1*].
>
> But you are right.  It would be very unlikely that there is no such
> crazy tools, so it deserves consideration if we would be breaking
> such tools.
>
> On the other hand, if such a crazy tool was still written correctly
> (it is debatable what the definition of "correct" is, though), it
> would be stripping any number dots at the end, not just insisting on
> seeing exactly three dots, and splitting these fields at SP.
> Otherwise they would already be broken as they cannot handle
> occasional object names that have less than three dots because they
> happen to be longer than the more common abbreviation length used by
> other objects.  So in practice it might not be _too_ bad.
>

Thinking on this, I'd suggest that the patch series does remove the ellipsis dots immediately, but retains a config option that can be set to get back the old 'dots' display for those who have badly written scripts that maybe haven't failed yet. i.e. no deprecation period, just a fall back option; and if nobody shouts then remove the config option after a respectable period.

It would also mean the existing tests can be re-used...
Show 12 quoted lines
>
> [Footnote]
>
> *1* When we ask for --abbrev=7, we allocate 10 places and fill the
> rest with necessary number of dots after the result of
> find_unique_abbrev(), so if an object name turns out to require 8
> hexdigits to make it unique, we'll append only two dots to it to
> make it 10 so that it aligns nicely with others) and they would
> always be reading the full, non abbreviated output.  The story does
> not change that much when we do not explicitly ask for a specific
> abbreviation length in that we add variable number of dots for
> aligning in that case, too.

The --abbrev=7 does cater for many smaller repo's, so there is a possiblity that the bad script issue hasn't been hit yet by those repos. --

Philip 
Previous: Junio C HamanoNext: Ann T Ropea
Message 11 of 58 in “checkout: describe_detached_head: remove 3dots after committish”
  1. 1/3 checkout: describe_detached_head: remove 3dots after committishAnn T Ropea, Nov 5, 2017
  2. 2/3 Documentation: user-manual: limit potentially confusing usage of 3dots (and 2dots)Ann T Ropea, Nov 5, 2017
  3. 3/3 Documentation: revisions: add note about 3dots usages as continuation indicationsAnn T Ropea, Nov 5, 2017
  4. Junio C HamanoNov 6, 2017
  5. Junio C HamanoNov 6, 2017
  6. Philip OakleyNov 7, 2017
  7. Junio C HamanoNov 7, 2017
  8. Ann T RopeaNov 7, 2017
  9. Philip OakleyNov 7, 2017
  10. Junio C HamanoNov 8, 2017
  11. Philip OakleyNov 9, 2017
  12. Ann T RopeaNov 13, 2017
  13. Ann T RopeaNov 13, 2017
  14. Ann T RopeaNov 13, 2017
  15. Junio C HamanoNov 14, 2017
  16. Ann T RopeaNov 19, 2017
  17. Junio C HamanoNov 20, 2017
  18. Ann T RopeaNov 19, 2017
  19. Ann T RopeaNov 19, 2017
  20. Eric SunshineNov 19, 2017
  21. Ann T RopeaNov 19, 2017
  22. Eric SunshineNov 19, 2017
  23. Ann T RopeaNov 19, 2017
  24. Junio C HamanoNov 20, 2017
  25. Philip OakleyNov 20, 2017
  26. Junio C HamanoNov 22, 2017
  27. Philip OakleyNov 22, 2017
  28. Junio C HamanoNov 24, 2017
  29. Ann T RopeaNov 24, 2017
  30. Ann T RopeaNov 24, 2017
  31. Ann T RopeaNov 24, 2017
  32. Ann T RopeaNov 24, 2017
  33. Ann T RopeaNov 24, 2017
  34. Ann T RopeaNov 24, 2017
  35. Junio C HamanoNov 25, 2017
  36. Junio C HamanoNov 26, 2017
  37. Junio C HamanoNov 26, 2017
  38. Junio C HamanoNov 26, 2017
  39. Ann T RopeaDec 3, 2017
  40. Ann T RopeaDec 3, 2017
  41. Ann T RopeaDec 3, 2017
  42. Ann T RopeaDec 3, 2017
  43. Ann T RopeaDec 3, 2017
  44. Junio C HamanoDec 4, 2017
  45. Ann T RopeaDec 4, 2017
  46. Junio C HamanoDec 5, 2017
  47. Ann T RopeaDec 6, 2017
  48. Junio C HamanoDec 6, 2017
  49. Ann T RopeaDec 6, 2017
  50. Ann T RopeaDec 3, 2017
  51. Ann T RopeaDec 3, 2017
  52. Junio C HamanoDec 4, 2017
  53. Ann T RopeaNov 19, 2017
  54. Junio C HamanoNov 20, 2017
  55. Ann T RopeaNov 13, 2017
  56. Ann T RopeaNov 13, 2017
  57. Ann T RopeaNov 13, 2017
  58. Junio C HamanoNov 14, 2017

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.