[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: Package cl is deprecated
From: |
Hongyi Zhao |
Subject: |
Re: Package cl is deprecated |
Date: |
Wed, 28 Jul 2021 22:15:37 +0800 |
On Wed, Jul 28, 2021 at 10:04 PM Thibaut Verron
<thibaut.verron@gmail.com> wrote:
>
> On 28/07/2021 15:36, Hongyi Zhao wrote:
> > On Wed, Jul 28, 2021 at 9:33 PM Hongyi Zhao <hongyi.zhao@gmail.com> wrote:
> >> On Wed, Jul 28, 2021 at 9:23 PM Thibaut Verron <thibaut.verron@gmail.com>
> >> wrote:
> >>>
> >>> On 28/07/2021 15:03, Hongyi Zhao wrote:
> >>>> On Wed, Jul 28, 2021 at 6:04 PM Jean-Christophe Helary
> >>>> <lists@traduction-libre.org> wrote:
> >>>>>
> >>>>>> On Jul 28, 2021, at 18:54, Thibaut Verron <thibaut.verron@gmail.com>
> >>>>>> wrote:
> >>>>>>
> >>>>>> On 28/07/2021 11:46, Hongyi Zhao wrote:
> >>>>>>> On Wed, Jul 28, 2021 at 5:33 PM Thibaut Verron
> >>>>>>> <thibaut.verron@gmail.com> wrote:
> >>>>>>>> On 28/07/2021 11:23, Hongyi Zhao wrote:
> >>>>>>>>> When I start Emacs, I always notice the following message in
> >>>>>>>>> *Messages* buffer:
> >>>>>>>>>
> >>>>>>>>> Package cl is deprecated
> >>>>>>>>>
> >>>>>>>>> Any hints for eliminating it?
> >>>>>>>> If you have (require 'cl) somewhere in your init file, replace it
> >>>>>>>> with
> >>>>>>>> (require 'cl-lib). You might need to change some macro calls to use
> >>>>>>>> cl-<name> instead of <name>.
> >>>>>>> $ egrep 'require[ ]*'\''cl' .emacs.d/init.el
> >>>>>>> (require 'cl-lib)
> >>>>>> Then it's from a package and you need to identify it.
> >>>>>>
> >>>>>> You can try (untested):
> >>>>>>
> >>>>>> find .emacs.d/ -name "*.el" -exec grep "(require 'cl)" {} \;
> >>>>> find .emacs.d/ -name "*.el" -exec grep "(require 'cl)" {} \; -print
> >>>> There are so many matches:
> >>>>
> >>>> $ find .emacs.d/ -name "*.el" -exec grep -q "(require 'cl)" {} \;
> >>>> -print 2>/dev/null | sort -u | wc -l
> >>>> 40
> >>>>
> >>>> So this method is basically useless for finding the problem.
> >>> I just tried it, indeed quite a few packages contain some form of
> >>> (require 'cl) as a backward-compatibility tool (52 matches in my case).
> >>> Most of those are test files which are never loaded in a normal emacs
> >>> session.
> >>>
> >>> To narrow the search, you can use egrep -q "^\(require 'cl\)" instead.
> >>> In my .emacs, the matches go from 52 to 15. Interestingly enough,
> >>> exactly one of them is loaded at init time (key-combo.el), without any
> >>> warning.
> >> Strange, I found nothing with this enhanced pattern:
> >>
> >> $ find .emacs.d/ -type f -name "*.el" -exec grep -q "^[ ]*\([
> >> ]*require[ ]+'cl[ ]*\)" {} \; -print | wc -l
> >> 0
> > Sorry, egrep should be used:
> >
> > $ find .emacs.d/ -type f -name "*.el" -exec egrep -q "^[ ]*\([
> > ]*require[ ]+'cl[ ]*\)" {} \; -print | egrep -v '[/]tests?[/]'
> > .emacs.d/straight/repos/dash.el/dash.el
> > .emacs.d/straight/repos/dash.el/dev/examples.el
> > .emacs.d/straight/repos/stardiviner-sdcv.el/sdcv.el
> > .emacs.d/straight/repos/showtip/showtip.el
> > .emacs.d/straight/repos/unicode-escape.el/unicode-escape.el
> > .emacs.d/straight/repos/use-package/use-package-tests.el
> > .emacs.d/straight/repos/macrostep/lib/cl-lib.el
> > .emacs.d/straight/repos/macrostep/lib/ert.el
> > .emacs.d/straight/repos/emacs-websocket/websocket-functional-test.el
> > .emacs.d/straight/repos/s.el/dev/ert.el
>
> The point of the regexp was to exclude files which have something
> (including indentation) before the form, if you allow [ ]* you lose
> that. That's the case in dash.el for example.
>
> In any case, the number of candidates is now small enough that you can
> examine them. The dev/ and lib/ folders can probably be safely ignored to.
If so, nothing seems responsible for the problem:
$ find .emacs.d/ -type f -name "*.el" -exec egrep -q "^\(require
'cl\)" {} \; -print |egrep -v '[/]tests?[/]'
.emacs.d/straight/repos/use-package/use-package-tests.el
.emacs.d/straight/repos/macrostep/lib/cl-lib.el
.emacs.d/straight/repos/emacs-websocket/websocket-functional-test.el
Hongyi
--
Assoc. Prof. Hongyi Zhao <hongyi.zhao@gmail.com>
Theory and Simulation of Materials
Hebei Vocational University of Technology and Engineering
No. 473, Quannan West Street, Xindu District, Xingtai, Hebei province
- Re: [External] : Re: Package cl is deprecated, (continued)
- Re: Package cl is deprecated, Stefan Monnier, 2021/07/30
- Re: Package cl is deprecated, Hongyi Zhao, 2021/07/28
- Re: Package cl is deprecated, Thibaut Verron, 2021/07/28
- Re: Package cl is deprecated, Hongyi Zhao, 2021/07/28
- Re: Package cl is deprecated, Hongyi Zhao, 2021/07/28
- Re: Package cl is deprecated, Thibaut Verron, 2021/07/28
- Re: Package cl is deprecated,
Hongyi Zhao <=
- Re: Package cl is deprecated, Thibaut Verron, 2021/07/28
- Re: Package cl is deprecated, Thibaut Verron, 2021/07/28
- Re: Package cl is deprecated, Hongyi Zhao, 2021/07/28
- RE: [External] : Re: Package cl is deprecated, Drew Adams, 2021/07/28
- Re: [External] : Re: Package cl is deprecated, Hongyi Zhao, 2021/07/28
- Re: [External] : Re: Package cl is deprecated, Arthur Miller, 2021/07/29
- Re: [External] : Re: Package cl is deprecated, Hongyi Zhao, 2021/07/29
- Re: Package cl is deprecated, Marcin Borkowski, 2021/07/28
- Re: Package cl is deprecated, Hongyi Zhao, 2021/07/28