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

Re: [PATCH v2] pull: handle --log=<n>

From
Dennis Kaarsemaker <dennis@kaarsemaker.net>
Date
May 19, 2015, 21:49 UTC
Message-ID
<1432072167.14498.12.camel@kaarsemaker.net>
In-Reply-To
<xmqqfv6s6ygb.fsf@gitster.dls.corp.google.com>
On di, 2015-05-19 at 14:37 -0700, Junio C Hamano wrote:
Show 31 quoted lines
> Dennis Kaarsemaker <dennis@kaarsemaker.net> writes:
> 
> > I took a stab at this, adding a --tag option to test_commit and adding
> > the option to the test_commit calls that need it (or removing tests'
> > reliance on these tags where appropriate, or removing tests' workarounds
> > for dealing with these tags when they don't want them), and the result
> > is 59 files changed, 280 insertions(+), 281 deletions(-)
> >
> > A test run on master with GIT_TEST_LONG set causes 1138 calls to
> > test_commit on my system, of which 255 now use the --tag option
> > (measured with a really crude hack that INCR's some keys in redis at
> > appropriate points in test_commit).
> >
> > Is this interesting enough to turn into a proper patch series?
> 
> Wow.
> 
> A proper patch series would probably be
> 
>  [1/N]   Teach "test_commit --tag" and replace existing "test_commit"
>          with "test_commit --tag"
> 
>  [2-N/N] For all the test scripts, analyse and judge if they are
>          better off with the auto-generated tags (i.e. no change wrt
>          the result of 1/N) or tags that are created by the script
>          at strategic places only as needed, and convert those that
>          are better read without "test_commit --tag".
> 
> [1/N] would be mechanical and easy, but justifying the change in the
> remainder would be a lot of work and reviewing would be, too, and
> would require a good taste.
I've actually done it differently while implementing:
1) Make test_commit recognize --tags and stop creating tags unless
   specified
2) while ! prove --state=save,failed {
       Find and fix tests that now need --tags
   }

For the actual patch series I'll add -p the changes slightly differently:

1/N: Make test_commit recognize a --tags parameter but not change behaviour. 2/N - N-1/N: Add --tags where necesary (or other fixes as appropriate) N/N: Only write tags when --tags is passed to test_commit.

That way 'make test' will pass at every step.
Show 8 quoted lines
> Perhaps if we see two sample patches to see how it looks like, would
> that help us decide?
> 
> That is, the mechanical [1/N] and [2/N] for one of the test script
> that can do without --tag, and a sample "do not apply" patch to show
> "if we change 'test_commit --tag' to 'test_commit', the script t1234
> needs this many manual tagging by the caller, and it is not worth
> doing"?  I dunno.
I'll just send an entire patch series. It's not that much more work.
-- 
Dennis Kaarsemaker
www.kaarsemaker.net
Previous: Junio C HamanoNext: Junio C Hamano
Message 10 of 22 in “pull: handle --log=<n>”
  1. pull: handle --log=<n>Paul Tan, May 18, 2015
  2. Johannes SchindelinMay 18, 2015
  3. Junio C HamanoMay 18, 2015
  4. Johannes SchindelinMay 19, 2015
  5. Junio C HamanoMay 19, 2015
  6. Dennis KaarsemakerMay 19, 2015
  7. Stefan BellerMay 19, 2015
  8. Dennis KaarsemakerMay 19, 2015
  9. Junio C HamanoMay 19, 2015
  10. Dennis KaarsemakerMay 19, 2015
  11. Junio C HamanoMay 19, 2015
  12. Dennis KaarsemakerMay 19, 2015
  13. Junio C HamanoMay 19, 2015
  14. Junio C HamanoMay 20, 2015
  15. Dennis KaarsemakerMay 20, 2015
  16. Junio C HamanoMay 20, 2015
  17. Dennis KaarsemakerMay 20, 2015
  18. pull: handle --log=<n>Paul Tan, May 21, 2015
  19. Junio C HamanoMay 21, 2015
  20. Paul TanMay 22, 2015
  21. Paul TanMay 18, 2015
  22. Johannes SchindelinMay 18, 2015

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.