From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.io!.POSTED.blaine.gmane.org!not-for-mail From: Tim Cross Newsgroups: gmane.emacs.devel Subject: Re: Subprojects in project.el (Was: Eglot, project.el, and python virtual environments) Date: Fri, 25 Nov 2022 09:46:12 +1100 Message-ID: <86bkowdjx5.fsf@gmail.com> References: <87zgcq68zp.fsf@ericabrahamsen.net> <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> <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> Mime-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable Injection-Info: ciao.gmane.io; posting-host="blaine.gmane.org:116.202.254.214"; logging-data="38228"; mail-complaints-to="usenet@ciao.gmane.io" User-Agent: mu4e 1.9.3; emacs 29.0.50 Cc: Dmitry Gutov , 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 Fri Nov 25 00:15:50 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 1oyLRe-0009jD-Cq for ged-emacs-devel@m.gmane-mx.org; Fri, 25 Nov 2022 00:15:50 +0100 Original-Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1oyLQn-00052X-Gt; Thu, 24 Nov 2022 18:14:57 -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 1oyLQl-00052A-S2 for emacs-devel@gnu.org; Thu, 24 Nov 2022 18:14:55 -0500 Original-Received: from mail-pf1-x42f.google.com ([2607:f8b0:4864:20::42f]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1oyLQk-00026k-9h for emacs-devel@gnu.org; Thu, 24 Nov 2022 18:14:55 -0500 Original-Received: by mail-pf1-x42f.google.com with SMTP id z26so2669039pff.1 for ; Thu, 24 Nov 2022 15:14:53 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20210112; h=content-transfer-encoding:mime-version:message-id:in-reply-to:date :subject:cc:to:from:user-agent:references:from:to:cc:subject:date :message-id:reply-to; bh=gFOD9uC29VHSDKpQqSrGBHtko++S6/vf4P9Mp1JhqMQ=; b=OqLjdz7SHCujd5+KoKQN74FLCSrUm0G6JlFweO18LtNpC3KzDO/ouNRaIPU5w5BEqm 7Xw00LU7ERO2Pda044M7LQR/gYpD09kgP9x2KKDfGi/8/ZJKpfY8TEZRln7saxpVo0vo ThepeaKJw+XYMQvAespHH5dol+7ZnTZhmfx5MdW26BvOxSRHrJmiPZ3ZaftHOOWg2eh9 py3Z0NSsZAbVK0ITrbbh1CLXGrQI5Bdzrjrz26DCom84hIzhquLDeTFyQ18v4M/V04aM DBXosJbZBebJL46pEZIWAUzc2OICxp+mxRFC826ZA4TyJF6wTUWsoCR/R+QL32FvsWsr UVAw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=content-transfer-encoding:mime-version:message-id:in-reply-to:date :subject:cc:to:from:user-agent:references:x-gm-message-state:from:to :cc:subject:date:message-id:reply-to; bh=gFOD9uC29VHSDKpQqSrGBHtko++S6/vf4P9Mp1JhqMQ=; b=Ket5CUlUjQbgF2NoeHU/IOkErM3wCdqG+aDh3aadAvDlP0JYO5/XT1qBNlGKg8WH0m OmUQwfmO3a4pm3kRnRR9mgsT5pVqa3gOZqSVvTtVbpZDSXP/A4ZtKaIXAPyFpXv3lzCX zaTNbvEUeayAverAb9D0qUlom11xe5TOgK/E9VjtsInqVt2zfgeHV6f6qoi8VeMWzIER /ijbxJ7w3OnwNc/9Nvj3wdAFGxNUhuqXtGwG85bTYGqt0wvY6uZccs975J8/wG36Wait LRcsJ7vbJhrn3XfxXiaNdX9CqE4KlOJAzDhZLd6agNqnqNpLFLC+Urn6IFGPaeUHIEJF zu1A== X-Gm-Message-State: ANoB5pnVulrXeyRCV7IILdp09FjWjxahJBtL8TW+hjGYV1K84GmKdN4S K/5EqZxbXxsWvJaiQe0lH7xLnX+dTJA= X-Google-Smtp-Source: AA0mqf7lFj6BvB73D573WpadZyWvDkjupwAcHNMzxifqHGLOM2o0PvxLG8yI6GOF/rqlrz5MwrFQtQ== X-Received: by 2002:a62:19cf:0:b0:574:3750:3589 with SMTP id 198-20020a6219cf000000b0057437503589mr11653855pfz.7.1669331692087; Thu, 24 Nov 2022 15:14:52 -0800 (PST) Original-Received: from dingbat (220-235-181-183.dyn.iinet.net.au. [220.235.181.183]) by smtp.gmail.com with ESMTPSA id n7-20020a170902d2c700b00186ffe62502sm1840765plc.254.2022.11.24.15.14.48 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 24 Nov 2022 15:14:51 -0800 (PST) In-reply-to: Received-SPF: pass client-ip=2607:f8b0:4864:20::42f; envelope-from=theophilusx@gmail.com; helo=mail-pf1-x42f.google.com X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, FREEMAIL_FROM=0.001, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=ham 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:300451 Archived-At: Jo=C3=A3o T=C3=A1vora writes: > On Thu, Nov 24, 2022 at 3:01 AM Dmitry Gutov wrote: > >=20=20 >> I'm imagining that traversing a directory tree with an arbitrary=20 >> predicate is going to be slow. If the predicate is limited somehow (e.g= .=20 >> to a list of "markers" as base file name, or at least wildcards), 'git= =20 >> ls-files' can probably handle this, with certain but bounded cost. I've seen references to superior performance benefits of git ls-file a couple of times in this thread, which has me a little confused. There has been lots in other threads regarding the importance of not relying on and not basing development on an underlying assumption regarding the VCS being used. For example, I would expect project.el to be completely neutral with respect to the VCS used in a project. So how is git ls-file at all relevant when discussing performance characteristics when identifying files in a project? I also wonder if some of the performance concerns may be premature. I've seen references to poor performance in projects with 400k or even 100k files. What is the expected/acceptable performance for projects of that size? How common are projects of that size? When considering performance, are we not better off focusing on the common case rather than extreme cases, leaving the extremes for once we have a known problem we can then focus in on?=20=20=20