From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.io!.POSTED.blaine.gmane.org!not-for-mail From: Ihor Radchenko Newsgroups: gmane.emacs.devel Subject: Re: Lisp files that load cl-lib in problematical ways Date: Tue, 24 Oct 2023 13:01:45 +0000 Message-ID: <87cyx49nt2.fsf@localhost> References: <83ttqnm4ti.fsf@gnu.org> <83lebyu5yx.fsf@gnu.org> <4684f43123d7dee59461@heytings.org> <835y2xo1a5.fsf@gnu.org> <4684f4312391906f6101@heytings.org> <831qdlo084.fsf@gnu.org> <83msw8n43r.fsf@gnu.org> <87y1fs75mx.fsf@localhost> <837cncmewi.fsf@gnu.org> <87fs209ora.fsf@localhost> <83pm14kwz0.fsf@gnu.org> 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="28991"; mail-complaints-to="usenet@ciao.gmane.io" Cc: stefankangas@gmail.com, gregory@heytings.org, rms@gnu.org, emacs-devel@gnu.org To: Eli Zaretskii Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane-mx.org@gnu.org Tue Oct 24 15:55:03 2023 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 1qvHs6-0007JM-L0 for ged-emacs-devel@m.gmane-mx.org; Tue, 24 Oct 2023 15:55:02 +0200 Original-Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1qvH1F-0005xc-B3; Tue, 24 Oct 2023 09:00:25 -0400 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 1qvH0y-0005u2-7t for emacs-devel@gnu.org; Tue, 24 Oct 2023 09:00:11 -0400 Original-Received: from mout02.posteo.de ([185.67.36.66]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1qvH0u-0006Pb-Bo for emacs-devel@gnu.org; Tue, 24 Oct 2023 09:00:07 -0400 Original-Received: from submission (posteo.de [185.67.36.169]) by mout02.posteo.de (Postfix) with ESMTPS id 17472240105 for ; Tue, 24 Oct 2023 15:00:01 +0200 (CEST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=posteo.net; s=2017; t=1698152402; bh=yKp+PMKTflumkLLE1hQXUKq59pthi0yCBQxxR4htoGo=; h=From:To:Cc:Subject:Date:Message-ID:MIME-Version: Content-Transfer-Encoding:From; b=aHzBeF62osPa0gc+hS15dWJQ+CYRFe7R5CH1+rfIDqmAoz/S70JJF0AXhBWnVrhIT eNuqJrffmsJShQtar2FTGxXAkPohlJw+/PtCpAX3hp0o3YVLeuvoyebyFC2NLTky2T S2ZDDwMgfkpvVwUKKumi8nNc9JBOHs+1lf9QAKlMh45O5x3mqOWax0aVu7OhgXrLNU /xtgiZnMO6/7KoZegpvj23GwYbJtrEvYajJAt79q4JNE8UaX5RAXOgwjTRD+ybdq6N w4strMCrBcaTrT5px5MW+P7UtZQk8bwkbXdAv+mnkHRfGDgjrm3fbxEsk3FU3nSCOs XJeTAAPVCRXWg== Original-Received: from customer (localhost [127.0.0.1]) by submission (posteo.de) with ESMTPSA id 4SFBwx3Y18z6tvZ; Tue, 24 Oct 2023 15:00:01 +0200 (CEST) In-Reply-To: <83pm14kwz0.fsf@gnu.org> Received-SPF: pass client-ip=185.67.36.66; envelope-from=yantar92@posteo.net; helo=mout02.posteo.de X-Spam_score_int: -43 X-Spam_score: -4.4 X-Spam_bar: ---- X-Spam_report: (-4.4 / 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, RCVD_IN_DNSWL_MED=-2.3, RCVD_IN_MSPIKE_H5=0.001, RCVD_IN_MSPIKE_WL=0.001, 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:311794 Archived-At: Eli Zaretskii writes: >> > What do you want to be customizable, and how? >>=20 >> What I have in mind is a custom list of packages to be dumped. > > You can easily edit lisp/loadup.el and add whatever you want. So this > possibility already exists. Indeed, custom dump is already possible, as described in the article I linked to. I meant something more interactive that takes care about arranging all the internal details like running batch Emacs, setting up load-path, and loading the packages. >> > Isn't that already available using dump-emacs-portable? Or am I >> > missing something? >>=20 >> (1) It does not work interactively. > > Doesn't M-: work? Nope. Debugger entered--Lisp error: (error "Dumping Emacs currently works only in= batch mode. If you=E2=80=99d like it to work interactively, please consid= er contributing a patch to Emacs.") (dump-emacs-portable "~/tmp/emacs-pdumped") (eval (dump-emacs-portable "~/tmp/emacs-pdumped") t) >> (2) Even making it work non-interactively is not necessarily trivial. >> See https://archive.casouri.cat/note/2020/painless-transition-to-por= table-dumper/index.html > > These are bugs we still need to find and fix. But adding arbitrary > Lisp packages to loadup.el is also likely to cause bugs, since > dumping Emacs is a tricky business in any case. That's my point. If we can carefully select built-in packages that can be safely dumped, we can generate Emacs executable tailored for user configs. For example, imaginary M-x dump-emacs-portable-interactively might check the loaded features, filter them according to built-in libraries known to be safe for dumping, and generate Emacs image that will pre-load these libraries. This way, Emacs startup time will be reduced while not adding unnecessary bloat, with "unnecessary" defined by the user config rather than general considerations that must apply to every possible Emacs user. --=20 Ihor Radchenko // yantar92, Org mode contributor, Learn more about Org mode at . Support Org development at , or support my work at