[Python-apps-team] Bug#735743: Bug#735743: pylint fails to install in emacs : ERROR: pylint is broken

Agustin Martin agmartin at debian.org
Fri Jan 24 14:25:10 UTC 2014


On Thu, Jan 23, 2014 at 09:30:42PM +0100, Sébastien Kalt wrote:
> Hi,
> 
> 
> 2014/1/18 Sandro Tosi <morph at debian.org>
> >
> > Hello,
> > what version of emacs23 do you have?
> 
>  # dpkg -l |grep emacs23
> ii  emacs23                                  23.4+1-4.1+b1
>      amd64        The GNU Emacs editor (with GTK+ user interface)
> [...]
> 
> 2014/1/20 Agustin Martin <agmartin at debian.org>
> >
> > On Sat, Jan 18, 2014 at 04:53:52PM +0100, Sandro Tosi wrote:
> > > Hello,
> > > what version of emacs23 do you have?
> >
> > Recently had this issue in dictionaries-common.
> >
> > Is emacsen-common version what matters here,
> # dpkg -l |grep emacsen-common
> ii  emacsen-common                           2.0.7
>      all          Common facilities for all emacsen
> 
> If I downgrade emacsen-common to stable version (2.0.5), I still have an error :
> 
> Preparing to unpack .../pylint_1.1.0-1_all.deb ...
> given is experimental at /usr/lib/emacsen-common/emacs-package-install line 43.
> when is experimental at /usr/lib/emacsen-common/emacs-package-install line 45.
> when is experimental at /usr/lib/emacsen-common/emacs-package-install line 46.
> Unpacking pylint (1.1.0-1) ...
> Processing triggers for man-db (2.6.5-3) ...
> Setting up pylint (1.1.0-1) ...
> given is experimental at /usr/lib/emacsen-common/emacs-package-install line 43.
> when is experimental at /usr/lib/emacsen-common/emacs-package-install line 45.
> when is experimental at /usr/lib/emacsen-common/emacs-package-install line 46.
> Install pylint for emacs
> Install pylint for emacs23
> install/pylint: Handling install for emacsen flavor emacs23
>  [...]

Hi,

This should have been fixed in emacsen-common 2.0.6, but that version
enabled the other check.

Please consider attached patch. Since pylint uses dh_installemacsen that
compat file should be installed in the right place and bug fixed for 2.0.6.

> Loading 50pylint...
> Loading pylint...
> Error while loading 50pylint: Symbol's function definition is void:
> define-compilation-mode

It is a lisp macro defined in Emacs compile.el (at least in emacs-snapshot)
and is required by pylint.el. Do not understand why it is not pulled, if not
present `require' should have complained about it.

Also note that pylint byte-compilation is too verbose and loads site files,
which may not be needed for byte-compilation or even interfere with it. 
Consider passing -no-site-file (should work for both Emacs and XEmacs)
unless site files are really needed.

In particular /etc/emacs/site-start.d/50pylint.el seems to unconditionally
load pylint, even if not dealing with a python file, thus loading pylint.el
itself during pylint.el byte compilation

Loading /etc/emacs/site-start.d/50pylint.el (source)...

I do not know the pylint internals, but something like what is suggested in
pylint.el

(autoload 'pylint "pylint")
(add-hook 'python-mode-hook 'pylint-add-menu-items)
(add-hook 'python-mode-hook 'pylint-add-key-bindings)

may be a better alternative.

Regards,

-- 
Agustin
-------------- next part --------------
A non-text attachment was scrubbed...
Name: 0001-debian-pylint.emacsen-install-New-file-with-zero-val.patch
Type: text/x-diff
Size: 610 bytes
Desc: not available
URL: <http://lists.alioth.debian.org/pipermail/python-apps-team/attachments/20140124/fffcdb3e/attachment-0001.patch>


More information about the Python-apps-team mailing list