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

Re: [PATCH] tests: turn on test-lint-shell-syntax by default

From
Junio C Hamano <gitster@pobox.com>
Date
Jan 27, 2013, 17:15 UTC
Message-ID
<7vham2y2bs.fsf@alter.siamese.dyndns.org>
In-Reply-To
<20130127093121.GA4228@elie.Belkin>
Jonathan Nieder <jrnieder@gmail.com> writes:
Show 13 quoted lines
> ...
> With the above definition of "which", the only sign of a mistake would
> be some extra output to stderr (which is quelled when running tests in
> the normal way).  The "exit" is caught by the subshell and just makes
> the "if" condition false.
>
> That's not so terrible --- it could still dissuade new test authors
> from using "which".  The downside I'd worry about is that it provides
> a false sense of security despite not catching problems ...
> ...
> In the end the analysis that works best would probably involve a
> full-fledged shell script parser.  Something like "sparse", except for
> shell command language.
Exactly.

That is why I keep saying that whole test-lint-shell-syntax should stay outside the default until it gets more robust by becoming a reasonable shell parser; it may not necessarily have to become "full" parser though.

As we discourage the use of tricky features of the language like eval in individual test scripts to implement their own mini test framework, the "something like sparse" parser may initialy start small and still be useful; for example it can learn to exclude anything inside <<HERE_DOCUMENT from getting inspected.

Previous: Junio C Hamano
Message 19 of 19 in “tests: turn on test-lint-shell-syntax by default”
  1. tests: turn on test-lint-shell-syntax by defaultTorsten Bögershausen, Jan 12, 2013
  2. Junio C HamanoJan 12, 2013
  3. Torsten BögershausenJan 13, 2013
  4. Matt KraaiJan 13, 2013
  5. Jonathan NiederJan 13, 2013
  6. Junio C HamanoJan 13, 2013
  7. Torsten BögershausenJan 15, 2013
  8. Junio C HamanoJan 15, 2013
  9. Torsten BögershausenJan 26, 2013
  10. Junio C HamanoJan 26, 2013
  11. Torsten BögershausenJan 27, 2013
  12. Jonathan NiederJan 27, 2013
  13. Torsten BögershausenJan 27, 2013
  14. Junio C HamanoJan 27, 2013
  15. Junio C HamanoJan 27, 2013
  16. Torsten BögershausenFeb 5, 2013
  17. Junio C HamanoFeb 5, 2013
  18. Junio C HamanoFeb 5, 2013
  19. Junio C HamanoJan 27, 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.