GNU bug report logs - #74243
[PATCH] Speed up vc-hg-state by treating ignored files as unregistered

Previous Next

Package: emacs;

Reported by: Spencer Baugh <sbaugh <at> janestreet.com>

Date: Thu, 7 Nov 2024 17:42:01 UTC

Severity: normal

Tags: patch

Done: Sean Whitton <spwhitton <at> spwhitton.name>

Bug is archived. No further changes may be made.

Full log


View this message in rfc822 format

From: help-debbugs <at> gnu.org (GNU bug Tracking System)
To: Spencer Baugh <sbaugh <at> janestreet.com>
Subject: bug#74243: closed (Re: bug#74243: [PATCH] Speed up vc-hg-state by
 treating ignored files as unregistered)
Date: Fri, 29 Nov 2024 23:46:02 +0000
[Message part 1 (text/plain, inline)]
Your bug report

#74243: [PATCH] Speed up vc-hg-state by treating ignored files as unregistered

which was filed against the emacs package, has been closed.

The explanation is attached below, along with your original report.
If you require more details, please reply to 74243 <at> debbugs.gnu.org.

-- 
74243: https://debbugs.gnu.org/cgi/bugreport.cgi?bug=74243
GNU Bug Tracking System
Contact help-debbugs <at> gnu.org with problems
[Message part 2 (message/rfc822, inline)]
From: Sean Whitton <spwhitton <at> spwhitton.name>
To: Spencer Baugh <sbaugh <at> janestreet.com>
Cc: 74243-close <at> debbugs.gnu.org, Dmitry Gutov <dmitry <at> gutov.dev>
Subject: Re: bug#74243: [PATCH] Speed up vc-hg-state by treating ignored
 files as unregistered
Date: Sat, 30 Nov 2024 07:45:27 +0800
Hello,

On Fri 29 Nov 2024 at 07:43am -05, Spencer Baugh via "Bug reports for GNU Emacs, the Swiss army knife of text editors" wrote:

> On Fri, Nov 29, 2024, 3:17 AM Sean Whitton <spwhitton <at> spwhitton.name> wrote:
>
>  Spencer, do you mind if I close this bug?  It's clear that we could be
>  doing something better here, but given the news from Hg upstream, we
>  probably don't want to make changes along the lines of your original
>  patch.
>
> Agreed, go ahead.

Coolio, thanks.

-- 
Sean Whitton

[Message part 3 (message/rfc822, inline)]
From: Spencer Baugh <sbaugh <at> janestreet.com>
To: bug-gnu-emacs <at> gnu.org
Subject: [PATCH] Speed up vc-hg-state by treating ignored files as unregistered
Date: Thu, 07 Nov 2024 12:41:47 -0500
[Message part 4 (text/plain, inline)]
Tags: patch


The most significant slow component of "hg status" is parsing the
.hgignore file.  If we pass -mardc instead of -A to hg status, hg
doesn't list ignored or untracked files, so it skips parsing the
.hgignore.  On my large repo, this brings "hg status" from 140ms to
20ms.

For vc-hg-state, the distinction doesn't matter: nothing using the
output of vc-hg-state has significantly different behavior for ignored
files vs unregistered files:
- vc-dir-clean-files and vc-dir-recompute-file-state call vc-hg-state,
  but will never see an ignored file anyway since vc-dir shouldn't list
  ignored files for hg.
- vc-next-action checks 'ignored, but it's OK to take the
  'unregistered path instead; it will either fail when calling hg, or
  succeed.
- Other users of vc-state don't differ between 'ignored and
  'unregistered

* lisp/vc/vc-hg.el (vc-hg-state-slow): Treat ignored files as
unregistered.

In GNU Emacs 29.2.50 (build 6, x86_64-pc-linux-gnu, X toolkit, cairo
 version 1.15.12, Xaw scroll bars) of 2024-11-06 built on
 igm-qws-u22796a
Repository revision: 18ed746717c1c80e5cc9d9dc85b6e1f4013a1cec
Repository branch: emacs-29
Windowing system distributor 'The X.Org Foundation', version 11.0.12011000
System Description: Rocky Linux 8.10 (Green Obsidian)

Configured using:
 'configure --with-x-toolkit=lucid --without-gpm --without-gconf
 --without-selinux --without-imagemagick --with-modules --with-gif=no
 --with-tree-sitter --with-native-compilation=aot
 PKG_CONFIG_PATH=/usr/local/home/garnish/libtree-sitter/0.22.6-1/lib/pkgconfig/'

[0001-Speed-up-vc-hg-state-by-treating-ignored-files-as-un.patch (text/patch, attachment)]

This bug report was last modified 176 days ago.

Previous Next


GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson.