From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 19218 invoked by alias); 17 Sep 2012 21:29:58 -0000 Mailing-List: contact zsh-workers-help@zsh.org; run by ezmlm Precedence: bulk X-No-Archive: yes List-Id: Zsh Workers List List-Post: List-Help: X-Seq: 30674 Received: (qmail 18523 invoked from network); 17 Sep 2012 21:29:45 -0000 X-Spam-Checker-Version: SpamAssassin 3.3.2 (2011-06-06) on f.primenet.com.au X-Spam-Level: X-Spam-Status: No, score=-1.9 required=5.0 tests=BAYES_00,RCVD_IN_DNSWL_NONE, SPF_HELO_PASS autolearn=ham version=3.3.2 Received-SPF: none (ns1.primenet.com.au: domain at bewatermyfriend.org does not designate permitted sender hosts) From: Frank Terbeck To: Seth House Cc: Ioannis Koutras , zsh-workers@zsh.org Subject: Re: vcs_info on a hg repository with a git subrepository; actionformats works ok, formats does not In-Reply-To: (Seth House's message of "Mon, 17 Sep 2012 12:53:29 -0700") References: <87boh4bt5l.fsf@ft.bewatermyfriend.org> <877grsbrz7.fsf@ft.bewatermyfriend.org> <87zk4oabam.fsf@ft.bewatermyfriend.org> <87vcfca9sa.fsf@ft.bewatermyfriend.org> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/24.2.50 (gnu/linux) Date: Mon, 17 Sep 2012 23:28:41 +0200 Message-ID: <87r4q09w52.fsf@ft.bewatermyfriend.org> MIME-Version: 1.0 Content-Type: text/plain X-Df-Sender: [pbs]NDMwNDQ0 [moving thread to -workers] Seth House wrote: > On Mon, Sep 17, 2012 at 9:57 AM, Seth House wrote: [...] >> The --debug flag is used to get hg to output the full sha. > > Relying on --debug here is not ideal. Something like this was bound to > happen eventually. Unfortunately, I don't believe there's a way to > retrieve all info of interest to VCS_Info with a single call to > Mercurial. (Invoking the Python interpreter is too slow to do more > than once while drawing the shell prompt.) Indeed. :-/ > I have done quite a bit of experimenting, searching, and asking on > this. > > I propose one of the following: > > 1) Alter the hg backend to work without the full 40-char hash. > > The ``hg id`` command will always return a unique hash. The only thing > the full hash is being used for in the hg backend is comparisons with > MQ patches and that can be changed to be a left-match instead. We can > document why the full hash isn't available and if users are expecting > 40-chars we can give an example of how to pad the value with spaces. > This changes existing behavior. > > 2) Continue using --debug and add a workaround for this issue. > > It's plausible that the output of interest will always appear at the > bottom of the debug output. Mercurial does have a > backward-compatibility policy for its output formats but this does not > extend to debug output (obviously). > > FWIW, my personal preference is the first option as I feel the 40-char > hash is rarely desired or useful in a shell prompt. > > Thoughts? Hm. Ideally, I'd like there to be the least possible impact on existing setups. But then and again having `--debug' in there was always bothering me a little. I'm undecided. I know, however, that I don't want to introduce another style again to make this optional. I'll think about it until tomorrow. If a user of the hg backend has a strong opinion on this, speak up. Regards, Frank -- In protocol design, perfection has been reached not when there is nothing left to add, but when there is nothing left to take away. -- RFC 1925