all messages for Emacs-related lists mirrored at yhetil.org
 help / color / mirror / code / Atom feed
From: Artur Malabarba <bruce.connor.am@gmail.com>
To: Stefan Monnier <monnier@iro.umontreal.ca>
Cc: "Jorgen Schäfer" <jorgen.schaefer@gmail.com>,
	"Vasilij Schneidermann" <v.schneidermann@gmail.com>,
	emacs-devel <emacs-devel@gnu.org>
Subject: Re: Calling (package-initialize) sooner during initialization
Date: Mon, 13 Apr 2015 23:52:17 +0100	[thread overview]
Message-ID: <CAAdUY-LdKUVGkgCG3D9duX-GypEpvjNP=nT4qSESCHMEGE_eDQ@mail.gmail.com> (raw)
In-Reply-To: <jwvtwwl6kq3.fsf-monnier+emacs@gnu.org>

[-- Attachment #1: Type: text/plain, Size: 1935 bytes --]

On Apr 13, 2015 12:22 AM, "Stefan Monnier" <monnier@iro.umontreal.ca> wrote:
>
> > To make myself a bit more clear, my proposal would mean adding these
> > lines of code to startup.el just before the user init file is loaded:
>
> > (dolist (dir (directory-files "~/.emacs.d/elpa" t "\\`[^.]"))
> >   (when (file-directory-p dir)
> >     (add-to-list 'load-path dir)
> >     (dolist (autoload (directory-files dir t "-autoloads.el\\'"))
> >       (load autoload nil t))))
>
> OK, so it does a minimalist initialization, and the main direct downside
> is that users can't directly "disable" packages, they have to move them
> out of ~/.emacs.d/elpa instead.  That's not a bad tradeoff, indeed.

I'm fine with this solution too (magnums or rackets), but I wouldn't mind
hearing the opinion of people who will be forced to do that.

> There are a few other issues, tho.  For example, the current code first
> looks at all the installed packages and then only allocates the latest
> version of each (modulo pinned versions).  So you can have several
> versions of a given package installed (in different directories or not)
> and package-initialize will know which one to initialize.
>
> If we load all of ~/.emacs.d/elpa this won't handle all the corresponding
> cases anymore.  More specifically, we'll end up initializing a package
> in ~/.emacs.d/elpa even if a more recent version might be installed in
> some other directory that will be provided later.
>
> The main use case would be when the other directory is a system
> directory,

IIUC, There's another situation where this will come up. If a mass package
upgrade fails for some reason, there will be lots of old package
directories hanging around in the elpa subdir.

So we can't just blindly load all those directories, we'll need to actually
parse the packages contained in all of them, version sort them into
something like package-alist, and load only the appropriate ones.

[-- Attachment #2: Type: text/html, Size: 2408 bytes --]

  reply	other threads:[~2015-04-13 22:52 UTC|newest]

Thread overview: 104+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2015-04-12 12:09 Calling (package-initialize) sooner during initialization Jorgen Schäfer
2015-04-12 14:26 ` Artur Malabarba
2015-04-12 14:45   ` Jorgen Schäfer
2015-04-12 20:46     ` Stefan Monnier
2015-04-12 14:40 ` Aneesh Kumar K.V
2015-04-12 16:23   ` Artur Malabarba
2015-04-12 20:44 ` Stefan Monnier
2015-04-12 21:02   ` Jorgen Schäfer
2015-04-12 23:22     ` Stefan Monnier
2015-04-13 22:52       ` Artur Malabarba [this message]
2015-04-13 22:49     ` Artur Malabarba
  -- strict thread matches above, loose matches on Subject: below --
2015-04-18 12:25 Taylan Ulrich Bayırlı/Kammer
2015-04-18 13:32 ` Artur Malabarba
2015-04-18 14:24   ` Nic Ferrier
2015-04-18 15:16     ` Taylan Ulrich Bayırlı/Kammer
2015-04-18 17:35       ` Artur Malabarba
2015-04-18 18:25         ` Nic Ferrier
2015-04-18 18:48           ` Artur Malabarba
2015-04-18 15:11   ` Taylan Ulrich Bayırlı/Kammer
2015-04-18 17:16   ` Stefan Monnier
2015-04-18 17:56     ` Dmitry Gutov
2015-04-18 18:16       ` Taylan Ulrich Bayırlı/Kammer
2015-04-18 18:32         ` Artur Malabarba
2015-04-19  0:24           ` Drew Adams
2015-04-19  0:38             ` Artur Malabarba
2015-04-18 18:24       ` Artur Malabarba
2015-04-18 18:32         ` Dmitry Gutov
2015-04-19  8:19           ` Artur Malabarba
2015-04-18 18:04     ` Taylan Ulrich Bayırlı/Kammer
2015-04-18 18:23       ` Artur Malabarba
2015-04-19  3:07       ` Stefan Monnier
2015-04-19  6:44       ` Philipp Stephani
2015-04-19  8:11         ` Artur Malabarba
2015-04-18 22:37     ` chad
2015-04-19  6:40     ` Philipp Stephani
2015-04-19  8:04       ` Artur Malabarba
2015-04-20  0:43         ` Stefan Monnier
2015-04-20  7:54           ` Taylan Ulrich Bayırlı/Kammer
2015-04-20 12:42             ` Stefan Monnier
2015-04-20 14:31               ` Taylan Ulrich Bayırlı/Kammer
2015-04-20 16:01                 ` Artur Malabarba
2015-04-20 17:29                   ` chad
2015-04-20 18:38                     ` Artur Malabarba
2015-04-20 19:40                       ` chad
2015-04-20 19:07                 ` Stefan Monnier
2015-04-20 15:19               ` Mark Oteiza
2015-04-27  9:52               ` Thierry Volpiatto
2015-04-27 11:03                 ` Taylan Ulrich Bayırlı/Kammer
2015-04-27 14:01                   ` Drew Adams
2015-04-27 12:32                 ` Artur Malabarba
2015-04-27 14:10                   ` Drew Adams
2015-04-27 14:15                     ` Artur Malabarba
2015-04-27 14:36                   ` Thierry Volpiatto
2015-04-27 12:46                 ` Stefan Monnier
2015-04-27 13:43                   ` Andy Moreton
2015-04-27 15:46                     ` Stefan Monnier
2015-04-28 10:11                       ` Artur Malabarba
2015-04-28  7:25                     ` Oleh Krehel
2015-04-28  7:39                       ` Artur Malabarba
2015-04-28  7:42                         ` Oleh Krehel
2015-04-28 14:54                           ` Wolfgang Jenkner
2015-04-28 16:46                             ` Drew Adams
2015-04-28 17:29                               ` Wolfgang Jenkner
2015-04-28 18:52                                 ` Artur Malabarba
2015-04-29  1:20                                   ` Stefan Monnier
2015-04-28 15:32                           ` raman
2015-04-29  8:25                           ` Thierry Volpiatto
2015-04-28 15:26                       ` raman
2015-04-27 14:13                   ` Drew Adams
2015-04-27 14:46                   ` Thierry Volpiatto
2015-04-27 15:15                     ` Artur Malabarba
2015-04-27 15:52                     ` Stefan Monnier
2015-04-28  0:30                       ` Stephen J. Turnbull
2015-04-29  8:01                       ` Thierry Volpiatto
2015-04-29 13:09                         ` Stefan Monnier
2015-04-28  0:25                     ` Stephen J. Turnbull
2015-04-11 23:10 Vasilij Schneidermann
2015-04-12  1:00 ` Artur Malabarba
2015-04-12 16:46   ` Mark Oteiza
2015-04-12 19:43     ` Artur Malabarba
2015-04-12 20:05       ` Mark Oteiza
2015-04-12 20:28         ` Artur Malabarba
2015-04-12  3:56 ` Stefan Monnier
2015-04-12  9:58   ` Artur Malabarba
2015-04-12 12:02     ` Stefan Monnier
     [not found]   ` <20150412082125.GA490@odonien>
2015-04-12 10:07     ` Vasilij Schneidermann
2015-04-12 10:28       ` Artur Malabarba
2015-03-30 19:01 Artur Malabarba
2015-03-30 20:44 ` Stefan Monnier
2015-03-31 10:52   ` Artur Malabarba
2015-03-31 12:34     ` Stefan Monnier
2015-04-18 10:46   ` Ted Zlatanov
2015-03-31  8:53 ` Thierry Volpiatto
2015-03-31 10:55   ` Artur Malabarba
2015-03-31 12:29   ` Stefan Monnier
2015-03-31 12:48     ` Dmitry Gutov
2015-03-31 13:19     ` Thierry Volpiatto
2015-03-31 13:47       ` Thierry Volpiatto
2015-03-31 14:03         ` Thierry Volpiatto
2015-03-31 14:56           ` Artur Malabarba
2015-04-01  6:04             ` Thierry Volpiatto
2015-03-31 14:51 ` Sebastian Wiesner
2015-03-31 15:40   ` Artur Malabarba
2015-03-31 20:46   ` Stefan Monnier

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to='CAAdUY-LdKUVGkgCG3D9duX-GypEpvjNP=nT4qSESCHMEGE_eDQ@mail.gmail.com' \
    --to=bruce.connor.am@gmail.com \
    --cc=emacs-devel@gnu.org \
    --cc=jorgen.schaefer@gmail.com \
    --cc=monnier@iro.umontreal.ca \
    --cc=v.schneidermann@gmail.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
Code repositories for project(s) associated with this external index

	https://git.savannah.gnu.org/cgit/emacs.git
	https://git.savannah.gnu.org/cgit/emacs/org-mode.git

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.