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

Re: [RFC][PATCH] Print the usage string on stdout instead of stderr.

From
Michael J Gruber <git@drmicha.warpmail.net>
Date
May 17, 2010, 11:46 UTC
Message-ID
<4BF12C96.9030802@drmicha.warpmail.net>
In-Reply-To
<878w7ieu4p.fsf@thor.thematica.it>
Giuseppe Scrivano venit, vidit, dixit 17.05.2010 11:48:
> Hello,
> 
> I have noticed that the -h flag uses stderr to print the usage string,
> is there any reason for it?

As a general rule, regular output goes to stdout and error reports to stderr.

Now, usage messages are displayed on specific request (-h) as well as when a command is used with wrong arguments. So the classification depends on the use case! But I reckon that even with '-h', usage strings are not exactly "regular output", so stderr looks more natural to me.

More importantly, callers expect error messages on stderr, such as usage with wrong arguments. I don't think scripts would call commands with '-h', and if they do they do so on purpose and can parse stderr, knowing there is no stdout in this case.

Michael
P.S.: I guess this means NACK from me FWIIW.
Show 6 quoted lines
> 
> The small patch I have attached changes -h to print on stdout.
> 
> Thanks,
> Giuseppe
> 
Previous: Giuseppe ScrivanoNext: Miles Bader
Message 2 of 14 in “Print the usage string on stdout instead of stderr.”
  1. Giuseppe ScrivanoMay 17, 2010
  2. Michael J GruberMay 17, 2010
  3. Miles BaderMay 17, 2010
  4. Michael J GruberMay 17, 2010
  5. Miles BaderMay 17, 2010
  6. Giuseppe ScrivanoMay 17, 2010
  7. Tay Ray ChuanMay 17, 2010
  8. Giuseppe ScrivanoMay 17, 2010
  9. Michael J GruberMay 17, 2010
  10. Giuseppe ScrivanoMay 17, 2010
  11. Michael J GruberMay 18, 2010
  12. Giuseppe ScrivanoMay 24, 2010
  13. Michael J GruberMay 25, 2010
  14. Print the usage string on stdout instead of stderr.Giuseppe Scrivano, May 25, 2010

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.