GNU bug report logs -
#19390
25.0.50; `package-activate' is too slow
Previous Next
Reported by: Dmitry Gutov <dgutov <at> yandex.ru>
Date: Mon, 15 Dec 2014 17:36:01 UTC
Severity: normal
Found in version 25.0.50
Done: Dmitry Gutov <dgutov <at> yandex.ru>
Bug is archived. No further changes may be made.
Full log
View this message in rfc822 format
In retrospect, the cleanest way to do do all this would have been to
build this reloading into `require' and `provide' (something would
have to be done with autoloads too). Then package.el could go back to
not worrying about it, and most of this discussion would be moot.
The only problem I see with this is that we might have (much smaller)
performance issues with `package-initialize` again, since `require'
has no way of knowing whether it was invoked from inside
`package-initialize'. The issue would be smaller because handling it
inside `require' could be done more intelligently.
2014-12-18 13:39 GMT-02:00 Artur Malabarba <bruce.connor.am <at> gmail.com>:
> I see what you meant now. The RELOAD argument should not be passed to
> package-activate-1 when activating dependencies. That should fix the
> issue.
>
> The dependency will already have been reloaded when (if) it was upgraded.
>
> 2014-12-18 12:47 GMT-02:00 Dmitry Gutov <dgutov <at> yandex.ru>:
>> Stefan Monnier <monnier <at> iro.umontreal.ca> writes:
>>
>>>> Aside from it, if we compare with the alternative implementation
>>>> suggestions, the current one reloads all dependencies, even those that
>>>> haven't been (re)installed during the current session.
>>>
>>> It sounds serious, but I don't understand what you're referring to.
>>> Can you give an example?
>>
>> It reloads all dependencies of the package that is currently being
>> installed.
>>
>> Try this:
>>
>> (advice-add 'package-activate-1 :before
>> (lambda (pkg-desc &optional reload)
>> (message "package-activate-1 called with %s %s"
>> (package-desc-name pkg-desc) reload))
>> '((name . "Parrot arguments")))
>>
>> Then install company (if your haven't yet), and then, with Melpa in
>> package archives, install company-math. You'll see this in *Messages*:
>>
>> package-activate-1 called with company force
>> package-activate-1 called with math-symbol-lists force
>> package-activate-1 called with company-math force
This bug report was last modified 10 years and 236 days ago.
Previous Next
GNU bug tracking system
Copyright (C) 1999 Darren O. Benham,
1997,2003 nCipher Corporation Ltd,
1994-97 Ian Jackson.