unofficial mirror of bug-gnu-emacs@gnu.org 
 help / color / mirror / code / Atom feed
From: Dmitry Gutov <dmitry@gutov.dev>
To: Spencer Baugh <sbaugh@janestreet.com>, Eli Zaretskii <eliz@gnu.org>
Cc: 63470@debbugs.gnu.org
Subject: bug#63470: [PATCH] Use faster option for running vc-hg status
Date: Fri, 12 May 2023 23:10:05 +0300	[thread overview]
Message-ID: <d4b856e7-5e1e-0a2e-62b5-3da6eaacea5a@gutov.dev> (raw)
In-Reply-To: <ier4johfhl6.fsf@janestreet.com>

On 12/05/2023 22:57, Spencer Baugh wrote:
>> And why cannot we detect the version and dispatch on that, instead of
>> doing this unconditionally?
> hg --version takes a quarter of a second on my machine, which itself
> wipes out a lot of the performance benefit.  We could cache it, but it's
> not clear to me how to do that correctly: there could be different hg
> binaries in different directories, or over TRAMP, or other such things.
> 
> I could add a user option to revert to the old behavior, if you want.

We could cache it like we do with vc-git--program-version. That's a 
simple memoization that doesn't take the host into account (though that 
could be implemented, too).

But it'd really make things easier if we're just allowed to rely on some 
new enough versions of Git and Hg.

> (It would be nice if vc was available on ELPA, then maybe we could just
> tell users of old mercurial versions to downgrade to an old version...)

I don't think so: "ELPA core" packages come from the master branch. 
Emacs 30 will come from it too. The only downgrade that will be 
available to the users of Emacs 30 is to revert to what they have 
bundled. And as soon as we make that change on master, that code will be 
gone.





  reply	other threads:[~2023-05-12 20:10 UTC|newest]

Thread overview: 17+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2023-05-12 19:28 bug#63470: [PATCH] Use faster option for running vc-hg status Spencer Baugh
2023-05-12 19:43 ` Eli Zaretskii
2023-05-12 19:57   ` Spencer Baugh
2023-05-12 20:10     ` Dmitry Gutov [this message]
2023-05-13  5:54       ` Eli Zaretskii
2023-05-16 20:39         ` Spencer Baugh
2023-05-17 11:39           ` Eli Zaretskii
2023-05-17 11:47             ` Spencer Baugh
2023-05-17 11:55               ` Eli Zaretskii
2023-05-22 17:58                 ` Spencer Baugh
2023-05-22 22:33                   ` Dmitry Gutov
2023-05-18 23:48           ` Dmitry Gutov
2023-05-19 14:34             ` Spencer Baugh
2023-05-22 22:33               ` Dmitry Gutov
2023-05-13  5:51     ` Eli Zaretskii
2023-05-12 20:06   ` Dmitry Gutov
2023-05-13  5:52     ` Eli Zaretskii

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: https://www.gnu.org/software/emacs/

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

  git send-email \
    --in-reply-to=d4b856e7-5e1e-0a2e-62b5-3da6eaacea5a@gutov.dev \
    --to=dmitry@gutov.dev \
    --cc=63470@debbugs.gnu.org \
    --cc=eliz@gnu.org \
    --cc=sbaugh@janestreet.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://git.savannah.gnu.org/cgit/emacs.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).