From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.io!.POSTED.blaine.gmane.org!not-for-mail From: Stefan Monnier Newsgroups: gmane.emacs.devel Subject: Re: [ELPA] Maintaining multiple packages in the same repo, branch, and worktree Date: Sun, 10 Oct 2021 11:47:35 -0400 Message-ID: References: <87o87wc3x3.fsf@alphapapa.net> Mime-Version: 1.0 Content-Type: text/plain Injection-Info: ciao.gmane.io; posting-host="blaine.gmane.org:116.202.254.214"; logging-data="33026"; mail-complaints-to="usenet@ciao.gmane.io" User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/28.0.50 (gnu/linux) Cc: emacs-devel@gnu.org To: Adam Porter Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane-mx.org@gnu.org Sun Oct 10 17:48:40 2021 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 1mZb43-0008Q0-Nj for ged-emacs-devel@m.gmane-mx.org; Sun, 10 Oct 2021 17:48:39 +0200 Original-Received: from localhost ([::1]:53374 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1mZb41-0005g3-Q9 for ged-emacs-devel@m.gmane-mx.org; Sun, 10 Oct 2021 11:48:37 -0400 Original-Received: from eggs.gnu.org ([2001:470:142:3::10]:37036) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1mZb3C-0004gO-4X for emacs-devel@gnu.org; Sun, 10 Oct 2021 11:47:46 -0400 Original-Received: from mailscanner.iro.umontreal.ca ([132.204.25.50]:51065) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1mZb38-0000RR-Bp for emacs-devel@gnu.org; Sun, 10 Oct 2021 11:47:44 -0400 Original-Received: from pmg2.iro.umontreal.ca (localhost.localdomain [127.0.0.1]) by pmg2.iro.umontreal.ca (Proxmox) with ESMTP id B303280620; Sun, 10 Oct 2021 11:47:37 -0400 (EDT) Original-Received: from mail01.iro.umontreal.ca (unknown [172.31.2.1]) by pmg2.iro.umontreal.ca (Proxmox) with ESMTP id 7375B8004C; Sun, 10 Oct 2021 11:47:36 -0400 (EDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=iro.umontreal.ca; s=mail; t=1633880856; bh=66NLpR/AodUZ8cpdLKWEXWhevvyZujGejFEn/CYKNiM=; h=From:To:Cc:Subject:References:Date:In-Reply-To:From; b=Z1gZh9nsK7xrVMwbbMvYWoeEYpvKlvG1qyeCOSdXh2CyBET/2E7DAg7bPx7nyz6+9 a3gb0sLMMbN2mnqXWX/calyQjGRELqDoX91QSH1eA4aIjVru/LPH+avaYi3NfGt45l KKXqcxPRybnAzNDjBX1b96YS0HzhxwtRC5VKSPBcYJTMSSt8myfThMCTvQW0q0IZwt V6Ah1BWFU/QPKm4Ildw5fQWNGLpt3oSP27FCOFU3kMA0uUUh/XFfe9RrH+h2ErBpVG eBfqc2g6X5Z8vWRcQ4dn6W2qEtUdPVxYunkZS560fYuZzWg+ELPDzEKVTwoZsz4S+5 D5mQtyxa7LhsA== Original-Received: from pastel (unknown [45.72.241.23]) by mail01.iro.umontreal.ca (Postfix) with ESMTPSA id 3A71D1203DF; Sun, 10 Oct 2021 11:47:36 -0400 (EDT) In-Reply-To: <87o87wc3x3.fsf@alphapapa.net> (Adam Porter's message of "Sun, 10 Oct 2021 10:09:28 -0500") Received-SPF: pass client-ip=132.204.25.50; envelope-from=monnier@iro.umontreal.ca; helo=mailscanner.iro.umontreal.ca X-Spam_score_int: -42 X-Spam_score: -4.3 X-Spam_bar: ---- X-Spam_report: (-4.3 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, RCVD_IN_DNSWL_MED=-2.3, 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.23 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" Xref: news.gmane.io gmane.emacs.devel:276672 Archived-At: > Despite the unwieldy list of :ignored-files in the elpa-packages file, > this is how Magit and Magit Section are packaged in NonGNU ELPA: they > come from the same repo, branch, and worktree, and their "recipes" are > configured appropriately. Indeed, that's how Magit does it currently, which sucks for users who install those packages directly from the Git rather than via the tarballs. [ It also makes for spurious extra messages in the cron logs and elpa-diffs. ] I accepted it because it was complicated for Magit to change that. I think it could be made acceptable more generally (which would also be appreciated for ivy/avy/swiper) by improving `elpa-admin.el` the way Jonas suggests: allow a package to specify explicitly that it (re)uses the same files as some other package. Then `elpa-admin.el` could setup `.../elpa/packages/` as a symlink to the other package and it could skip the package when performing operations that are redundant (e.g. sync'ing). We'd still get some downsides (e.g. all the packages sharing the same source code would still end up being duplicated in the `load-path` when installed from Git), but I think it would be tolerable. > If improvements need to be made to that process, maybe we could > discuss making them. Yes, I think the changes to `elpa-admin.el` wouldn't be too complex. Stefan