From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.io!.POSTED.ciao.gmane.io!not-for-mail From: Wolfgang Scherer Newsgroups: gmane.emacs.bugs Subject: bug#37189: 25.4.1: vc-hg-ignore implementation is missing Date: Sat, 8 Feb 2020 20:45:34 +0100 Message-ID: <2354821b-5c1e-f9e3-3a64-4ff978ded33b@gmx.de> References: <1ba53ae2-42a4-3ab3-d4f2-2ceae565d198@gmx.de> <52917e6f-2f00-25cf-4353-dfb40287d0ea@gmx.de> <83pnkrdpb3.fsf@gnu.org> <679942e8-abe9-b0fc-720d-75a54d8d0b5a@gmx.de> <95da41e8-7a55-a15c-cfa7-d70366f9ee6b@gmx.de> <412195c1-e196-12af-933b-0312f5075847@yandex.ru> <57825d73-27a4-d5f5-8198-a172796a558a@gmx.de> <1ebc6077-9175-65ba-4996-282bb2c8eca5@yandex.ru> <6145d6f6-37a8-7166-731b-57669086b145@gmx.de> <838slmk90j.fsf@gnu.org> <83h806gp2w.fsf@gnu.org> <8336bmg1o9.fsf@gnu.org> Mime-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable Injection-Info: ciao.gmane.io; posting-host="ciao.gmane.io:159.69.161.202"; logging-data="45373"; mail-complaints-to="usenet@ciao.gmane.io" User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:60.0) Gecko/20100101 Thunderbird/60.9.1 Cc: 37189@debbugs.gnu.org To: Dmitry Gutov , Eli Zaretskii Original-X-From: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane-mx.org@gnu.org Sat Feb 08 20:46:59 2020 Return-path: Envelope-to: geb-bug-gnu-emacs@m.gmane-mx.org Original-Received: from lists.gnu.org ([209.51.188.17]) by ciao.gmane.io with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1j0W4A-000BZT-Nj for geb-bug-gnu-emacs@m.gmane-mx.org; Sat, 08 Feb 2020 20:46:58 +0100 Original-Received: from localhost ([::1]:44828 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1j0W49-0002Ml-7L for geb-bug-gnu-emacs@m.gmane-mx.org; Sat, 08 Feb 2020 14:46:57 -0500 Original-Received: from eggs.gnu.org ([2001:470:142:3::10]:55417) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1j0W3O-0002Je-Vt for bug-gnu-emacs@gnu.org; Sat, 08 Feb 2020 14:46:20 -0500 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1j0W3G-0005Bg-Fx for bug-gnu-emacs@gnu.org; Sat, 08 Feb 2020 14:46:08 -0500 Original-Received: from debbugs.gnu.org ([209.51.188.43]:45877) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1j0W3G-0005BY-Cv for bug-gnu-emacs@gnu.org; Sat, 08 Feb 2020 14:46:02 -0500 Original-Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1j0W3G-0005CJ-Ao for bug-gnu-emacs@gnu.org; Sat, 08 Feb 2020 14:46:02 -0500 X-Loop: help-debbugs@gnu.org Resent-From: Wolfgang Scherer Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Sat, 08 Feb 2020 19:46:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 37189 X-GNU-PR-Package: emacs Original-Received: via spool by 37189-submit@debbugs.gnu.org id=B37189.158119114519955 (code B ref 37189); Sat, 08 Feb 2020 19:46:02 +0000 Original-Received: (at 37189) by debbugs.gnu.org; 8 Feb 2020 19:45:45 +0000 Original-Received: from localhost ([127.0.0.1]:51850 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1j0W2z-0005Bm-5B for submit@debbugs.gnu.org; Sat, 08 Feb 2020 14:45:45 -0500 Original-Received: from mout.gmx.net ([212.227.17.21]:44293) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1j0W2w-0005BY-HO for 37189@debbugs.gnu.org; Sat, 08 Feb 2020 14:45:43 -0500 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=gmx.net; s=badeba3b8450; t=1581191135; bh=gT+hQ+M8xZ8MGNwGu/dcoXaxpKd7r8pX6JBumLdWKXI=; h=X-UI-Sender-Class:Subject:To:Cc:References:From:Date:In-Reply-To; b=M86LtXIQCgUDoaUnEUNBMssCaNHrKmu5qrqik/fVNBotLg13r0d5RCJJKNh2EAN3e 0A+kOBLYQ1U2SSEbCmfWtoZ6u7xfBwC7y9vj4T4dzHf94e/a6lQmv1Gj2u1HTr1s1S BHiHS1VeYasMhzV2e8kMglTj69/tY5EIzZC7SYZA= X-UI-Sender-Class: 01bb95c1-4bf8-414a-932a-4f6e2808ef9c Original-Received: from sheckley.simul.de ([87.160.210.52]) by mail.gmx.com (mrgmx104 [212.227.17.168]) with ESMTPSA (Nemesis) id 1N8XU1-1je5uQ37Wj-014XTC; Sat, 08 Feb 2020 20:45:35 +0100 Original-Received: from [127.0.0.1] (sheckley.simul.de [127.0.0.1]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by sheckley.simul.de (Postfix) with ESMTPSA id AC11C19431CE; Sat, 8 Feb 2020 20:45:34 +0100 (CET) Openpgp: preference=signencrypt Autocrypt: addr=Wolfgang.Scherer@gmx.de; prefer-encrypt=mutual; keydata= xsDiBEb46IgRBACMHOAb1KNo1Ylk+ebri+4R+bG4tyKlqBlrpv8D9/ZwRdXSGt+0DyCHoaAd 7KW7noHapLe87DunABOjKG4nqTGv+dRiWuUBlp3I4aYRFDVa3Da+XnIYkMHKqhK59VEHQCdp Km42nuLS7TS+n99at9YwzTG6VBdOlBKTlRFngOjVLwCg1RGXJ6X3EjS1FKCQeXziURVpWlkD /2zY6Ayhxi62TS84VjikXrrmjXykAAaAmMVEyKKYb9L5pGlqiZz9g/K9xw1EUoZTYuaufquD v4rAGR58K/3V4CYfJLEeshMWiaXHvMmlxMznlG16/um4MvmR8B3r+cx0nOPK1JBdD2qrkNnF Mw8FB+zouLFB4Gt2IUC5IlOmZ8OQA/4qdU53CItzWsCr9Nux4L0qUlRweSmCnV8xGQ2wP5XI MawIQxxREvSrsYDG8cNnYETMg4iQFfIktwAoxCJvuFAwIB6ZxHGF4FcEZm64CXc2u7CmFLqt rVhXhIfMz9oEYC+HhGczGamn9ofbGTFd2hJEtPcQgWNR4f7+aKknmi2+OM0fV29sZmdhbmcg U2NoZXJlciA8d3NAc3ctYW10LndzPsJhBBMRAgAhBQJYmz3YAhsjBQsJCAcCBhUICQoLAgQW AgMBAh4BAheAAAoJEIUCr3Gr112VZZoAoLTBSTp1qGuNhLdXY04iaWCMYmHCAJ4kHPtQ6nTw kEq9qCHgVgXDaY7wjs7ATQRG+OiIEAQAhi0wjcxvA4tychg2NQuwBIf9LX/46l+74+QbewCn a4a+mw/9s5KY In-Reply-To: Content-Language: de-DE X-Provags-ID: V03:K1:HfzAjLOPquheubxgRc2ME4nHh3IH6kdsqg2jkZWBLkGfgaA0dEG m5u8gjTanm4EEdIjqrowpwV56anrVB3bSX5qpo6jZ8x9IGKWgfK1fLY52Cp2gbT/RuJ+Ywt G3Pl6O2gtKHUejLWEDVcE7nwmklxCt8lE3WZD2k184QJJ/8z7TFfubROsTAKPy2fIYUQzUS DuC9BzDbdXVyYTeJoyJzg== X-UI-Out-Filterresults: notjunk:1;V03:K0:4X0QB/hIPEY=:HB5LhAnreF8FwNi7wQ7Aga W4JYK3xyzv3sZu4yFdlQZrx8vmGeYNp5Z7Yy56bQWFQqSXlMjYa7AuIXnewFLxpt3pMxXuYqT 0PUUfPYOJURlKBp9A7qJhtuHMWaWq6aBGwMRH8n6VKApxeHCWOxDX9S6TmBXb3EQJQFcMbGO7 lP4MYVy0EOTfgMoQHbQ8grLKFCihLQeooqwli0Bz/ILbQw1Nv9sU2Mx7vxbjg/LMIxFg+lvmO Wi96JILzpRM96W3q6FnD16SO9EZAi6qnjjbBvl+6JISlcYN3EL/UMjjSauF9g+PG7woTco/d8 Zw4WCX3x1maGCMS/DPC6TcyLU8QkMDJ8Vq47rmeFpWr0dFvlF6he8q3Ob1JP33mgZ3N5L46df a9vvdYkSTv51lClEyAPcGYPdI8xknIkupAB2Ncc61BRtbUIB/txrt7A24O7jT6AiJFhS7gvmi IapwIoE6Qt29212KHbA2w9gXaQ23ddHfqPCPHe1mJIKoit6L3p7DEOR9OjS14oPoKzsA+mH4V n9k1BUFaN+tLFVY6N7dlSLSyYg+WiKbWYA9/0M49d3a3QZdS02PLGuBe9RKCt95lgV4iPzT3G pZfRg3c+Qv3nFIQhjw6x8VzBu4gaFESm7saeyqW3IDJnmc2zRY/h0DanrLK9ygynsrx8MyWGD IcL1SAcJc6xl8xOl/8uX0hAxZn3Rk2z9yPlBh/O61lutxj6HByiicN/pniSme4DYNH9ABXKWC YTONVwGoYK2NQhmyfqrBGMN4K5yGmh9fz9qC4FpFhKy3GjCoYXG9XLq8T/6pl/i8BIDqk5tB 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-mx.org@gnu.org Original-Sender: "bug-gnu-emacs" Xref: news.gmane.io gmane.emacs.bugs:175807 Archived-At: Am 08.02.20 um 10:57 schrieb Dmitry Gutov: > On 07.02.2020 12:57, Eli Zaretskii wrote: >> AFAIU, Dmitry oversees the VC development and maintenance.=C2=A0 That >> includes the issues you raised here. > > That's right. And I asked some questions before in this report and didn'= t get direct answers. I answered as best as I could up to the point, where it became clear to me= that the entire ignore feature has fatal design flaws which need to be ad= dressed, if silly hacks (like this one) are to be avoided. The status quo before Emacs 27 is: 1. The argument FILE of `vc-ignore` is documented to accept a wildcard spe= cification. This is the use case "pattern". 2. `vc-ignore` is called from `vc-dir-ignore` with either an absolute or r= elative filename. This is the use case "file path". 3. Some backends expect a file path, some backends expect a pattern. This = cannot be fixed without adding a parameter to `vc-ignore`, `vc--i= gnore`. +-----------------------+-------------+-----------+ | function=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0 | file path=C2=A0=C2=A0 | pattern=C2=A0=C2=A0 | +=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D+=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D+=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D+ | :func:`vc-ignore`=C2=A0=C2=A0=C2=A0=C2=A0 | strong hint | yes=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0=C2=A0 | +-----------------------+-------------+-----------+ | :func:`vc-dir-ignore` | mandatory=C2=A0=C2=A0 | no=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0 | +-----------------------+-------------+-----------+ | :func:`vc-cvs-ignore` | no=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0 | mandatory | +-----------------------+-------------+-----------+ | :func:`vc-svn-ignore` | mandatory=C2=A0=C2=A0 | no=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0 | +-----------------------+-------------+-----------+ | :func:`vc-src-ignore` | --=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0 | --=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 | +-----------------------+-------------+-----------+ | :func:`vc-bzr-ignore` | no=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0 | mandatory | +-----------------------+-------------+-----------+ | :func:`vc-git-ignore` | no=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0 | mandatory | +-----------------------+-------------+-----------+ | :func:`vc-hg-ignore`=C2=A0 | no=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0 | mandatory | +-----------------------+-------------+-----------+ | :func:`vc-mtn-ignore` | --=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0 | --=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 | +-----------------------+-------------+-----------+ > > To be clear, I'm quite happy with the meat of the patch presented here, I am not. The attempt to support a dual API with file/pattern pseudo-detec= tion is just shameful. > just suspicious of the not well-enough documented change in vc-ignore's = semantics. So yeah, we need a better understanding of the problem and mayb= e a better design. I have documented the environment, the rationale and the ongoing implement= ation extensively at http://sw-amt.ws/emacs/doc/_build/html/emacs-vc-ignor= e-feature.html. The core topic is "File pathes are NOT patterns", so they = must be separated in the API. > Hopefully one that's not too different from the current one. The current one is completely broken but the necessary changes are only fe= w. Since it hasn't worked to begin with, there is really nothing to preser= ve. I have already implemented the core handler `vc-default-ignore` replacing = the defunct handlers for CVS, Git, Hg, Bzr by parameter sets. The addition= al parameter set for SRC is also available. I am planning on implementing = Mtn. I do not plan on implementing or fixing SVN (or maybe I will). Search on page http://sw-amt.ws/emacs/doc/_build/html/emacs-vc-ignore-feat= ure.html for x-vc-repair.el,which is a link to the ongoing implementation.= With `eval-buffer` under Emacs 24 - 26, the feature is activated. The user interface for ignoring files is`C-x v F` or `F` in `vc-dir-mode`.= It behaves like other functions, e.g. `C-x v i`, `C-x v u`, `C-x v =3D`. = I.e., it is possible to select multiple files to ignore in `vc-dir-mode` a= nd `dired-mode`. > > I'll read the whole of the discussion as soon as I can, but it's going t= o take some time to digest, sorry. Please, do not read this discussion, as it has became chaotic before I rea= lized what is required to understand the problem. > >> It's up to Dmitry, really.=C2=A0 If he feels my attempt to understand t= he >> design critique you present is not helping, then I'll gladly leave it >> to him to continue with this report. > > Quite the opposite. If you reach some mutual understanding, it will sure= ly help me when reading this thread a bit later. I would really like to close this thread and open one about the correct im= plementation of `vc-ignore`.