git@vger.kernel.org mailing list mirror (one of many)
 help / color / mirror / code / Atom feed
From: "Eric N. Vander Weele" <ericvw@gmail.com>
To: Junio C Hamano <gitster@pobox.com>
Cc: git@vger.kernel.org
Subject: Re: [PATCH] status: teach "status --short" to respect "--show-stash"
Date: Thu, 7 Nov 2019 18:31:41 +0800	[thread overview]
Message-ID: <20191107103141.GA87008@helium> (raw)
In-Reply-To: <xmqq36f1wx6h.fsf@gitster-ct.c.googlers.com>

On Wed, Nov 06, 2019 at 11:33:42AM +0900, Junio C Hamano wrote:
> "Eric N. Vander Weele" <ericvw@gmail.com> writes:
> 
> > Enable printing the entries currently stashed away in the short format.
> > This prints the stash information after the path status to be symmetric
> > with "status --long --show-stash".
> >
> > Signed-off-by: Eric N. Vander Weele <ericvw@gmail.com>
> > ---
> >  Documentation/git-status.txt |  4 ++++
> >  wt-status.c                  | 17 +++++++++++++++++
> >  2 files changed, 21 insertions(+)
> >
> > diff --git a/Documentation/git-status.txt b/Documentation/git-status.txt
> > index 7731b45f07..c1afc3282c 100644
> > --- a/Documentation/git-status.txt
> > +++ b/Documentation/git-status.txt
> > @@ -244,6 +244,10 @@ If -b is used the short-format status is preceded by a line
> >  
> >      ## branchname tracking info
> >  
> > +If --show-stash is used the short-format status is followed by a line
> > +
> > +    ## stash: <n> (entry|entries)
> > +
> 
> Hmmmm.  Would readers misinterpret we are talking about a branch
> whose name is stash something?  I am not suggesting to change ##
> introducer to some random letters, which would break scripts even
> worse.

I could see where readers may misinterpret this as a branch name.  I
struggled coming up with something short while not being confusing and
thought the presence ':' followed by a space would be clear enough.

> Doesn't the Porcelain Format v1 call the same codepath as
> shortstatus?  We promise that its output never changes to support
> existing scripts, but now they will start seeing "## stash:" that
> they do not understand and barf?

I wasn't aware of the Porcelain formats in detail when originally
creating the patch - oops!  Naively I was following the same behavior as
'--branch' in the shortstatus code path.

Diving into this further, the Porcelain Format v1 does call the same
code path as shortstatus.  I see there is some handling in
builtin/commit.c for tweaking the behavior of the branch being showed.

The documentation indicates that the behavior never changes between Git
versions or based on user configuration.  'git status --porcelain=1'
will react to '--branch' but not when 'status.branch' is set to 'true',
which is congruent with the documentation.

> Isn't this information available to scripts that want to read from
> porcelain v2 output format (which is meant to be extensible by
> allowing easy-to-parse optional headers, which this stash thing
> exactly is).

It is not available in Porcelain Format v2... yet :).


I'm happy making '--show-stash' congruent with '--branch' in v1', which
is would be in line with documented behavior, displaying something in
v2 only, or both.  Let me know how you would like to proceed and I'll
rework the patch accordingly.

  reply	other threads:[~2019-11-07 10:31 UTC|newest]

Thread overview: 5+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2019-11-04 10:03 [PATCH] status: teach "status --short" to respect "--show-stash" Eric N. Vander Weele
2019-11-06  2:33 ` Junio C Hamano
2019-11-07 10:31   ` Eric N. Vander Weele [this message]
2019-11-07 11:09     ` Junio C Hamano
2019-11-08  3:24       ` Eric N. Vander Weele

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

  List information: http://vger.kernel.org/majordomo-info.html

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

  git send-email \
    --in-reply-to=20191107103141.GA87008@helium \
    --to=ericvw@gmail.com \
    --cc=git@vger.kernel.org \
    --cc=gitster@pobox.com \
    /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.
Code repositories for project(s) associated with this public inbox

	https://80x24.org/mirrors/git.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).