Re: add non-option reordering to in-tree getopt_long

From: Michael Paquier <michael(at)paquier(dot)xyz>
To: Nathan Bossart <nathandbossart(at)gmail(dot)com>
Cc: Kyotaro Horiguchi <horikyota(dot)ntt(at)gmail(dot)com>, noah(at)leadboat(dot)com, pgsql-hackers(at)postgresql(dot)org
Subject: Re: add non-option reordering to in-tree getopt_long
Date: 2023-07-14 05:02:28
Message-ID: ZLDW5HjNS1Ys43xP@paquier.xyz
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

On Thu, Jul 13, 2023 at 09:38:42PM -0700, Nathan Bossart wrote:
> I did notice this, but I had the opposite reaction.

Ahah, well ;)

> Take the following examples of client programs that accept one non-option:
>
> ~$ pg_resetwal a b c
> pg_resetwal: error: too many command-line arguments (first is "b")
> pg_resetwal: hint: Try "pg_resetwal --help" for more information.
>
> Yet pg_ctl gives:
>
> ~$ pg_ctl start a b c
> pg_ctl: too many command-line arguments (first is "start")
> Try "pg_ctl --help" for more information.
>
> In this example, isn't "a" the first extra non-option that should be
> reported?

Good point. This is interpreting "first" as being the first option
that's invalid. Here my first impression was that pg_ctl got that
right, where "first" refers to the first subcommand that would be
valid. Objection withdrawn.
--
Michael

In response to

Responses

Browse pgsql-hackers by date

  From Date Subject
Next Message Martin Butter 2023-07-14 05:53:14 16beta2 SQL parser: different defaults on absent_on_null
Previous Message Michael Paquier 2023-07-14 04:49:22 Re: Autogenerate some wait events code and documentation