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.
* .travis.yml:
* test/travis-ci.sh: Don't treat byte-compilation warnings as errors for
downloaded package.el and ert.
* el-get-dependencies.el (el-get-auto-dependencies): Don't use
`read-from-whole-string', it's obsolete in Emacs 25.
* el-get-list-packages.el (el-get-package-menu-sort-by-column): Don't
assume `mouse-select-window' is fbound, it may not be for non-X builds.
Sometimes there will be multiple packages in the same repository that
depend on each other, so we shouldn't tell el-get to go look for them in
another repository.
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.
flet is marked obsolete in 24.3 resulting in quite a lot of annoying
messages. The intended replacement is cl-flet, but that is unavailable
in earlier emacsen, so we can't use that either.