From mboxrd@z Thu Jan 1 00:00:00 1970 Path: main.gmane.org!not-for-mail From: Newsgroups: gmane.emacs.devel Subject: RE: vc-state always calls heuristic function Date: Wed, 24 Nov 2004 12:08:14 +0100 Message-ID: <1B3ACCFD5694A94DBA4E231402B0E9ED57AE66@mucmail1.sdm.de> NNTP-Posting-Host: deer.gmane.org Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: quoted-printable X-Trace: sea.gmane.org 1101294599 27370 80.91.229.6 (24 Nov 2004 11:09:59 GMT) X-Complaints-To: usenet@sea.gmane.org NNTP-Posting-Date: Wed, 24 Nov 2004 11:09:59 +0000 (UTC) Cc: monnier@iro.umontreal.ca, emacs-devel@gnu.org Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Wed Nov 24 12:09:52 2004 Return-path: Original-Received: from lists.gnu.org ([199.232.76.165]) by deer.gmane.org with esmtp (Exim 3.35 #1 (Debian)) id 1CWv1z-0008PZ-00 for ; Wed, 24 Nov 2004 12:09:52 +0100 Original-Received: from localhost ([127.0.0.1] helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.33) id 1CWvB8-0005z8-J8 for ged-emacs-devel@m.gmane.org; Wed, 24 Nov 2004 06:19:18 -0500 Original-Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.33) id 1CWv9x-0005w5-KZ for emacs-devel@gnu.org; Wed, 24 Nov 2004 06:18:05 -0500 Original-Received: from exim by lists.gnu.org with spam-scanned (Exim 4.33) id 1CWv9w-0005vb-Dd for emacs-devel@gnu.org; Wed, 24 Nov 2004 06:18:04 -0500 Original-Received: from [199.232.76.173] (helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.33) id 1CWv9w-0005vJ-8S for emacs-devel@gnu.org; Wed, 24 Nov 2004 06:18:04 -0500 Original-Received: from [192.76.162.229] (helo=world1.sdm.de) by monty-python.gnu.org with esmtp (Exim 4.34) id 1CWv0e-0008Nf-Uw; Wed, 24 Nov 2004 06:08:29 -0500 Original-Received: from localhost ([127.0.0.1] helo=world1.sdm.de) by world1.sdm.de (MTA) via esmtp id 1CWv0e-0005NR-4B; Wed, 24 Nov 2004 12:08:28 +0100 Original-Received: from mucns1.muc.sdm.de ([193.102.180.22]) by world1.sdm.de (MTA) via esmtp id 1CWv0R-0005Mj-RU; Wed, 24 Nov 2004 12:08:15 +0100 Original-Received: by mucns1.muc.sdm.de (MTA) via esmtp from localhost ([127.0.0.1] helo=sdmmail1.sdm.de) id 1CWv0R-0001RR-Pi; Wed, 24 Nov 2004 12:08:15 +0100 Original-Received: from mucmail1.sdm.de ([193.102.180.175]) by sdmmail1.sdm.de with Microsoft SMTPSVC(6.0.3790.0); Wed, 24 Nov 2004 12:08:14 +0100 X-MimeOLE: Produced By Microsoft Exchange V6.5.7226.0 Content-class: urn:content-classes:message X-MS-Has-Attach: X-MS-TNEF-Correlator: Thread-Topic: vc-state always calls heuristic function Thread-Index: AcTSFBnFyZlG0IzFRJC3ZmXPgP1tjgAAPaGAAAAvokA= Original-To: , X-OriginalArrivalTime: 24 Nov 2004 11:08:14.0965 (UTC) FILETIME=[E4E62250:01C4D215] X-BeenThere: emacs-devel@gnu.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: "Emacs development discussions." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Original-Sender: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Errors-To: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Xref: main.gmane.org gmane.emacs.devel:30315 X-Report-Spam: http://spam.gmane.org/gmane.emacs.devel:30315 klaus.berndl@sdm.de wrote: > Thanks a lot for this detailed explanation, Andre!! > No i understand... ^ Typo...Must be "Now" instead of "No" ! ;-) >=20 > If i have understood you right - there is currently no really > acceptable way (concering performance) to display in a file-browser > icons which always reflect the real (not heuristic) state of a file, > right? >=20 > Ciao, > Klaus >=20 > Andre Spiegel wrote: >> On Wed, 2004-11-24 at 09:39 +0100, klaus.berndl@sdm.de wrote: >>=20 >>> Hmm, now i'm confused... ECB needs a function how to get the >>> VC-state. Well, the user can customize which function ECB should >>> use. But if he should not use `vc-recompute-state' how he should >>> get fresh-but-slow state?? If only vc-state is used then tweaking >>> vc-cvs-stay-local wil never take effect but vc-state always call >>> the heursitic backend-function (and vc-cvs-state-heuristic also >>> never uses vc-cvs-stay-local)... Would it better to use the backend >>> function itself - so vc-cvs-state when a user wants fresh state >>> (ECB allows to specify different "get-state"-functions for >>> different backends...)??=20 >>=20 >> VC/CVS actually does it this way: When you visit a file, it always >> uses just the heuristic to get the state (comparing file times), >> regardless of the setting of vc-cvs-stay-local. This is because the >> "fresh-but-slow" state is determined by calling "cvs status" on the >> file, and this was deemed unacceptably slow if done at visiting time >> under any conditions.=20 >>=20 >> The state is updated by calling vc-recompute-state prior to >> vc-next-action (C-x v v). IF vc-cvs-stay-local is nil, then this >> does in fact call "cvs status" to get the "fresh-but-slow-state", >> but if vc-cvs-stay-local is t, then it just compares the file times >> again.=20 >>=20 >> The bottom line for you is this: If you use vc-state to get the >> version control state, then you get the same policy that VC uses. I >> don't see any harm if you let people use vc-recompute-state as a >> replacement function, but then (a) people must make sure to set >> vc-cvs-stay-local to nil, and (b) fetching the state over the network >> under all conditions was deemed unacceptably slow in VC, and perhaps >> it's the same for your problem as well. >>=20 >> You should NEVER call vc-cvs-state or vc-cvs-state-heuristic directly >> however, because that would mess up VC's caching of these values in >> the vc-state property.=20 >>=20 >> All things considered, I'd say stick with the vc-state function, and >> educate your users how to tweak its behaviour via vc-cvs-stay-local. >=20 >=20 >=20 > _______________________________________________ > Emacs-devel mailing list > Emacs-devel@gnu.org > http://lists.gnu.org/mailman/listinfo/emacs-devel