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

Re: [PATCH] Fix sloppy Getopt::Long.

From
Robin H. Johnson <robbat2@gentoo.org>
Date
May 6, 2009, 16:13 UTC
Message-ID
<20090506161309.GC10702@curie-int>
In-Reply-To
<20090506064949.GB29479@dcvr.yhbt.net>
On Tue, May 05, 2009 at 11:49:49PM -0700, Eric Wong wrote:
Show 18 quoted lines
> Junio C Hamano <gitster@pobox.com> wrote:
> > "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.
> > >
> > > Signed-off-by: Robin H. Johnson <robbat2@gentoo.org>
> > 
> > Eric, I'll take this directly to my tree.  Ok?
> 
> The empty "" after the "|" was intended for the set-tree command to take
> a lone "-" as a parameter to also mean "--stdin".
> 
> The following should work, too, but I don't have time to test right now:
> 
> +			{ '' => \$_stdin, 'stdin' => \$_stdin,
> +			  %cmt_opts, %fc_opts, } ],

I confirm that it does correctly set the $_stdin variable (tested briefly).

Testcase: ===== use Getopt::Long qw/:config gnu_getopt no_ignore_case auto_abbrev/; my $_stdin; my $rc = GetOptions( 'stdin' => \$_stdin, '' => \$_stdin); printf "rc:%s s:%s\n",$rc,$_stdin; =====

-- 
Robin Hugh Johnson
Gentoo Linux Developer & Infra Guy
E-Mail     : robbat2@gentoo.org
GnuPG FP   : 11AC BA4F 4778 E3F6 E4ED  F38E B27B 944E 3488 4E85
Previous: Robin H. JohnsonNext: Junio C Hamano
Message 4 of 6 in “Fix sloppy Getopt::Long.”
  1. Fix sloppy Getopt::Long.Robin H. Johnson, May 5, 2009
  2. Junio C HamanoMay 5, 2009
  3. Robin H. JohnsonMay 5, 2009
  4. Robin H. JohnsonMay 6, 2009
  5. Junio C HamanoMay 6, 2009
  6. Robin H. JohnsonMay 8, 2009

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.