unofficial mirror of help-gnu-emacs@gnu.org
 help / color / mirror / Atom feed
* Updating Elisp files while Emacs is running
@ 2016-03-14 13:41 Philipp Stephani
  2016-03-14 14:48 ` Phillip Lord
                   ` (3 more replies)
  0 siblings, 4 replies; 14+ messages in thread
From: Philipp Stephani @ 2016-03-14 13:41 UTC (permalink / raw)
  To: help-gnu-emacs@gnu.org

Hi,

OS-level package managers such as Debian's dpkg generally replace files
unconditionally when upgrading. Typically this is not a problem because
running binaries will continue to use the in-memory image, and daemons can
get restarted or sent a signal without user interaction. However, for Emacs
the situation seems different: Emacs not only needs its (dumped) binary,
but also relies on Elisp files. For Elisp files already loaded when the
upgrade is running this typically doesn't cause problems, but when Elisp
files aren't already loaded, replacing them causes problems because the
directories containing them are versioned (see e.g. lispdir in configure.ac),
so that when the version changes (even for minor changes, such as updating
from the recent pretest-1 to pretest-2), the files are no longer at the
expected location, and libraries can't be loaded any more, either manually
or via autoloads. Similar things happen for system-wide ELPA packages (in
the package-directory-list directories), because the names of these
directories are also versioned. How could this be changed so that
unattended upgrades changing the Emacs version are possible while Emacs is
running? Could the Elisp file directories get names that don't include the
version number (maybe hidden behind a configure option)? Is it possible to
install system-wide ELPA packages into directories that don't contain
version numbers? Or is there another way, e.g. using a signal to
reinitialize the load-path and the package system? I'm aware these
suggestions would still cause issues if e.g. Elisp files get moved around
or the byte code format changes, but that seems to be comparatively rare.

Thanks,
Philipp


^ permalink raw reply	[flat|nested] 14+ messages in thread

end of thread, other threads:[~2016-03-15 21:51 UTC | newest]

Thread overview: 14+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2016-03-14 13:41 Updating Elisp files while Emacs is running Philipp Stephani
2016-03-14 14:48 ` Phillip Lord
2016-03-14 17:21   ` Philipp Stephani
2016-03-14 18:13     ` Phillip Lord
2016-03-14 18:41       ` Philipp Stephani
2016-03-14 19:58     ` Bob Proulx
2016-03-14 16:48 ` Eli Zaretskii
2016-03-14 17:22   ` Philipp Stephani
2016-03-14 18:04     ` Eli Zaretskii
2016-03-14 18:44       ` Philipp Stephani
2016-03-14 18:55         ` Eli Zaretskii
     [not found] ` <mailman.7507.1457966906.843.help-gnu-emacs@gnu.org>
2016-03-15  7:39   ` Joost Kremers
2016-03-15 13:01 ` Stefan Monnier
2016-03-15 21:51   ` Bob Proulx

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).