From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!.POSTED!not-for-mail From: Radon Rosborough Newsgroups: gmane.emacs.devel Subject: Re: Summary and next steps for (package-initialize) Date: Mon, 21 Aug 2017 09:34:25 -0700 Message-ID: References: <83tw12cocz.fsf@gnu.org> <83wp5xat6i.fsf@gnu.org> NNTP-Posting-Host: blaine.gmane.org Mime-Version: 1.0 Content-Type: text/plain; charset="UTF-8" X-Trace: blaine.gmane.org 1503333337 24813 195.159.176.226 (21 Aug 2017 16:35:37 GMT) X-Complaints-To: usenet@blaine.gmane.org NNTP-Posting-Date: Mon, 21 Aug 2017 16:35:37 +0000 (UTC) Cc: Stefan Monnier , emacs-devel@gnu.org To: Eli Zaretskii Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Mon Aug 21 18:35:29 2017 Return-path: Envelope-to: ged-emacs-devel@m.gmane.org Original-Received: from lists.gnu.org ([208.118.235.17]) by blaine.gmane.org with esmtp (Exim 4.84_2) (envelope-from ) id 1djpfc-0005Lu-AO for ged-emacs-devel@m.gmane.org; Mon, 21 Aug 2017 18:35:20 +0200 Original-Received: from localhost ([::1]:60486 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1djpfe-0001se-5C for ged-emacs-devel@m.gmane.org; Mon, 21 Aug 2017 12:35:22 -0400 Original-Received: from eggs.gnu.org ([2001:4830:134:3::10]:45593) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1djpfS-0001mY-6b for emacs-devel@gnu.org; Mon, 21 Aug 2017 12:35:16 -0400 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1djpfR-0004FB-AB for emacs-devel@gnu.org; Mon, 21 Aug 2017 12:35:10 -0400 Original-Received: from mail-lf0-x230.google.com ([2a00:1450:4010:c07::230]:38682) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1djpfQ-0004CH-2R; Mon, 21 Aug 2017 12:35:08 -0400 Original-Received: by mail-lf0-x230.google.com with SMTP id y15so68922562lfd.5; Mon, 21 Aug 2017 09:35:07 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=mime-version:in-reply-to:references:from:date:message-id:subject:to :cc; bh=VBQcj9gConLhy8o8fQsQEv/mzANuXP3TqlFBPdobr7A=; b=doXRSCZsFWU04vw/RLO229qX/Qc2R1WClZB4US+l2+koRkNJajcnIIKH58L+mrcSM1 AGzphbiFSr/pbtfnyFgR9a9r3jcpg7xyELXwUOwofkYQzFS6lp2Nmsw4V02LT4/KfDhJ VC0YFuKJ3eROxGbgJo44/54aIPEm6RdDCHC2IOwY+w3ZJyPhyEQQwCWb5gKNEVWSTtzM 5Zy/tMvgBpyIr/TqM7itQq1uOxQFxsd6fOLoMKL2CsKAejX5HCf8Mcyi+E6JV20GhUkL wrknu7HYmOg7yOFds1lmHY42fFafH7XifuTGhGXJ572MTcZF0Vu0TngK43QqtRLT4o0a ms0w== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:in-reply-to:references:from:date :message-id:subject:to:cc; bh=VBQcj9gConLhy8o8fQsQEv/mzANuXP3TqlFBPdobr7A=; b=AMDyWO64m1Cu0UhiBimCSzIOINxOTskmCKoJcxR1nn0DfWj5wF6LE8mlZDGJ3vqfDI sfNximSYR/PbLoh9ZidwmI2wCTm2ZMm0lQMqoVBI1LETt/BihCx2yI5kAj0LFY+vCppd uz49XnPd5qW3uXwmkcpgv8xeGFPqerzqX+tGmqLIwnOQJ6Ta2Jf4p9C1utSeX+YV/lzj oUC4ufXHdbbRfB5OBzQ+0xF++Bd2rr8kqd0R5o9VdmB5a7/e2lD12c+tcr2Wvo7jxlOw ERLbYOTbWAiKVaA4UsmGCIG5GqUXbMcqK0a389kVwyAzZPs2YvsD4HqWbZg3azTzy+Yo 3blQ== X-Gm-Message-State: AHYfb5hp/8LxQfODW/VcVhvMAfPhqsxcAlKAbsTY61P015ffsym6QJzx JNkqha9m4P4vcQEOPwN0AE6dAj2+82nqJRsn/g== X-Received: by 10.25.59.213 with SMTP id d82mr5456651lfl.37.1503333306421; Mon, 21 Aug 2017 09:35:06 -0700 (PDT) Original-Received: by 10.25.80.3 with HTTP; Mon, 21 Aug 2017 09:34:25 -0700 (PDT) In-Reply-To: <83wp5xat6i.fsf@gnu.org> X-detected-operating-system: by eggs.gnu.org: Genre and OS details not recognized. X-Received-From: 2a00:1450:4010:c07::230 X-BeenThere: emacs-devel@gnu.org X-Mailman-Version: 2.1.21 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.org@gnu.org Original-Sender: "Emacs-devel" Xref: news.gmane.org gmane.emacs.devel:217658 Archived-At: > > > I think we should instead explore the possibility that > > > package-initialize will be called only in startup.el. > > > > I think this is unlikely to work well. > > As I said, we should explore this in more detail, and have a detailed > and agreed-upon list of reasons why it's not TRT. PROPOSITION: Calling `package-initialize' only in startup.el is impossible without one of the following consequences: 1. It is impossible to customize `package-load-list' and `package-user-dir'. 2. We must add a second init-file. 3. The user cannot add package customizations to their init-file without using `after-init-hook'. 4. Packages are not activated automatically. PROOF: * Packages must be activated at some point, since otherwise consequence (4) holds. This activation must happen either before loading the init-file, during the init-file, or after loading the init-file. * Packages must be activated either before loading the init-file or during the init-file, since otherwise consequence (3) holds. * Packages cannot be activated during the init-file since this violates the premise that `package-initialize' is called only in startup.el. * Therefore, packages must be activated before loading the init-file. * Even though packages are activated before loading the init-file, it must still be possible for the user to customize `package-load-list' and `package-user-dir' before the activation takes place, since otherwise consequence (1) holds. * The user cannot put such customization in a second init-file, since otherwise consequence (2) holds. * There is no way for `package-load-list' and `package-user-dir' to be customized outside of an init-file. But we said such customization was necessary. * Reductio ad absurdum. Can someone find a hole in this reasoning?