From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.io!.POSTED.blaine.gmane.org!not-for-mail From: Dmitry Gutov Newsgroups: gmane.emacs.devel Subject: Re: Subprojects in project.el Date: Wed, 30 Nov 2022 02:39:20 +0200 Message-ID: <629bb596-4a96-992b-546c-432567ab0bea@yandex.ru> References: <87zgcq68zp.fsf@ericabrahamsen.net> <87zgcml7g7.fsf@gmail.com> <2ba04533-097a-a1da-ff3f-2c9506fd488e@yandex.ru> <875yf9bbzb.fsf@gmail.com> <87wn7oa0aw.fsf@gmail.com> <7a5b76fd-fb15-8c1e-ea29-bf11f7e0d2ae@yandex.ru> <87bkoya815.fsf@gmail.com> <0024a67d-b8e5-b35c-1b22-82541a170eb3@yandex.ru> <871qptai4d.fsf_-_@gmail.com> <86bkowdjx5.fsf@gmail.com> <43aa2f10-d947-dfcd-82b0-f6f1be3aaaec@yandex.ru> <86cz97jzpi.fsf@gmail.com> <87y1ruqe1o.fsf@gmail.com> <87ilixqu5l.fsf@gmail.com> Mime-Version: 1.0 Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 8bit Injection-Info: ciao.gmane.io; posting-host="blaine.gmane.org:116.202.254.214"; logging-data="26116"; mail-complaints-to="usenet@ciao.gmane.io" User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101 Thunderbird/102.4.2 Cc: Tim Cross , Stefan Monnier , Danny Freeman , Eric Abrahamsen , emacs-devel@gnu.org To: =?UTF-8?B?Sm/Do28gVMOhdm9yYQ==?= Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane-mx.org@gnu.org Wed Nov 30 01:41:08 2022 Return-path: Envelope-to: ged-emacs-devel@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 1p0B9v-0006YF-JN for ged-emacs-devel@m.gmane-mx.org; Wed, 30 Nov 2022 01:41:07 +0100 Original-Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1p0B8d-0007sy-AD; Tue, 29 Nov 2022 19:39:47 -0500 Original-Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1p0B8Z-0007sg-22 for emacs-devel@gnu.org; Tue, 29 Nov 2022 19:39:43 -0500 Original-Received: from mail-wm1-x334.google.com ([2a00:1450:4864:20::334]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1p0B8L-0001XK-94 for emacs-devel@gnu.org; Tue, 29 Nov 2022 19:39:42 -0500 Original-Received: by mail-wm1-x334.google.com with SMTP id r82-20020a1c4455000000b003d070274a61so100923wma.3 for ; Tue, 29 Nov 2022 16:39:25 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20210112; h=content-transfer-encoding:in-reply-to:from:references:cc:to :content-language:subject:user-agent:mime-version:date:message-id :sender:from:to:cc:subject:date:message-id:reply-to; bh=TAYtm79BUo4pIIx3/TPeY8ys9+rRrQ3pfQu2gwj/pKc=; b=E2uYtxZfkqbJzGW9v1QddkwZ1c9dBcL8Gp+xUPhppjFysiGDhAz5BZ0T60L6Dy7pmd fJ5us4ZCmqqgdEOq2cjvY9w59pug8YRz3rYw5CBz9uWN2POHJdO2eyk02eWsh6gK4801 w3hLrtz24YXoY8zUdeY3YIbfmh9L3+AKItk7LG6h2wpsoxrJm3kjBBTq8PBR7n4rqyln KNAtFDuw1pp1hGZbk/RHwgY3c2BqVaEr/SU3dr13EgKYxVT4B3NBW1gtRsMSdn8E9UYm wQ/ZuDC3ej2XPzOwekAPF2jo/oVK3BpbOTYtHt1e/utNbVxaR1rLTmDhNHMy2LCS7kk5 WHVA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=content-transfer-encoding:in-reply-to:from:references:cc:to :content-language:subject:user-agent:mime-version:date:message-id :sender:x-gm-message-state:from:to:cc:subject:date:message-id :reply-to; bh=TAYtm79BUo4pIIx3/TPeY8ys9+rRrQ3pfQu2gwj/pKc=; b=Fr5BW5Thko6R/xI50in7KRCij8BS6aW+O2QDAJ0jkYIZhmOR4n290RUN1zF76xZ3wQ /G9/0CaPaCxkEDj+3d9FvIqyGgURtQPL8GiKKkmHs1MtaRRMGqEtkS/DtpCqlnlV/8m2 XpCqsRcXbnPUxjgNER3iQsPdZQdeOvo73bA6iUJAvLRbQXURLgHa4hf4ufhVbEkM2m1z pDzMMwvZazSb5v0xn2pCaY+lSew84UC1nvotgIsfrRP107UMk7Vz5YBtjXRa95wsoFZ7 C2dRXCFAoUPR2FMnYdurJm95h6YztmDgk3aLDz2a1nvAvs+DyRSzc97m1E9AHgYAmQOm Nq4w== X-Gm-Message-State: ANoB5plAieWXg6sbG7/rBUIDxOfAwIUbOOd8mPuW0fLatZISTBOLl3uS uB/C++qlEUQL9uYc4VgFzc0= X-Google-Smtp-Source: AA0mqf7Z8QCfm5jYMy9eapU1NsEXnyXQLd/23JTQ4dEKJjQaQENgUd/sCJy2eZmnu7c5nQaWxa0vVg== X-Received: by 2002:a05:600c:1c04:b0:3cf:ecdb:bcb7 with SMTP id j4-20020a05600c1c0400b003cfecdbbcb7mr41455130wms.180.1669768762002; Tue, 29 Nov 2022 16:39:22 -0800 (PST) Original-Received: from [192.168.0.6] ([46.251.119.176]) by smtp.googlemail.com with ESMTPSA id l9-20020a05600c2cc900b003cf9bf5208esm2833691wmc.19.2022.11.29.16.39.20 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Tue, 29 Nov 2022 16:39:21 -0800 (PST) Content-Language: en-US In-Reply-To: <87ilixqu5l.fsf@gmail.com> Received-SPF: pass client-ip=2a00:1450:4864:20::334; envelope-from=raaahh@gmail.com; helo=mail-wm1-x334.google.com X-Spam_score_int: -16 X-Spam_score: -1.7 X-Spam_bar: - X-Spam_report: (-1.7 / 5.0 requ) BAYES_00=-1.9, DKIM_INVALID=0.1, DKIM_SIGNED=0.1, FREEMAIL_FORGED_FROMDOMAIN=0.001, FREEMAIL_FROM=0.001, HEADER_FROM_DIFFERENT_DOMAINS=0.249, NICE_REPLY_A=-0.258, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=no autolearn_force=no X-Spam_action: no action X-BeenThere: emacs-devel@gnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "Emacs development discussions." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: emacs-devel-bounces+ged-emacs-devel=m.gmane-mx.org@gnu.org Original-Sender: emacs-devel-bounces+ged-emacs-devel=m.gmane-mx.org@gnu.org Xref: news.gmane.io gmane.emacs.devel:300737 Archived-At: On 30/11/2022 00:21, João Távora wrote: > Dmitry Gutov writes: > >> On 29/11/2022 11:56, João Távora wrote: >>> Dmitry Gutov writes: >>> >>>> But I'd be happy to find out that 98% of our users' cases can be >>>> handled with markers. >>> I think you'll begin to lose that bet right here in the Emacs repo. >>> Take the doc/ directory where Emacs's manuals live. It's pretty >>> reasonable to consider a non-programmer (or non-Elisp) contributor >>> working on that directory almost exclusively, perhaps as a proof-reader. >> >> Setting aside the artificial nature of this example, they could add >> "lispintro" or "lispref" to project-vc-extra-root-markers and have >> that nested project recognized. > > Talk about artificial. I don't want to say that "lispintro" or > "lispref" anywhere in my filesystem marks the doc/ subproject. I might > have identically named elsewhere. And these are much more likely to > change than doc/ won't. In other words, it's not correct to describe a > subproject in terms of its interior structure. You don't want to. Okay. But updating the config to use a different marker is also not a long task. It's not like someone's going to go on renaming "lispinto" to some other name and back over and over during the project lifetime. > And there's also the obvious drawback, that you yourself raised, that > looking for marker files is needlessly taxing in terms of file system > operations. Especially, as you highlighted, under TRAMP or a > slow-to-access file systems. Only when the goal is to exclude the nested projects' files from being listed in the output of 'project-files' of the encompassing project. I asked you about this, and you answered that this is a non-goal. Otherwise, the VC Project backend uses file markers already anyway (that's what vc-responsible-backend is based on). The latest proposals to make the list of markers configurable in bug#41572 actually make this logic faster, not slower. Especially over Tramp. >> I don't know how many people actually intend to do what you described, >> though. But it seems workable just the same. > > Whoever wants to reap the benefits of subprojects for NPM packages in a > monorepo with marker files will probably come across situations where > they want to reap the same benefits for fixed directories but without > marker files. And vice versa, of course. The solution to be adpted > should not favour marker files over other approaches. And it's so > simple not to incur in this design mistake that's it's a bit baffling > that you keep insisting to do it. What's baffling is how you insist on not reading or trying the patches that's been available in bug#41572 -- some for several days, some for over a year, which implement both this and other approaches.