[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: vc-state-heuristic is gone
From: |
Eric S. Raymond |
Subject: |
Re: vc-state-heuristic is gone |
Date: |
Mon, 24 Nov 2014 03:33:10 -0500 |
User-agent: |
Mutt/1.5.21 (2010-09-15) |
David Kastrup <address@hidden>:
> > Affected back ends: SCCS, RCS, CVS, SVN, Bazaar. I've already tested
> > with RCS and any change in preformance is now so small that a human is
> > not capable of registering it.
>
> For local files, presumably. Both NFS and Tramp exist and are in use,
> however, so the "no cache" philosophy should likely not extend to
> operations which can be triggered repeatedly during keystrokes that do
> not explicitly invoke VC-based operations.
I hope I am parsing your last sentence correctly. You do not appear
to be suggesting anything about how VC should work, but making a general
observation about *other* modes that have local caching.
Matters have advanced significantly on my feature branch since the
email you are replying to. The following comment now lives in vc.el:
;;; Changes from the pre-25.1 API:
;;
;; - The 'editable' optional argument of vc-checkout is gone. The
;; upper level assumes that all files are checked out editable. This
;; moves closer to emulating modern non-locking behavior even on very
;; old VCSes.
;;
;; - vc-state-heuristic is gone. Previously defined in bzr, CVS,
;; RCS, and SCCS, it was an attempt to circumvent the slowness of
;; disk operations on older hardware (and in the case of bzr,
;; unreasonable slowness of older bzr versions). With modern hardware
;; the tradeoffs have changed; it's OK to go direct to disk, and by doing
;; so avoid various TOCTOU bugs and issues with what happens if you
;; perform version-control operations behind Emacs's back.
;;
;; - the vc-mistrust-permissions configuration variable is gone; the
;; code no longer relies on permissions except in one corner case where
;; CVS leavs no alternative (which was not gated by this variable). The
;; only affected back end was RCS.
;;
;; - the vc-stay-local-p function, and associated backend methods and
;; configuration variables (including repository-hostname), are
;; gone. Affects the CVS and SVN back ends, but had previously to
;; be half-disabled in the SVN back end anyway because of a
;; performance limitation in the SVN tools. This change disables
;; asynchronous diffs and asynchronous annotation in CVS and SVN,
;; but that's OK as we need to make that an upper-level capability
;; that extends across all backends.
;;
;; - The init-revision function and the default-initial-revision
;; variable are gone. These have't made sense on anything shipped
;; since RCS, and using them was a dumb stunt even on RCS.
;;
;; - The vc-register function and its backend implementations no longer
;; take a first optional revision argument, since on no system since
;; RCS has setting the initial revision been even possible, let alone
;; sane.
The next thing I'm going to look at is unifying the status-querying
functions.
--
<a href="http://www.catb.org/~esr/">Eric S. Raymond</a>
- vc-state-heuristic is gone, Eric S. Raymond, 2014/11/23
- Re: vc-state-heuristic is gone, David Kastrup, 2014/11/24
- Re: vc-state-heuristic is gone,
Eric S. Raymond <=
- Re: vc-state-heuristic is gone, David Kastrup, 2014/11/24
- Re: vc-state-heuristic is gone, Eric S. Raymond, 2014/11/24
- Re: vc-state-heuristic is gone, David Kastrup, 2014/11/24
- Re: vc-state-heuristic is gone, Eric S. Raymond, 2014/11/24
- Re: vc-state-heuristic is gone, Michael Albinus, 2014/11/24
- Testing the new VC code, Eric S. Raymond, 2014/11/24
- Re: Testing the new VC code, Steinar Bang, 2014/11/24
- Re: Testing the new VC code, Eric S. Raymond, 2014/11/24
- Re: Testing the new VC code, Yuri Khan, 2014/11/24
- Re: Testing the new VC code, Eric S. Raymond, 2014/11/24