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

Re: RFC: two minor tweaks to check-ignore to help git-annex assistant

From
Junio C Hamano <gitster@pobox.com>
Date
Apr 8, 2013, 21:56 UTC
Message-ID
<7vhajgvg8h.fsf@alter.siamese.dyndns.org>
In-Reply-To
<20130408181311.GA14903@pacific.linksys.moosehall>
Adam Spiers <git@adamspiers.org> writes:
Show 14 quoted lines
> I already have a rough fix for the second issue, but I wanted to
> solicit feedback on the appropriate UI changes before proceeding much
> further.  Does something like the below patch seem reasonable, modulo
> the lack of tests?  In case the UI changes I am proposing are not
> clear from the patch, here's some example output from running it
> inside a clone of the git source tree:
>
>     $ git check-ignore -v -n foo.tar.{gz,bz2}
>     .gitignore:203:*.tar.gz foo.tar.gz
>     ::      foo.tar.bz2
>
> So the number of output fields does not change depending on whether
> the pattern matches or not, and any caller can determine whether it
> does simply by checking whether the first field is non-empty.

Haven't looked at the proposed patch very carefully, but the design looks sound. The above output screams "empty! nothing!", and I do not think there is any other way :: will show up in that position.

> Also, does it make sense to write a new test to accompany the fix to
> the first (streaming) issue?

Would it be tricky to write safely not to get stuck? You feed one line, stop feeding, while checking that the output has arrived, and then kill the whole thing? Feels somewhat yucky, but sounds doable.

Previous: Adam SpiersNext: Jeff King
Message 2 of 33 in “RFC: two minor tweaks to check-ignore to help git-annex assistant”
  1. Adam SpiersApr 8, 2013
  2. Junio C HamanoApr 8, 2013
  3. Jeff KingApr 8, 2013
  4. 1/5 check-ignore: move setup into cmd_check_ignore()Adam Spiers, Apr 11, 2013
  5. 2/5 check-ignore: allow incremental streaming of queries via --stdinAdam Spiers, Apr 11, 2013
  6. Jeff KingApr 11, 2013
  7. Adam SpiersApr 11, 2013
  8. Adam SpiersApr 11, 2013
  9. Jeff KingApr 11, 2013
  10. 3/5 Documentation: add caveats about I/O buffering for check-{attr,ignore}Adam Spiers, Apr 11, 2013
  11. Jeff KingApr 11, 2013
  12. 4/5 t0008: remove duplicated test fixture dataAdam Spiers, Apr 11, 2013
  13. 5/5 check-ignore: add -n / --non-matching optionAdam Spiers, Apr 11, 2013
  14. Jeff KingApr 11, 2013
  15. Adam SpiersApr 11, 2013
  16. 1/5 t0008: remove duplicated test fixture dataAdam Spiers, Apr 11, 2013
  17. 2/5 check-ignore: add -n / --non-matching optionAdam Spiers, Apr 11, 2013
  18. 3/5 check-ignore: move setup into cmd_check_ignore()Adam Spiers, Apr 11, 2013
  19. 4/5 check-ignore: allow incremental streaming of queries via --stdinAdam Spiers, Apr 11, 2013
  20. Jeff KingApr 11, 2013
  21. Adam SpiersApr 11, 2013
  22. Jeff KingApr 11, 2013
  23. Junio C HamanoApr 22, 2013
  24. Adam SpiersApr 24, 2013
  25. t0008: use named pipe (FIFO) to test check-ignore streamingAdam Spiers, Apr 29, 2013
  26. Aaron SchrabApr 11, 2013
  27. Adam SpiersApr 11, 2013
  28. 5/5 Documentation: add caveats about I/O buffering for check-{attr,ignore}Adam Spiers, Apr 11, 2013
  29. Junio C HamanoApr 11, 2013
  30. 5/5 Documentation: add caveats about I/O buffering for check-{attr,ignore}Adam Spiers, Apr 11, 2013
  31. Junio C HamanoApr 12, 2013
  32. Adam SpiersApr 12, 2013
  33. Jeff KingApr 11, 2013

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.