Since Emacs 27 the package cl is deprecated, the replacement is
cl-lib, which is available since Emacs 24.3.
This patch replaces cl by cl-lib and drops support for Emacs versions
less than 24.3. Dropping older Emacsen is required, because cl-lib is
a builtin starting from version 24.3 and doesn't need an extra package
from ELPA.
Testcases for past issues still contain cl. Most of them seem to be
broken and need further investigation.
This patch is tested with test/run-ert.sh, which outputs:
Ran 10 tests, 10 results as expected, 0 unexpected (2021-01-30 13:24:54+0100, 0.672122 sec)
1 expected failures
and manually by daily usage for a month now.
* el-get-autoloading.el (el-get-remove-autoloads):
(el-get-update-autoloads): let-bind `recentf-exclude' to avoid adding
.loaddefs to the recentf list.
update-directory-autoloads ends up thinking it is a "secondary" autoload
file, so it puts MD5 checksums instead of timestamps.
* el-get-autoloading.el (el-get-update-autoloads): use
find-buffer-visiting instead of get-file-buffer to detect buffers
visiting .loaddefs via non-standard path, and call kill-buffer if we
find such buffers.
package.el uses <pkg-name>-autoloads.el as the destination for autoloads
generated from cookies. Meaning that during a MELPA bootstrap install
these get appended to el-get-autoloads.el. Although it's currently
harmless during bootstrap, better to avoid any possible future problems.