during compilation. This ensures the same load-path is still in effect
during shutdown, when any kill-emacs-hooks that may be set during
compilation are run.
* el-get-byte-compile.el (el-get-byte-compile-from-stdin): setq
load-path.
Move more variables to el-get-custom.el, add requires or
declare-functions as needed.
There were a few places that appeared to be actual bugs: wrong or
missing variable names.
Previously, if the el and elc files had the same modification time,
byte-compilation would not occur, when it actually should have because
it cannot be determined which file was created first.
Before, it would only be cleaned if it was older. Now being exactly
the same age also means it gets cleaned. This is because if they are
the same age, we don't know which came first, so we just have to
assume that the elc file is stale and recreate it.
Also, pass list of files to be byte-compiled as a lisp form on the
command line instead of stdin, and use a more future-proof method of
determining which elisp files the child process needs to load.
Same reason as in 11ef806a. The result of this function is passed to
`el-get-start-process-list` with a `:shell t` option, which results in
shell-quoting. So doing it here is redundant and potentially harmful.
This includes teaching methods that they now work with a symbolp PACKAGE,
some more cleaning up, and some load-path adjustments now that a part of the
code is in a subdirectory (methods).
Also include some of the tests used to convince oneself that the refactoring
didn't break any and all use cases for el-get, with some rough documentation
about how to use them.