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: Eglot, project.el, and python virtual environments Date: Wed, 23 Nov 2022 05:37:38 +0200 Message-ID: References: <87zgcq68zp.fsf@ericabrahamsen.net> <878rkale3l.fsf@dfreeman.email> <4c5f4b07-3df6-d700-83f8-9a9d1b684afc@yandex.ru> <84781346-5b88-2be5-38bb-02696fcf1364@yandex.ru> <87o7t2vj19.fsf@dfreeman.email> <877czqtyfy.fsf@dfreeman.email> <87zgcml7g7.fsf@gmail.com> <2ba04533-097a-a1da-ff3f-2c9506fd488e@yandex.ru> <87ilj858j4.fsf@gmail.com> Mime-Version: 1.0 Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit Injection-Info: ciao.gmane.io; posting-host="blaine.gmane.org:116.202.254.214"; logging-data="26509"; 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: =?UTF-8?B?Sm/Do28gVMOhdm9yYQ==?= , Danny Freeman , Eric Abrahamsen , emacs-devel To: Augusto Stoffel Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane-mx.org@gnu.org Wed Nov 23 04:38:34 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 1oxgan-0006i4-VF for ged-emacs-devel@m.gmane-mx.org; Wed, 23 Nov 2022 04:38:33 +0100 Original-Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1oxga4-0003EY-C1; Tue, 22 Nov 2022 22:37:48 -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 1oxga2-0003EJ-NV for emacs-devel@gnu.org; Tue, 22 Nov 2022 22:37:46 -0500 Original-Received: from mail-wm1-x32b.google.com ([2a00:1450:4864:20::32b]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1oxga0-0005Wt-IU for emacs-devel@gnu.org; Tue, 22 Nov 2022 22:37:46 -0500 Original-Received: by mail-wm1-x32b.google.com with SMTP id l39-20020a05600c1d2700b003cf93c8156dso441298wms.4 for ; Tue, 22 Nov 2022 19:37:41 -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=E7H4fl8QgLGari5niZoI/RSnR297noHM4Hz4QVTJnFw=; b=W+d9SHdvvhAmp3fOI1O0SPjxX5mvx6JGlmZ6Rvb9OEtwTJU+pX4G1KI9nKws/eQ03w DjcNeA+4zTnCg5KbarDHYLzXe9OPBFdcJZOsTqKIlXD82vbaMSWbWKS5eFaiqMcR1oi2 oIouFKnPTlQ4Sp8Q37318V/LafF6YmffaZKgIc0teQErNdahKXSdw3rQTQAdEEb3w26v bnCawqiZDKe0heJsh/+p//iO7JHTrUlymUHARnL8msZqu7KM+wdiYtITqEFUN+Uv73VC cRyE50HU0QnbafNAkPtXEyOjZj0ARTsgMEuLpwPe76RGQ8oK/ysbBYcZrIKkBjxVkPd7 8u0A== 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=E7H4fl8QgLGari5niZoI/RSnR297noHM4Hz4QVTJnFw=; b=TLvLPa73d3WckPac181bdu2fAK+Ht2HDDZ/nPKmYYyZxHjfaCQJcMvkw3kBydirHNx 4laUo+Et+xMTrJ4TMojhTzfCA6C49GAiksJM84sODHGJiA7qCoc/78TWA4ufGtInTBzB 7DJTh/h34aJa/RMnHb9PVNY+5pS5E3CjVp/hpCQFGRNR8IyCEZJO9g68Wk6yrWcVOOUT 5L5CENF/lYXboxIpsW3ct15V4V3/roZjukALhqYfT1Q0s6yxtivP6a7piL2rLulg8Kdr J0awVF7TMY+Ohrz1z+Sn5MVqKYowlaiXl9KpD3EgR+2Bg2nv7Y2uxObthMvGqqGAQ00x 7MyA== X-Gm-Message-State: ANoB5pk2i5WCSgRjVb6uN1qZ3pTNQljaITYdAIRPFP0AsqN/QVDqJU0j nNrTHXeHa2gVRo8/xhNIb0tRbPbn4Cc= X-Google-Smtp-Source: AA0mqf7uCIirwuTfc45D+uHZOyAxo8cCeZgxzU6yvh6kY28cWmhRBPxJSp1xmy6aqJqbhqGQLhcUwA== X-Received: by 2002:a7b:cb98:0:b0:3cf:9a12:e645 with SMTP id m24-20020a7bcb98000000b003cf9a12e645mr11308115wmi.59.1669174660403; Tue, 22 Nov 2022 19:37:40 -0800 (PST) Original-Received: from [192.168.0.6] ([46.251.119.176]) by smtp.googlemail.com with ESMTPSA id z4-20020a05600c0a0400b003c70191f267sm652177wmp.39.2022.11.22.19.37.39 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Tue, 22 Nov 2022 19:37:39 -0800 (PST) Content-Language: en-US In-Reply-To: <87ilj858j4.fsf@gmail.com> Received-SPF: pass client-ip=2a00:1450:4864:20::32b; envelope-from=raaahh@gmail.com; helo=mail-wm1-x32b.google.com X-Spam_score_int: -14 X-Spam_score: -1.5 X-Spam_bar: - X-Spam_report: (-1.5 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_EF=-0.1, FREEMAIL_FORGED_FROMDOMAIN=0.205, FREEMAIL_FROM=0.001, HEADER_FROM_DIFFERENT_DOMAINS=0.249, NICE_REPLY_A=-0.001, RCVD_IN_DNSWL_NONE=-0.0001, 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:300376 Archived-At: On 21/11/22 22:58, Augusto Stoffel wrote: > On Sun, 20 Nov 2022 at 17:36, Dmitry Gutov wrote: > >> If you want more food for thought, look up my previous messages in >> this thread regarding "subprojects". And others' too. > How about the much simpler situation where you want a subdirectory of a > Git repo to count as its own project, completely disregarding any other > directories? > > I guess it would be nice to support this by just creating a special > marker file, but I couldn't figure out if it's supported. It's a seemingly simple issue which becomes hard once you want to create a turnkey solution for everybody which is simultaneously fast, easy to use and still flexible. Or at least for me it did. There are a couple of patches I put up for discussion in https://debbugs.gnu.org/cgi/bugreport.cgi?bug=41572#82, but alas the discussion that arose went into some other direction. In short, the issues are: - Whether we need to be able to exclude the subprojects from project-files of the parent project. Can be useful with large projects; not so easy to do if the subprojects are defined by some file markers down in the directory tree. - If we don't, I guess nobody needs the defcustom 'project-vc-merge-submodules' either? - Or if we do, would it be okay to recommend the user customizes the ignores of the parent project manually to exclude the specific subprojects? In addition to setting up the markers. And this way we lose the potential ability to add their dirs to project-files of the parent, to make them more easy to reach (project-vc currently does that with project-vc-merge-submodules=nil), or list them through a separate command, etc. - Would markers be limited to file names (perhaps with wilcards)? If so, it might be feasible after all to exclude marker-based subprojects if the user so wishes using an extra 'git ls-files -co -- ...' call. It's not free, though. - Should subprojects obey "ignores" of the parent project? If they do (which would make sense in practice -- obeying .gitignore of the repo), how do we describe that semantically if a subproject is a separate project type/backend? Anyway, I suggest you give the original messages a read (#82 and #83, at least) and let me know what you think. Preferably in the bug comments, since those will be easier to find later.