Re: [PATCH] Fix sloppy Getopt::Long.
- From
Junio C Hamano <gitster@pobox.com>
- Date
- May 5, 2009, 19:37 UTC
- Message-ID
- <7vfxfj1gu9.fsf@alter.siamese.dyndns.org>
- In-Reply-To
- <1241547374-6737-1-git-send-email-robbat2@gentoo.org>
"Robin H. Johnson" <robbat2@gentoo.org> writes:
> Getopt-Long v2.38 is much stricter about sloppy getopt usage. The > trailing pipe causes git-svn testcases to fail for all of the --stdin > argument calls.
I am not objecting at all; just asking for clarification.
> - { 'stdin|' => \$_stdin, %cmt_opts, %fc_opts, } ],
> + { 'stdin' => \$_stdin, %cmt_opts, %fc_opts, } ],Is this "pipe" supposed to be followed by an alternative spelling of the option, as in
'stdin|standard-input' => \$_stdin, ...
and is the sloppyness that it would be crazy to accept either --stdin or just -- (without actual option name) for this option?
Could an older version of Getopt::Long() have accepted
$ command --foo --bar - other args
to set $_stdin to true with that "sloppy" syntax? If so people could have relied on such a behaviour, which is a bit worrying.