Subject: bug#34094: 27.0.50; (wrong-type-argument stringp (require . elec-pair)) with describe-function (and other commands)

From: Tassilo Horn <[email-masked]>
Date: Fri, 18 Jan 2019 06:40:39 +0100

"Daniel Colascione" <[email-masked]> writes:

>> I temporarily added
>>
>>   (advice-add 'call-process :before #'debug)
>>   (advice-add 'start-process :before #'debug)
>>
>> to my ~/.emacs and restarted, and there are several packages which
>> invoke external commands at startup, e.g., Magit trying to figure out
>> the defaults I've set in my ~/.gitconfig.  So that seems to be expected.
>
> IMHO, every time a package does this, it's a bug. Launching programs
> is way too expensive to do on every startup. Packages should be
> caching the results of system introspection somehow.

Well, it starts up in around 3 seconds and I have 60 packages installed
(including dependencies).  And of course, I start emacs just once a day.
I can easily live with that.

Anyway, that discussion doesn't really belong here. :-)

BTW, I just compared startup times with

  time emacs --eval '(kill-emacs)'

which gave 3.2 seconds when I start emacs/src/emacs which uses the
emacs.pdmp file, and it took 4.2 seconds when I start with my symlink
where the emacs.pdmp is probably not used (Loading loadup.el (source)...
dump mode: nil).

When I do the same with -Q, it's 0.2 vs. 1.2 seconds.  So it seems like
the dump helps a lot to startup a naked emacs, but as soon as you have
your own "parallel operating system" in your ~/.emacs (and who
doesn't?), that doesn't really matter anymore.

Bye,
Tassilo