Your message dated Thu, 27 May 2010 12:40:56 +0200
with message-id <[email protected]>
and subject line Re: Bug#583329: Overrides emacs23's newer elisp: ispell.el,
flyspell.el
has caused the Debian Bug report #583329,
regarding Overrides emacs23's newer elisp: ispell.el, flyspell.el
to be marked as done.
This means that you claim that the problem has been dealt with.
If this is not the case it is now your responsibility to reopen the
Bug report if necessary, and/or fix the problem forthwith.
(NB: If you are a system administrator and have no idea what this
message is talking about, this may indicate a serious mail system
misconfiguration somewhere. Please contact [email protected]
immediately.)
--
583329: http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=583329
Debian Bug Tracking System
Contact [email protected] with problems
--- Begin Message ---
Package: dictionaries-common
Version: 1.5.5
Severity: normal
File: /etc/emacs/site-start.d/50dictionaries-common.el
Usertags: emacs23-load-path-shadows
This package appears to provide old versions[0] of elisp libraries
that GNU Emacs 23 ships, and instructs GNU Emacs 23 to prefer these
old versions to its own.
Unfortunately, simply adding emacs23 to skip-emacs-flavors-list will
do the Wrong Thing, because you also provide a debian-ispell library,
which appears to provide functionality NOT already in GNU Emacs 23.
Ideas:
- change postinst so that SOME site-lisp directories get flyspell,
ispell and debian-ispell, and some only get debian-ispell.
- append (instead of prepending) to load-path, so that your
ispell/flyspell get lowest priority.
- keep your flyspell and ispell copies up to date, and hope that
doesn't break older emacsen (probably a bad idea).
PS: you should use "mode: emacs-lisp", not "mode: lisp" for elisp
files. That should be the default behaviour anyway, so I suggest
removing the local variables stanza entirely.
[0] The libraries aren't versioned, but the copyright is certainly
older.
$ find /usr/share/emacs/ \( -name ispell.* -o -name flyspell.* \) -exec
zgrep -A1 Copyright {} +
/usr/share/emacs/site-lisp/dictionaries-common/ispell.el:;; Copyright (C)
1994, 1995, 1997, 1998, 1999, 2000, 2001, 2002, 2003,
/usr/share/emacs/site-lisp/dictionaries-common/ispell.el:;; 2004, 2005,
2006, 2007, 2008, 2009 Free Software Foundation, Inc.
/usr/share/emacs/site-lisp/dictionaries-common/flyspell.el:;; Copyright (C)
1998, 2000, 2001, 2002, 2003, 2004,
/usr/share/emacs/site-lisp/dictionaries-common/flyspell.el:;; 2005, 2006,
2007, 2008, 2009 Free Software Foundation, Inc.
/usr/share/emacs/23.2/lisp/textmodes/ispell.el.gz:;; Copyright (C) 1994,
1995, 1997, 1998, 1999, 2000, 2001, 2002, 2003,
/usr/share/emacs/23.2/lisp/textmodes/ispell.el.gz:;; 2004, 2005, 2006,
2007, 2008, 2009, 2010 Free Software Foundation, Inc.
/usr/share/emacs/23.2/lisp/textmodes/flyspell.el.gz:;; Copyright (C) 1998,
2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007,
/usr/share/emacs/23.2/lisp/textmodes/flyspell.el.gz:;; 2008, 2009, 2010
Free Software Foundation, Inc.
-- System Information:
Debian Release: squeeze/sid
APT prefers unstable
APT policy: (500, 'unstable'), (1, 'experimental')
Architecture: amd64 (x86_64)
Kernel: Linux 2.6.34 (SMP w/2 CPU cores)
Locale: LANG=en_AU.utf8, LC_CTYPE=en_AU.utf8 (charmap=UTF-8)
Shell: /bin/sh linked to /bin/dash
Versions of packages dictionaries-common depends on:
ii debconf [debconf-2.0] 1.5.32 Debian configuration management sy
ii libtext-iconv-perl 1.7-2 converts between character sets in
dictionaries-common recommends no packages.
Versions of packages dictionaries-common suggests:
ii emacsen-common 1.4.19 Common facilities for all emacsen
ii ispell 3.1.20.0-7 International Ispell (an interacti
pn jed-extra <none> (no description available)
-- debconf information:
* dictionaries-common/default-wordlist: british (British English)
dictionaries-common/invalid_debconf_value:
dictionaries-common/ispell-autobuildhash-message:
dictionaries-common/selecting_ispell_wordlist_default:
* dictionaries-common/default-ispell: british (British English)
dictionaries-common/old_wordlist_link: true
dictionaries-common/move_old_usr_dict: true
dictionaries-common/remove_old_usr_dict_link: false
--- End Message ---
--- Begin Message ---
On Thu, May 27, 2010 at 03:07:53PM +1000, Trent W. Buck wrote:
> Package: dictionaries-common
> Version: 1.5.5
> Severity: normal
> File: /etc/emacs/site-start.d/50dictionaries-common.el
> Usertags: emacs23-load-path-shadows
>
> This package appears to provide old versions[0] of elisp libraries
> that GNU Emacs 23 ships, and instructs GNU Emacs 23 to prefer these
> old versions to its own.
Hi, and thanks for your detailed report,
Unlike it may look, flyspell.el and ispell.el shipped with Debian are
those of emacs23 before FSF emacs changed from using CVS to use bzr.
ispell.el is from 20090721 and flyspell.el is from 20090625. All further
relevant changes have been included in versions shipped by Debian, and even
more changes that were not shipped with emacs-23.2.
That means that in practice flyspell.el and ispell.el shipped with Debian
are more recent than those from emacs 23.2, and so I am closing this bug
report.
If you miss anything in Debian flyspell.el and ispell.el, please notify.
I am waiting until I have some time to regenerate Debian flyspell.el and
ispell.el after last versions from FSF emacs. I first want to integrate
upstream some of the Debian changes regarding XEmacs (I am part of FSF
Emacs upstream regarding flyspell.el and ispell.el) so, even if it does not
work with XEmacs out of the box, the number of Debian related changes to
make it work is smaller. Since FSF Emacs 23.3 branch is currently frozen I
am only committing to trunk changes that may go into the actual release.
Note that we need to modify pristine flyspell.el and ispell.el for better
integration with Debian spellchecking dictionaries and to try having a
consistent behavior from Emacs and XEmacs. Doing this in a less intrusive
way is also in my TODO list.
> Unfortunately, simply adding emacs23 to skip-emacs-flavors-list will
> do the Wrong Thing, because you also provide a debian-ispell library,
> which appears to provide functionality NOT already in GNU Emacs 23.
The problem is that Emacs 23.2 (not XEmacs) ships a subdirs.el file in
/usr/share/emacs/23.2/site-lisp and that makes original files (links) and
libraries to always be in the path. Debian emacsen-common policy requires
libs and elisp files to be put in that kind of dirs, and because of the
subdirs.el what you put there cannot be ignored. I complained about this
some time ago, but had no luck.
I have sometimes consdered breaking emacsen policy by using something like
a /usr/share/emacs/23.2/debian-site-lisp dir to make sure no subdirs.el
is acting there, so an extension can be disabled just from the /etc file.
Note that path is explicitly added from /etc file.
> Ideas:
>[...]
> - keep your flyspell and ispell copies up to date, and hope that
> doesn't break older emacsen (probably a bad idea).
This in practice what we do, so we use single up-to-date flyspell.el and
ispell.el patched to work with Emacs 23, XEmacs (and currently even with
lenny Emacs21 and Emacs 22, something to be dropped soon). Patches must not
limit behavior neither in Emacs23 nor in the other flavors.
> PS: you should use "mode: emacs-lisp", not "mode: lisp" for elisp
> files. That should be the default behaviour anyway, so I suggest
> removing the local variables stanza entirely.
Thanks for the suggestion, this has been here for long time and I did not
even notice.
Again, if you miss something from bleeding edge FSF Emacs flyspell.el and
ispell.el, please let me know. Suggestions about the system are greatly
appreciated.
Thanks a lot for our feedback.
--
Agustin
--- End Message ---