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

Re: [PATCH] pretty format string support for reflog times

From
Jeff King <peff@peff.net>
Date
Jul 27, 2016, 17:39 UTC
Message-ID
<20160727173915.GA32219@sigill.intra.peff.net>
In-Reply-To
<xmqqwpk7vw30.fsf@gitster.mtv.corp.google.com>
On Wed, Jul 27, 2016 at 10:18:11AM -0700, Junio C Hamano wrote:
Show 21 quoted lines
> > Hrm. Since Ted was not cc'd, it is not clear to me whether this is
> > coincidental or in response to the thread over in
> >
> >   http://thread.gmane.org/gmane.comp.version-control.git/299201
> >
> > To summarize, I think the conclusion there was that we would go with at
> > least the 't' and 'r' formatters in the short term. The 'i/I' ones were
> > not something Ted cared about that much, I think, but they do make
> > things orthogonal with the other ident dates.
> 
> I forgot about that thread after it stalled without drawing
> conclusion, after Ted asked if anybody has a strong opinion
> and saw only one response to it at
> 
>   https://public-inbox.org/git/20160711164317.GB3890%40thunk.org/
> 
> So, what is the next step?  Apply
> 
>   https://public-inbox.org/git/20160710055402.32684-1-tytso%40mit.edu/
> 
> but exclude %g[iI] bits out of that patch while doing so?

After having thought about it, I'm inclined to leave in the "%gi". There's no real rationale for doing "%gr" and "%gt" and not "%gi" except "well, Ted didn't need it". And it does make it match the author and committer date-formatting (except for the 'd' formats, of course).

I do think with the new "unix" format in jk/reflog-date, the interface to the reflog code could be simplified; we don't need a function to pull out just the timestamp any more. Something like the diff below.

However, I see a few remaining issues with Ted's original:
  - the refactored get_reflog_message() tries to return NULL, but the
    return type of the function is void. Presumably this should just be
    "return"?
  - ditto, the new get_reflog_time_t returns NULL, but wants an unsigned
    long (though this function goes away with my squash below)
  - show_reflog_date can return NULL, but we blindly feed its return
    value to strbuf_addstr(). I'm not sure under what conditions it
    _would_ return NULL, but that would cause a segfault
  - there should probably be tests in t6006 for the new formats
  - my squash below cuts out the use of gm_time_t(). But I don't think
    it should be necessary, as the reflog timestamp should already be in
    GMT, I would think. But maybe I am missing something.

I actually think Phil's patch from today is a little cleaner for most of these, as it returns the values via out-parameters, and uses the return value for "did we get anything?".

-Peff
Previous: Junio C HamanoNext: Junio C Hamano
Message 6 of 20 in “pretty format string support for reflog times”
  1. pretty format string support for reflog timesPhil Pennock, Jul 27, 2016
  2. Phil PennockJul 27, 2016
  3. Jeff KingJul 27, 2016
  4. Phil PennockJul 27, 2016
  5. Junio C HamanoJul 27, 2016
  6. Jeff KingJul 27, 2016
  7. Junio C HamanoJul 27, 2016
  8. Jeff KingJul 27, 2016
  9. Junio C HamanoJul 27, 2016
  10. Jeff KingJul 27, 2016
  11. Jeff KingJul 27, 2016
  12. Phil PennockJul 27, 2016
  13. Jeff KingJul 27, 2016
  14. 0/2 t4205 style fixesJeff King, Jul 27, 2016
  15. 1/2 t4205: drop top-level &&-chainingJeff King, Jul 27, 2016
  16. 2/2 t4205: indent here documentsJeff King, Jul 27, 2016
  17. Junio C HamanoJul 27, 2016
  18. Jeff KingJul 27, 2016
  19. Phil PennockJul 27, 2016
  20. Jeff KingJul 27, 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.