All of lore.kernel.org
 help / color / mirror / Atom feed
From: Junio C Hamano <gitster@pobox.com>
To: Jeff King <peff@peff.net>
Cc: Andreas Krey <a.krey@gmx.de>, git@vger.kernel.org
Subject: Re: BUG: 'error: invalid key: pager.show_ref' on 'git show_ref'
Date: Fri, 06 Feb 2015 11:44:38 -0800	[thread overview]
Message-ID: <xmqqbnl6hljt.fsf@gitster.dls.corp.google.com> (raw)
In-Reply-To: <20150206193313.GA4220@peff.net> (Jeff King's message of "Fri, 6 Feb 2015 14:33:13 -0500")

Jeff King <peff@peff.net> writes:

> On Fri, Feb 06, 2015 at 01:45:28PM +0100, Andreas Krey wrote:
>
>>   $ git show_ref
>>   error: invalid key: pager.show_ref
>>   error: invalid key: alias.show_ref
>>   git: 'show_ref' is not a git command. See 'git --help'.
>> 
>> Apparently we need to squelch this message from
>> within git_config_get_* in this case?
> ...
> So it is not a new problem, but it is a bug that you
> cannot set pager config for such a command or alias.

Hmm, I think these are two separate issues.

 (1) you cannot define "alias.my_merge" because that is not a valid
     key.  We cannot add a new official subcommand "git c_m_d"
     because users cannot define "pager.c_m_d" for it for the same
     reason.

 (2) "git no-such-command" does not get these extraneous error
     messages, but "git no_such_command" does.

Solution to (1) would be to move to "alias.my_merge.command = ..."
and "pager.c_m_d.enabled = true".  But I do not think that would
solve (1) until we transition and start ignoring alias.my_merge
and pager.c_m_d, and I do not think of a way other than squelching
the messages to solve (1) during the transition period.

> I can think of a few possible paths forward:
>
>   1. Squelch the messages, and declare "show_ref" and friends
>      out-of-luck for pager config or aliases.
>
>   2. Relax the syntactic rules for config keys to allow more characters.
>      We cannot make this perfect (e.g., we cannot allow "." for reasons
>      of ambiguity), but I imagine we could cover most practical cases.
>
>      Note that we would need the matching loosening on the file-parsing
>      side.
>
>   3. Start phasing in pager.*.enabled (and I guess pager.*.command). We
>      would still do the lookup of pager.* for backwards compatibility,
>      but we would be careful to do so only when it is syntactically
>      valid. IOW, this looks like (1), except the path forward for
>      "show_ref" is to use the new, more robust, syntax.

I guess I ended up reaching the same conclusion; 3. with also
"alias.*.command" as the longer-term goal.

  reply	other threads:[~2015-02-06 19:44 UTC|newest]

Thread overview: 16+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2015-02-06 12:45 BUG: 'error: invalid key: pager.show_ref' on 'git show_ref' Andreas Krey
2015-02-06 19:33 ` Jeff King
2015-02-06 19:44   ` Junio C Hamano [this message]
2015-02-06 20:39     ` Jeff King
2015-02-10 19:45       ` [PATCH] config: add show_err flag to git_config_parse_key() Tanay Abhra
2015-02-11  0:27         ` Jeff King
2015-02-11 18:47           ` Junio C Hamano
2015-02-16  7:58             ` [PATCH v2] add a flag to supress errors in git_config_parse_key() Tanay Abhra
2015-02-18 19:02               ` Jeff King
2015-02-07  0:03     ` BUG: 'error: invalid key: pager.show_ref' on 'git show_ref' Mikael Magnusson
2015-02-07  5:01       ` Jeff King
2015-02-06 20:14   ` Junio C Hamano
2015-02-06 20:37     ` Jeff King
2015-02-06 22:17       ` Junio C Hamano
2015-02-06 22:27       ` Junio C Hamano
2015-02-07  4:52         ` Jeff King

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=xmqqbnl6hljt.fsf@gitster.dls.corp.google.com \
    --to=gitster@pobox.com \
    --cc=a.krey@gmx.de \
    --cc=git@vger.kernel.org \
    --cc=peff@peff.net \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.