From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!.POSTED.blaine.gmane.org!not-for-mail From: Andrii Kolomoiets Newsgroups: gmane.emacs.bugs Subject: bug#38387: 27.0.50; [PATCH] vc-hg: use 'hg summary' to populate vc-dir headers Date: Thu, 28 Nov 2019 10:20:43 +0200 Message-ID: <426CF38F-9608-4FAF-A29A-8EF3D20D5DE2@gmail.com> References: Mime-Version: 1.0 (Mac OS X Mail 13.0 \(3601.0.10\)) Content-Type: multipart/mixed; boundary="Apple-Mail=_33222393-D5E6-4638-A9D3-399A154B8A7B" Injection-Info: blaine.gmane.org; posting-host="blaine.gmane.org:195.159.176.226"; logging-data="58766"; mail-complaints-to="usenet@blaine.gmane.org" To: 38387@debbugs.gnu.org Original-X-From: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane.org@gnu.org Thu Nov 28 09:21:22 2019 Return-path: Envelope-to: geb-bug-gnu-emacs@m.gmane.org Original-Received: from lists.gnu.org ([209.51.188.17]) by blaine.gmane.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.89) (envelope-from ) id 1iaF3C-000F3r-0t for geb-bug-gnu-emacs@m.gmane.org; Thu, 28 Nov 2019 09:21:22 +0100 Original-Received: from localhost ([::1]:46346 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1iaF3A-0003v2-As for geb-bug-gnu-emacs@m.gmane.org; Thu, 28 Nov 2019 03:21:20 -0500 Original-Received: from eggs.gnu.org ([2001:470:142:3::10]:43882) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1iaF2v-0003us-Aa for bug-gnu-emacs@gnu.org; Thu, 28 Nov 2019 03:21:06 -0500 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1iaF2s-0006Gc-D2 for bug-gnu-emacs@gnu.org; Thu, 28 Nov 2019 03:21:05 -0500 Original-Received: from debbugs.gnu.org ([209.51.188.43]:50607) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1iaF2s-0006Fj-55 for bug-gnu-emacs@gnu.org; Thu, 28 Nov 2019 03:21:02 -0500 Original-Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1iaF2s-0002VC-1g for bug-gnu-emacs@gnu.org; Thu, 28 Nov 2019 03:21:02 -0500 X-Loop: help-debbugs@gnu.org Resent-From: Andrii Kolomoiets Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Thu, 28 Nov 2019 08:21:01 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 38387 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: patch Original-Received: via spool by 38387-submit@debbugs.gnu.org id=B38387.15749292539576 (code B ref 38387); Thu, 28 Nov 2019 08:21:01 +0000 Original-Received: (at 38387) by debbugs.gnu.org; 28 Nov 2019 08:20:53 +0000 Original-Received: from localhost ([127.0.0.1]:56579 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1iaF2j-0002UN-EM for submit@debbugs.gnu.org; Thu, 28 Nov 2019 03:20:53 -0500 Original-Received: from mail-lj1-f173.google.com ([209.85.208.173]:44987) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1iaF2h-0002U3-Sq for 38387@debbugs.gnu.org; Thu, 28 Nov 2019 03:20:52 -0500 Original-Received: by mail-lj1-f173.google.com with SMTP id c19so458832lji.11 for <38387@debbugs.gnu.org>; Thu, 28 Nov 2019 00:20:51 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=from:mime-version:subject:date:references:to:in-reply-to:message-id; bh=nLqi8Om0w2g24YZ+vN7avlQ0XHykkKmYlBgx/302PYE=; b=qBYbbpod0JYtiLfdmi3y1//Y2IYlQSu9Gbh6iI+KyH5tS4BQkyxJp1j0RkakcobqrB tgNpCo0Ft6MglcLAQ3e5efirnhyV/ucZHtfK724jm54FeUz7oADMHaxSXeMWsVMqTgah uOdzaJL35nVnAS0huN1WFAqwj36V/deECN267y1wm/PJc59D5gZrjbrP1UN+Vxq2MzRO Cy/iA+JXtacaC3vc7BeprFxEI0nVoiofMHxAmZ+yIjw3zRBgpuFzsoGQFpGrGwzlh4Uk YeHAT3Yz+huukWHCHDRm3BSdthAbsh6iB54EcX1hSn4yJd6uS5krH+l5r1NbWYxepkng ciEA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:mime-version:subject:date:references:to :in-reply-to:message-id; bh=nLqi8Om0w2g24YZ+vN7avlQ0XHykkKmYlBgx/302PYE=; b=YxQe84uw/o6LmIpAFuwGMjlCj5qzuLh2fTC3zuxFwxTqN+Y+K5loJXBA3P2n3ynfCL Nu9BfNeI6ZDgOO24t4gqd3jgzNBuQI2M9xy+PH9jR8j2BgWAygDVKnDUdtQBGEZ76RSr 0cBM0NrA/Y8OL5sqjsc6dnrwaa+9ti+CqqMNlTkAFhyKS8mLf1JlAy39RDns6xilqp44 8tpH4Ijr5xDulSTABj6t9KSJZXUnpBZvnmMJDYPcvTfVASnMgjffAyLJjIlftevHdsV/ /gP6/9uIYGrXJy6wtC6LuBuxqkE2sxC4BsvWYlCQ0FuXCODtYukGnhQRN7+liW1Aujjz 7wDw== X-Gm-Message-State: APjAAAX1wzCvbhaYiEql1131vUP/0MARnvkvI8OiGR3fdGdJMts7OUpU sXotYWLjWzA9bcyvpg3aZ6kU666l X-Google-Smtp-Source: APXvYqx0S8xtn9ir/RcAJdwGL6X2lg7wBv0GyNsur+4PNDB2rz1KF3cj0zXJEFszoEYAoD5iD2wiGg== X-Received: by 2002:a2e:740d:: with SMTP id p13mr9197235ljc.25.1574929245464; Thu, 28 Nov 2019 00:20:45 -0800 (PST) Original-Received: from [10.1.1.147] (188-42-207-82.ip.ukrtel.net. [82.207.42.188]) by smtp.gmail.com with ESMTPSA id z23sm8227801ljh.35.2019.11.28.00.20.44 for <38387@debbugs.gnu.org> (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Thu, 28 Nov 2019 00:20:44 -0800 (PST) In-Reply-To: X-Mailer: Apple Mail (2.3601.0.10) 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: 209.51.188.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:172583 Archived-At: --Apple-Mail=_33222393-D5E6-4638-A9D3-399A154B8A7B Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset=us-ascii Patch is slightly modified to match all whitespaces after ':' to handle = possible extra spaces in 'summary' output. --Apple-Mail=_33222393-D5E6-4638-A9D3-399A154B8A7B Content-Disposition: attachment; filename=0001-vc-hg-use-hg-summary-to-populate-extra-vc-dir-header.patch Content-Type: application/octet-stream; x-unix-mode=0644; name="0001-vc-hg-use-hg-summary-to-populate-extra-vc-dir-header.patch" Content-Transfer-Encoding: quoted-printable =46rom=2077350d57f718efbf96d4c8deb59b80e22c2ebea7=20Mon=20Sep=2017=20= 00:00:00=202001=0AFrom:=20Andrii=20Kolomoiets=20=0A= Date:=20Tue,=2026=20Nov=202019=2017:10:29=20+0200=0ASubject:=20[PATCH]=20= vc-hg:=20use=20'hg=20summary'=20to=20populate=20vc-dir=20headers=0A=0ABy=20= invoking=20single=20'summary'=20command=20we=20can=20get=20more=20info=20= about=0Arepository=20state:=20parent=20revisions,=20current=20branch,=20= tags,=20bookmarks,=0Acommit=20status,=20available=20updates=20and=20= phase.=0A=0A*=20lisp/vc/vc-hg.el=20(vc-hg-dir-extra-headers):=20Use=20= 'hg=20summary'=20command.=0A(vc-hg-dir-extra-header):=20Remove=20unused=20= function.=0A*=20etc/NEWS:=20Mention=20changes=20to=20vc-hg.el=0A=0Adiff=20= --git=20a/etc/NEWS=20b/etc/NEWS=0Aindex=20d3331daf17..f7abfb1680=20= 100644=0A---=20a/etc/NEWS=0A+++=20b/etc/NEWS=0A@@=20-956,6=20+956,10=20= @@=20with=20conflicts=20existed=20in=20earlier=20versions=20of=20Emacs,=20= but=20incorrectly=0A=20never=20detected=20a=20conflict=20due=20to=20= invalid=20assumptions=20about=20cached=0A=20values.=0A=20=0A+---=0A+***=20= 'vc-hg'=20now=20uses=20'hg=20summary'=20command=20to=20populate=20extra=20= 'vc-dir'=0A+headers.=0A+=0A=20+++=0A=20***=20The=20Hg=20(Mercurial)=20= back-end=20now=20supports=20'vc-region-history'.=0A=20The=20'C-x=20v=20= h'=20command=20now=20works=20in=20buffers=20that=20visit=20files=20= controlled=0Adiff=20--git=20a/lisp/vc/vc-hg.el=20b/lisp/vc/vc-hg.el=0A= index=2017d38fa400..6ff4923a14=20100644=0A---=20a/lisp/vc/vc-hg.el=0A+++=20= b/lisp/vc/vc-hg.el=0A@@=20-1357,25=20+1357,28=20@@=20= vc-hg-dir-status-files=0A=20=20=20(vc-run-delayed=0A=20=20=20=20=20= (vc-hg-after-dir-status=20update-function)))=0A=20=0A-(defun=20= vc-hg-dir-extra-header=20(name=20&rest=20commands)=0A-=20=20(concat=20= (propertize=20name=20'face=20'font-lock-type-face)=0A-=20=20=20=20=20=20=20= =20=20=20(propertize=0A-=20=20=20=20=20=20=20=20=20=20=20= (with-temp-buffer=0A-=20=20=20=20=20=20=20=20=20=20=20=20=20(apply=20= 'vc-hg-command=20(current-buffer)=200=20nil=20commands)=0A-=20=20=20=20=20= =20=20=20=20=20=20=20=20(buffer-substring-no-properties=20(point-min)=20= (1-=20(point-max))))=0A-=20=20=20=20=20=20=20=20=20=20=20'face=20= 'font-lock-variable-name-face)))=0A-=0A=20(defun=20= vc-hg-dir-extra-headers=20(dir)=0A-=20=20"Generate=20extra=20status=20= headers=20for=20a=20Mercurial=20tree."=0A+=20=20"Generate=20extra=20= status=20headers=20for=20a=20repository=20in=20DIR.=0A+This=20runs=20the=20= command=20\"hg=20summary\"."=0A=20=20=20(let=20((default-directory=20= dir))=0A-=20=20=20=20(concat=0A-=20=20=20=20=20(vc-hg-dir-extra-header=20= "Root=20=20=20=20=20=20=20:=20"=20"root")=20"\n"=0A-=20=20=20=20=20= (vc-hg-dir-extra-header=20"Branch=20=20=20=20=20:=20"=20"id"=20"-b")=20= "\n"=0A-=20=20=20=20=20(vc-hg-dir-extra-header=20"Tags=20=20=20=20=20=20=20= :=20"=20"id"=20"-t")=20;=20"\n"=0A-=20=20=20=20=20;;=20these=20change=20= after=20each=20commit=0A-=20=20=20=20=20;;=20(vc-hg-dir-extra-header=20= "Local=20num=20=20:=20"=20"id"=20"-n")=20"\n"=0A-=20=20=20=20=20;;=20= (vc-hg-dir-extra-header=20"Global=20id=20=20:=20"=20"id"=20"-i")=0A-=20=20= =20=20=20)))=0A+=20=20=20=20(with-temp-buffer=0A+=20=20=20=20=20=20= (vc-hg-command=20t=200=20nil=20"summary")=0A+=20=20=20=20=20=20= (goto-char=20(point-min))=0A+=20=20=20=20=20=20(mapconcat=0A+=20=20=20=20= =20=20=20#'identity=0A+=20=20=20=20=20=20=20(let=20(result)=0A+=20=20=20=20= =20=20=20=20=20(while=20(not=20(eobp))=0A+=20=20=20=20=20=20=20=20=20=20=20= (push=0A+=20=20=20=20=20=20=20=20=20=20=20=20(let=20((entry=20(if=20= (looking-at=20"\\([^=20].*\\):\\s-+\\(.*\\)")=0A+=20=20=20=20=20=20=20=20= =20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20(cons=20= (capitalize=20(match-string=201))=20(match-string=202))=0A+=20=20=20=20=20= =20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20(cons=20= ""=20(buffer-substring=20(point)=20(line-end-position))))))=0A+=20=20=20=20= =20=20=20=20=20=20=20=20=20=20(concat=0A+=20=20=20=20=20=20=20=20=20=20=20= =20=20=20=20(propertize=20(format=20"%-11s:=20"=20(car=20entry))=20'face=20= 'font-lock-type-face)=0A+=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20= (propertize=20(cdr=20entry)=20'face=20'font-lock-variable-name-face)))=0A= +=20=20=20=20=20=20=20=20=20=20=20=20result)=0A+=20=20=20=20=20=20=20=20=20= =20=20(forward-line))=0A+=20=20=20=20=20=20=20=20=20(nreverse=20result))=0A= +=20=20=20=20=20=20=20"\n"))))=0A=20=0A=20(defun=20vc-hg-log-incoming=20= (buffer=20remote-location)=0A=20=20=20(vc-hg-command=20buffer=201=20nil=20= "incoming"=20"-n"=20(unless=20(string=3D=20remote-location=20"")=0A--=20=0A= 2.15.1=0A=0A= --Apple-Mail=_33222393-D5E6-4638-A9D3-399A154B8A7B--