From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!.POSTED!not-for-mail From: =?UTF-8?Q?G=C3=B6ktu=C4=9F?= Kayaalp Newsgroups: gmane.emacs.bugs Subject: bug#24082: 25.1; vc-dir for CVS repositories list all files as if from toplevel directory Date: Sat, 15 Oct 2016 20:26:03 +0300 Message-ID: <87funxcyms.fsf@xi.bootis> References: <874m7crwv4.fsf@xi.bootis> NNTP-Posting-Host: blaine.gmane.org Mime-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable X-Trace: blaine.gmane.org 1476551555 28616 195.159.176.226 (15 Oct 2016 17:12:35 GMT) X-Complaints-To: usenet@blaine.gmane.org NNTP-Posting-Date: Sat, 15 Oct 2016 17:12:35 +0000 (UTC) Cc: 24082@debbugs.gnu.org, dgutov@yandex.ru To: jca@wxcvbn.org (=?UTF-8?Q?J=C3=A9r=C3=A9mie_?= =?UTF-8?Q?Courr=C3=A8ges-Anglas?=) Original-X-From: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane.org@gnu.org Sat Oct 15 19:12:30 2016 Return-path: Envelope-to: geb-bug-gnu-emacs@m.gmane.org Original-Received: from lists.gnu.org ([208.118.235.17]) by blaine.gmane.org with esmtp (Exim 4.84_2) (envelope-from ) id 1bvSVL-0004xm-Us for geb-bug-gnu-emacs@m.gmane.org; Sat, 15 Oct 2016 19:12:16 +0200 Original-Received: from localhost ([::1]:52708 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1bvSVK-0002Hu-MY for geb-bug-gnu-emacs@m.gmane.org; Sat, 15 Oct 2016 13:12:14 -0400 Original-Received: from eggs.gnu.org ([2001:4830:134:3::10]:48936) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1bvSVD-0002Hn-OX for bug-gnu-emacs@gnu.org; Sat, 15 Oct 2016 13:12:09 -0400 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1bvSV8-0005VT-O6 for bug-gnu-emacs@gnu.org; Sat, 15 Oct 2016 13:12:07 -0400 Original-Received: from debbugs.gnu.org ([208.118.235.43]:54239) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1bvSV8-0005V8-Jq for bug-gnu-emacs@gnu.org; Sat, 15 Oct 2016 13:12:02 -0400 Original-Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1bvSV8-0005Lu-6B for bug-gnu-emacs@gnu.org; Sat, 15 Oct 2016 13:12:02 -0400 X-Loop: help-debbugs@gnu.org Resent-From: =?UTF-8?Q?G=C3=B6ktu=C4=9F?= Kayaalp Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Sat, 15 Oct 2016 17:12:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 24082 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: confirmed Original-Received: via spool by 24082-submit@debbugs.gnu.org id=B24082.147655150920552 (code B ref 24082); Sat, 15 Oct 2016 17:12:02 +0000 Original-Received: (at 24082) by debbugs.gnu.org; 15 Oct 2016 17:11:49 +0000 Original-Received: from localhost ([127.0.0.1]:60428 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1bvSUv-0005LQ-0H for submit@debbugs.gnu.org; Sat, 15 Oct 2016 13:11:49 -0400 Original-Received: from relay3-d.mail.gandi.net ([217.70.183.195]:40175) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1bvSUs-0005LG-M4 for 24082@debbugs.gnu.org; Sat, 15 Oct 2016 13:11:47 -0400 Original-Received: from mfilter23-d.gandi.net (mfilter23-d.gandi.net [217.70.178.151]) by relay3-d.mail.gandi.net (Postfix) with ESMTP id C48C5A80BE; Sat, 15 Oct 2016 19:11:45 +0200 (CEST) X-Virus-Scanned: Debian amavisd-new at mfilter23-d.gandi.net Original-Received: from relay3-d.mail.gandi.net ([IPv6:::ffff:217.70.183.195]) by mfilter23-d.gandi.net (mfilter23-d.gandi.net [::ffff:10.0.15.180]) (amavisd-new, port 10024) with ESMTP id D32A4BtNbIiq; Sat, 15 Oct 2016 19:11:43 +0200 (CEST) X-Originating-IP: 88.238.225.147 Original-Received: from localhost (unknown [88.238.225.147]) (Authenticated sender: self@gkayaalp.com) by relay3-d.mail.gandi.net (Postfix) with ESMTPSA id 5ECDFA80C4; Sat, 15 Oct 2016 19:11:42 +0200 (CEST) In-Reply-To: <87zim5u2oy.fsf@ritchie.wxcvbn.org> (jca@wxcvbn.org) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.2.x-3.x [generic] X-Received-From: 208.118.235.43 X-BeenThere: bug-gnu-emacs@gnu.org List-Id: "Bug reports for GNU Emacs, the Swiss army knife of text editors" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane.org@gnu.org Original-Sender: "bug-gnu-emacs" Xref: news.gmane.org gmane.emacs.bugs:124522 Archived-At: On 2016-10-15 16:06 +0200, jca@wxcvbn.org (J=C3=A9r=C3=A9mie Courr=C3=A8ges= -Anglas) wrote: [... snip ...] > You asked for the output of `cvs -fnq update', but in my tests the > actual command that is run seems to be `cvs -fnq update ./'. Re-using > your instructions in > https://debbugs.gnu.org/cgi/bugreport.cgi?bug=3D24082#33 > > --8<-- > ritchie /tmp/test$ cvs -fnq update ./ > M .//testfil > M .//subdir/subfil > -->8-- I see the expected output, i.e. without the leading `.//'. > The result looks like this in vc-dir: [... snip ...] > ./ > edited .//testfil > subdir/ > edited .//subdir/subfil > -->8-- Again I have no problems. > This happens for all the *local repos* I have on this machine (including > my mirrors of the OpenBSD source tree). > > Adding a few file-relative-name calls around `(match-string 1)' in > vc-cvs-after-dir-status helps getting a nicer formatting. See below. > However, there could be a nastier problem with remote repos. > > --8<-- > ritchie /tmp/test$ cvs -d jca@localhost:/tmp/cvsroot/ -fnq up > M testfil > M subdir/subfil > -->8-- > > All is well... note how the file names are not prefixed with `./'. > > --8<-- > ritchie /tmp/test$ cvs -d jca@localhost:/tmp/cvsroot/ -fnq up ./ > cvs server: conflict: testfil is modified but no longer in the repository > C testfil > M subdir/subfil > -->8-- > > Oops... cvs thinks what we want to run update from the cvs root > directory (which doesn't contain `testfil'). It does contain `testfil', when you `cvs import', it registers and commits all the files in the current tree (=E2=80=98ls -R /tmp/cvsroot/test= /=E2=80=99). I do not experience these problems, so maybe they've to do with the OpenBSD version of CVS (they have their own copy under http://cvsweb.openbsd.org/cgi-bin/cvsweb/src/gnu/usr.bin/cvs/ which doesn't seem to be up-to-date, and seems that they cherry-pick patches as NEWS and ChangeLog are 20 years old there). I think vc.el is supposed to display the state of the repo, not interpret it, though the its would know better than me. This is (and the initial =E2=80=98./=E2=80= =99) probably an issue of OpenBSD's fork of GNU CVS. > Here I modified the Root entries to point to localhost: > --8<-- > ritchie /tmp/test$ cat CVS/Root > jca@localhost:/tmp/cvsroot/ > ritchie /tmp/test$ cat subdir/CVS/Root > jca@localhost:/tmp/cvsroot/ > ritchie /tmp/test$ cvs -fnq up > M testfil > M subdir/subfil > ritchie /tmp/test$ cvs -fnq up ./ > cvs server: conflict: testfil is modified but no longer in the repository > C testfil > M subdir/subfil > -->8-- > > vc-dir shows: > --8<-- > VC backend : CVS > Working dir: /tmp/test/ > Repository : jca@localhost:/tmp/cvsroot/ > Module : test > > > ./ > conflict testfil > subdir/ > edited subdir/subfil > -->8-- > > So with `./', files in the current directory seem to be considered as if > we were at the root of the cvs repo root directory. Subdirectories seem > to be fine, vc-diff works fine on them. > > I can't see how the code would manage to pass `./' to cvs on my setup > and not on others. I don't know if more recent cvs(1) versions handle > `./' and remote repos in a nicer way. Probably the code passes =E2=80=98./=E2=80=99 on all setups but they just h= andle it fine. Your OpenBSD CVS (not OpenCVS, it's their re-implementation of CVS) is probably a bit divergent from mainstream CVS and thus these problems. I guess if you used mainstream CVS, it'd work OK. Maybe these need to be reported on OpenBSD bugtracker. I'm reluctant to trying to guess what CVS wants to way WRT file names, but I can work on it if that's considered a better approach. --=20 =C4=B0. V. G=C3=B6ktu=C4=9F Kayaalp PGP pubkey: