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

Re: [PATCH v5 9/9] status: unit tests for --porcelain=v2

From
JHJeff Hostetler <git@jeffhostetler.com>
Date
Aug 10, 2016, 23:23 UTC
Message-ID
<57ABB788.5020305@jeffhostetler.com>
In-Reply-To
<xmqqvaz82qn6.fsf@gitster.mtv.corp.google.com>
On 08/10/2016 06:41 PM, Junio C Hamano wrote:
Show 11 quoted lines
> Jeff Hostetler <git@jeffhostetler.com> writes:
>>> Having said all that, it is OK to fix their titles after the current
>>> 9-patch series lands on 'next'; incremental refinements are easier
>>> on reviewers than having to review too many rerolls.
>>
>> I'll change the test titles to have all that info.
>
> OK.  As I said, if the retitling is the only change, then doing so
> as a follow-up to the existing 9-patch series would be easier to
> review.  If there are other changes needed, a reroll of the full set
> is probably better.

I've changed the titles and added 5 or 6 more tests to cover your previous questions/comments, but no code changes.

Show 16 quoted lines
>>> This is a small point, but doesn't the lowercase 'u' somehow look
>>> ugly, especially because the status letters that immediately follow
>>> it are all uppercase?
>>>
>>
>> Since we are inventing a new format and my column 1 is completely new
>> I didn't think it mattered.
>
> Wrong assumption ;-)  We want the resulting code to be consistent.
>
>> And I used a lowercase 'u' to distinguish
>> it from the "U" in the X and Y columns since they mean different
>> things.
>
> I thought they both mean "Unmerged"; that is why I thought seeing a
> lowercase there was very strange.

For unmerged items, the X & Y columns in the original porcelain format, can have various combinations of "A", "D", and "U" values. The implication being that "U" means modified/edited in some way. Yes, it is labeled "unmerged", but in a "DU" or "UD" conflict, it means that one side deleted it and one side modified it in some way. A "UU" conflict means both sides edited it and auto-merge failed.

All I wanted the lowercase 'u' to indicate was that the file was in an unmerged state (without specifying why). That is, we would have (the 7 valid combinations of) "u [ADU][ADU]" and it would be clear(er?) that the little 'u' was different from the other 2.

I know it is a subtle point and we can change it if you want, but that was the rationale.

Thanks, Jeff

Previous: Junio C HamanoNext: Jeff Hostetler
Message 9 of 19 in “status: V2 porcelain status”
  1. 0/9 status: V2 porcelain statusJeff Hostetler, Aug 5, 2016
  2. 2/9 status: cleanup API to wt_status_printJeff Hostetler, Aug 5, 2016
  3. 8/9 test-lib-functions.sh: Add lf_to_nulJeff Hostetler, Aug 5, 2016
  4. 6/9 status: print branch info with --porcelain=v2 --branchJeff Hostetler, Aug 5, 2016
  5. 9/9 status: unit tests for --porcelain=v2Jeff Hostetler, Aug 5, 2016
  6. Junio C HamanoAug 8, 2016
  7. Jeff HostetlerAug 10, 2016
  8. Junio C HamanoAug 10, 2016
  9. Jeff HostetlerAug 10, 2016
  10. 7/9 git-status.txt: describe --porcelain=v2 formatJeff Hostetler, Aug 5, 2016
  11. 3/9 status: support --porcelain[=<version>]Jeff Hostetler, Aug 5, 2016
  12. 1/9 status: rename long-format print routinesJeff Hostetler, Aug 5, 2016
  13. 4/9 status: collect per-file data for --porcelain=v2Jeff Hostetler, Aug 5, 2016
  14. Junio C HamanoAug 5, 2016
  15. Johannes SchindelinAug 7, 2016
  16. Eric WongAug 7, 2016
  17. Junio C HamanoAug 8, 2016
  18. 5/9 status: print per-file porcelain v2 status dataJeff Hostetler, Aug 5, 2016
  19. Junio C HamanoAug 5, 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.