all messages for Emacs-related lists mirrored at yhetil.org
 help / color / mirror / code / Atom feed
* bug#66364: 29.1.50; vc-hg-registered/state are slow on directories of large repos
@ 2023-10-05 15:33 Spencer Baugh
  2023-10-05 15:36 ` Spencer Baugh
  0 siblings, 1 reply; 7+ messages in thread
From: Spencer Baugh @ 2023-10-05 15:33 UTC (permalink / raw)
  To: 66364


vc-hg-state (and vc-hg-registered, which calls vc-hg-state) are slow
when run on directories of large repos.  In fact they're O(N) in the
number of files in the repo.

This is because vc-hg-state-slow runs "hg status" on directories in a
mode which lists all the files in the directory, and then it parses that
list.  Which is pointlessly slow.

However, Hg (like git) does not actually track directories.  So in the
end vc-hg-state on a directory should always be returning 'unregistered,
which matches the existing behavior of vc-hg (vc-hg-registered always
returned nil for directories) and is much faster.  (It also matches what
vc-git does.)

A patch to do this will follow





^ permalink raw reply	[flat|nested] 7+ messages in thread

end of thread, other threads:[~2023-10-14 17:02 UTC | newest]

Thread overview: 7+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2023-10-05 15:33 bug#66364: 29.1.50; vc-hg-registered/state are slow on directories of large repos Spencer Baugh
2023-10-05 15:36 ` Spencer Baugh
2023-10-05 16:09   ` Dmitry Gutov
2023-10-05 16:19     ` Spencer Baugh
2023-10-05 17:06       ` Dmitry Gutov
2023-10-13  1:09         ` sbaugh
2023-10-14 17:02           ` Dmitry Gutov

Code repositories for project(s) associated with this external index

	https://git.savannah.gnu.org/cgit/emacs.git
	https://git.savannah.gnu.org/cgit/emacs/org-mode.git

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.