GNU bug report logs - #25552
26.0.50; load cl unintendedly

Previous Next

Packages: mh-e, emacs;

Reported by: Katsumi Yamaoka <yamaoka <at> jpl.org>

Date: Fri, 27 Jan 2017 01:26:02 UTC

Severity: normal

Fixed in version 26.1

Done: Glenn Morris <rgm <at> gnu.org>

Bug is archived. No further changes may be made.

To add a comment to this bug, you must first unarchive it, by sending
a message to control AT debbugs.gnu.org, with unarchive 25552 in the body.
You can then email your comments to 25552 AT debbugs.gnu.org in the normal way.

Toggle the display of automated, internal messages from the tracker.

View this report as an mbox folder, status mbox, maintainer mbox


Report forwarded to bug-gnu-emacs <at> gnu.org:
bug#25552; Package emacs. (Fri, 27 Jan 2017 01:26:02 GMT) Full text and rfc822 format available.

Acknowledgement sent to Katsumi Yamaoka <yamaoka <at> jpl.org>:
New bug report received and forwarded. Copy sent to bug-gnu-emacs <at> gnu.org. (Fri, 27 Jan 2017 01:26:02 GMT) Full text and rfc822 format available.

Message #5 received at submit <at> debbugs.gnu.org (full text, mbox):

From: Katsumi Yamaoka <yamaoka <at> jpl.org>
To: bug-gnu-emacs <at> gnu.org
Subject: 26.0.50; load cl unintendedly
Date: Fri, 27 Jan 2017 10:24:57 +0900
Recipe:

emacs -Q
M-x load-library RET gnus RET
C-h v gnus-summ SPC
C-g

Then (featurep 'cl) gets to return t.  It is because:
ûgnus.el has autoload settings that load gnus-mh for gnus-summ*.
ûgnus-mh.el requires mh-e.
ûmh-e.el requires mh-compat.
ûmh-compat.el requires mh-acros.
ûmh-acros.el requires cl unconditionally.
û`C-h v' seems to load things related to "gnus-summ".

I no longer have use for mh-e, so I added this to ~/.emacs:
(provide 'mh-e)

Regards,




Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#25552; Package emacs. (Fri, 27 Jan 2017 01:51:01 GMT) Full text and rfc822 format available.

Message #8 received at 25552 <at> debbugs.gnu.org (full text, mbox):

From: Katsumi Yamaoka <yamaoka <at> jpl.org>
To: 25552 <at> debbugs.gnu.org
Subject: Re: bug#25552: 26.0.50; load cl unintendedly
Date: Fri, 27 Jan 2017 10:50:17 +0900
On Fri, 27 Jan 2017 10:24:57 +0900, Katsumi Yamaoka wrote:
> ûgnus.el has autoload settings that load gnus-mh for gnus-summ*.
> ûgnus-mh.el requires mh-e.
> ûmh-e.el requires mh-compat.
> ûmh-compat.el requires mh-acros.
> ûmh-acros.el requires cl unconditionally.
> û`C-h v' seems to load things related to "gnus-summ".

Oops.  "û" here was "・" in a message draft when I was writing.
It might be due to a recent change in master, so I'm going to
look into it anyway...




Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#25552; Package emacs. (Sun, 29 Jan 2017 17:03:02 GMT) Full text and rfc822 format available.

Message #11 received at 25552 <at> debbugs.gnu.org (full text, mbox):

From: npostavs <at> users.sourceforge.net
To: Katsumi Yamaoka <yamaoka <at> jpl.org>
Cc: 25552 <at> debbugs.gnu.org
Subject: Re: bug#25552: 26.0.50; load cl unintendedly
Date: Sun, 29 Jan 2017 12:03:49 -0500
Katsumi Yamaoka <yamaoka <at> jpl.org> writes:

> Recipe:
>
> emacs -Q
> M-x load-library RET gnus RET

Actually this step isn't needed.

> C-h v gnus-summ SPC
> C-g
>
> Then (featurep 'cl) gets to return t.  It is because:
> ûgnus.el has autoload settings that load gnus-mh for gnus-summ*.
> ûgnus-mh.el requires mh-e.
> ûmh-e.el requires mh-compat.
> ûmh-compat.el requires mh-acros.
> ûmh-acros.el requires cl unconditionally.
> û`C-h v' seems to load things related to "gnus-summ".

It's a new feature in master:

    ** New var 'definition-prefixes' is a hash table mapping prefixes to
    the files where corresponding definitions can be found.  This can be
    used to fetch definitions that are not yet loaded, for example for
    'C-h f'.

gnus-mh.el defines some things with prefix "gnus-", so completing a
string with such a prefix loads that file.





Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#25552; Package emacs. (Mon, 30 Jan 2017 03:38:01 GMT) Full text and rfc822 format available.

Message #14 received at 25552 <at> debbugs.gnu.org (full text, mbox):

From: Mark Oteiza <mvoteiza <at> udel.edu>
To: npostavs <at> users.sourceforge.net
Cc: Katsumi Yamaoka <yamaoka <at> jpl.org>, 25552 <at> debbugs.gnu.org
Subject: Re: bug#25552: 26.0.50; load cl unintendedly
Date: Sun, 29 Jan 2017 22:37:34 -0500
npostavs <at> users.sourceforge.net writes:

> Katsumi Yamaoka <yamaoka <at> jpl.org> writes:
>> C-h v gnus-summ SPC
>> C-g
>>
>> Then (featurep 'cl) gets to return t.  It is because:
>> ûgnus.el has autoload settings that load gnus-mh for gnus-summ*.
>> ûgnus-mh.el requires mh-e.
>> ûmh-e.el requires mh-compat.
>> ûmh-compat.el requires mh-acros.
>> ûmh-acros.el requires cl unconditionally.
>> û`C-h v' seems to load things related to "gnus-summ".
>
> It's a new feature in master:
>
>     ** New var 'definition-prefixes' is a hash table mapping prefixes to
>     the files where corresponding definitions can be found.  This can be
>     used to fetch definitions that are not yet loaded, for example for
>     'C-h f'.
>
> gnus-mh.el defines some things with prefix "gnus-", so completing a
> string with such a prefix loads that file.

I guess this explains why C-h f edt TAB gets me stuck in EDT's key
configuration wizard.




bug reassigned from package 'emacs' to 'emacs,mh-e'. Request was from Glenn Morris <rgm <at> gnu.org> to control <at> debbugs.gnu.org. (Mon, 30 Jan 2017 21:38:01 GMT) Full text and rfc822 format available.

bug No longer marked as found in versions 26.0.50. Request was from Glenn Morris <rgm <at> gnu.org> to control <at> debbugs.gnu.org. (Mon, 30 Jan 2017 21:38:01 GMT) Full text and rfc822 format available.

Information forwarded to bug-gnu-emacs <at> gnu.org, mh-e-devel <at> lists.sourceforge.net:
bug#25552; Package emacs,mh-e. (Mon, 30 Jan 2017 22:36:01 GMT) Full text and rfc822 format available.

Message #21 received at 25552 <at> debbugs.gnu.org (full text, mbox):

From: Glenn Morris <rgm <at> gnu.org>
To: Katsumi Yamaoka <yamaoka <at> jpl.org>
Cc: 25552 <at> debbugs.gnu.org
Subject: Re: bug#25552: 26.0.50; load cl unintendedly
Date: Mon, 30 Jan 2017 17:35:02 -0500
The real (and apparently long-standing) bug here is that

emacs -Q -l mh-e

loads cl.




Information forwarded to bug-gnu-emacs <at> gnu.org, mh-e-devel <at> lists.sourceforge.net:
bug#25552; Package emacs,mh-e. (Tue, 31 Jan 2017 22:41:02 GMT) Full text and rfc822 format available.

Message #24 received at 25552 <at> debbugs.gnu.org (full text, mbox):

From: Glenn Morris <rgm <at> gnu.org>
To: Katsumi Yamaoka <yamaoka <at> jpl.org>
Cc: 25552 <at> debbugs.gnu.org
Subject: Re: bug#25552: 26.0.50; load cl unintendedly
Date: Tue, 31 Jan 2017 17:39:45 -0500
Glenn Morris wrote:

> emacs -Q -l mh-e
>
> loads cl.

This seems to fix it for me, though I do not use mh-e and so cannot test
it properly.

--- i/lisp/mh-e/mh-compat.el
+++ w/lisp/mh-e/mh-compat.el
@@ -40,7 +40,7 @@
 ;; Items are listed alphabetically (except for mh-require which is
 ;; needed sooner it would normally appear).
 
-(require 'mh-acros)
+(eval-when-compile (require 'mh-acros))
 
 (mh-do-in-gnu-emacs
   (defalias 'mh-require 'require))
@@ -374,7 +374,6 @@ mh-write-file-functions
 (provide 'mh-compat)
 
 ;; Local Variables:
-;; no-byte-compile: t
 ;; indent-tabs-mode: nil
 ;; sentence-end-double-space: nil
 ;; End:




Information forwarded to bug-gnu-emacs <at> gnu.org, mh-e-devel <at> lists.sourceforge.net:
bug#25552; Package emacs,mh-e. (Wed, 01 Feb 2017 01:10:02 GMT) Full text and rfc822 format available.

Message #27 received at 25552 <at> debbugs.gnu.org (full text, mbox):

From: Katsumi Yamaoka <yamaoka <at> jpl.org>
To: mh-e-devel <at> lists.sourceforge.net
Cc: Glenn Morris <rgm <at> gnu.org>, 25552 <at> debbugs.gnu.org
Subject: Re: bug#25552: 26.0.50; load cl unintendedly
Date: Wed, 01 Feb 2017 10:09:05 +0900
[Message part 1 (text/plain, inline)]
Hi mh-e developers,

Please refer to this bug thread beginning with:
<http://lists.gnu.org/archive/html/bug-gnu-emacs/2017-01/msg00997.html>

On Tue, 31 Jan 2017 17:39:45 -0500, Glenn Morris wrote:
> Glenn Morris wrote:
>> emacs -Q -l mh-e
>>
>> loads cl.

> This seems to fix it for me, though I do not use mh-e and so cannot test
> it properly.

I cannot test it since I'm not an mh-e user, too, but the patch
(attached below) looks reasonable.  Though I think it is no more
than a workaround (a better way would probably be to replace cl
runtime functions with something), it will help Emacs people.
I kindly ask for your consideration.

Thanks in advance.
Regards,
[Message part 2 (text/x-patch, inline)]
--- i/lisp/mh-e/mh-compat.el
+++ w/lisp/mh-e/mh-compat.el
@@ -40,7 +40,7 @@
 ;; Items are listed alphabetically (except for mh-require which is
 ;; needed sooner it would normally appear).
 
-(require 'mh-acros)
+(eval-when-compile (require 'mh-acros))
 
 (mh-do-in-gnu-emacs
   (defalias 'mh-require 'require))
@@ -374,7 +374,6 @@ mh-write-file-functions
 (provide 'mh-compat)
 
 ;; Local Variables:
-;; no-byte-compile: t
 ;; indent-tabs-mode: nil
 ;; sentence-end-double-space: nil
 ;; End:

Information forwarded to bug-gnu-emacs <at> gnu.org, mh-e-devel <at> lists.sourceforge.net:
bug#25552; Package emacs,mh-e. (Wed, 01 Feb 2017 07:04:02 GMT) Full text and rfc822 format available.

Message #30 received at 25552 <at> debbugs.gnu.org (full text, mbox):

From: Mike Kupfer <mkupfer <at> alum.berkeley.edu>
To: Katsumi Yamaoka <yamaoka <at> jpl.org>, Glenn Morris <rgm <at> gnu.org>
Cc: 25552 <at> debbugs.gnu.org, mh-e-devel <at> lists.sourceforge.net
Subject: Re: bug#25552: 26.0.50; load cl unintendedly
Date: Tue, 31 Jan 2017 20:02:20 -0800
Hi Katsumi and Glenn, I applied Glenn's patch to 25.1.90, and I'm afraid
that it introduced a failure.  When I tried to compose an email,
pressing the space key in the subject line got me

Debugger entered--Lisp error: (wrong-type-argument syntax-table-p nil)
  set-syntax-table(nil)
  mh-beginning-of-word()
  mh-letter-complete-or-space(1)
  funcall-interactively(mh-letter-complete-or-space 1)
  call-interactively(mh-letter-complete-or-space nil nil)
  command-execute(mh-letter-complete-or-space)

I vaguely recall there was some reason for not compiling mh-acros.el,
but I don't remember the specifics.  I'll look into this some more when
I have more time (this Thursday).

regards,
mike




Information forwarded to bug-gnu-emacs <at> gnu.org, mh-e-devel <at> lists.sourceforge.net:
bug#25552; Package emacs,mh-e. (Wed, 01 Feb 2017 13:51:01 GMT) Full text and rfc822 format available.

Message #33 received at 25552 <at> debbugs.gnu.org (full text, mbox):

From: npostavs <at> users.sourceforge.net
To: Mike Kupfer <mkupfer <at> alum.berkeley.edu>
Cc: Glenn Morris <rgm <at> gnu.org>, Katsumi Yamaoka <yamaoka <at> jpl.org>,
 25552 <at> debbugs.gnu.org
Subject: Re: bug#25552: 26.0.50; load cl unintendedly
Date: Wed, 01 Feb 2017 08:51:05 -0500
Mike Kupfer <mkupfer <at> alum.berkeley.edu> writes:

> Hi Katsumi and Glenn, I applied Glenn's patch to 25.1.90, and I'm afraid
> that it introduced a failure.  When I tried to compose an email,
> pressing the space key in the subject line got me
>
> Debugger entered--Lisp error: (wrong-type-argument syntax-table-p nil)
>   set-syntax-table(nil)
>   mh-beginning-of-word()
>   mh-letter-complete-or-space(1)
>   funcall-interactively(mh-letter-complete-or-space 1)
>   call-interactively(mh-letter-complete-or-space nil nil)
>   command-execute(mh-letter-complete-or-space)
>
> I vaguely recall there was some reason for not compiling mh-acros.el,
> but I don't remember the specifics.  I'll look into this some more when
> I have more time (this Thursday).

I guess it's because defun-mh checks whether the alias target is fbound
at compile time:

    (defmacro defun-mh (name function arg-list &rest body)
      "Create function NAME.
    If FUNCTION exists, then NAME becomes an alias for FUNCTION.
    Otherwise, create function NAME with ARG-LIST and BODY."
      (let ((defined-p (fboundp function)))
        (if defined-p
            `(defalias ',name ',function)
          `(defun ,name ,arg-list ,@body))))

It would be better to check at runtime:

    (defmacro defun-mh (name function arg-list &rest body)
      `(if (fboundp ',function)
           (defalias ',name ',function)
         (defun ,name ,arg-list ,@body)))

And/or require `mail-abbrev' at compile time

--- i/lisp/mh-e/mh-compat.el
+++ w/lisp/mh-e/mh-compat.el
@@ -260,7 +260,7 @@ 'mh-line-end-position
       'line-end-position
     'point-at-eol))
 
-(mh-require 'mailabbrev nil t)
+(eval-and-compile (mh-require 'mailabbrev nil t))
 (defun-mh mh-mail-abbrev-make-syntax-table
   mail-abbrev-make-syntax-table ()
   "Emacs 21 and XEmacs don't have `mail-abbrev-make-syntax-table'.




Information forwarded to bug-gnu-emacs <at> gnu.org, mh-e-devel <at> lists.sourceforge.net:
bug#25552; Package emacs,mh-e. (Fri, 03 Feb 2017 02:06:01 GMT) Full text and rfc822 format available.

Message #36 received at 25552 <at> debbugs.gnu.org (full text, mbox):

From: Mike Kupfer <mkupfer <at> alum.berkeley.edu>
To: npostavs <at> users.sourceforge.net, mh-e-devel <at> lists.sourceforge.net
Cc: Glenn Morris <rgm <at> gnu.org>, Katsumi Yamaoka <yamaoka <at> jpl.org>,
 25552 <at> debbugs.gnu.org
Subject: Re: bug#25552: 26.0.50; load cl unintendedly
Date: Thu, 02 Feb 2017 18:05:55 -0800
npostavs <at> users.sourceforge.net wrote:

> Mike Kupfer <mkupfer <at> alum.berkeley.edu> writes:
> 
> > Hi Katsumi and Glenn, I applied Glenn's patch to 25.1.90, and I'm afraid
> > that it introduced a failure.
[...]
> I guess it's because defun-mh checks whether the alias target is fbound
> at compile time:
> 
>     (defmacro defun-mh (name function arg-list &rest body)
>       "Create function NAME.
>     If FUNCTION exists, then NAME becomes an alias for FUNCTION.
>     Otherwise, create function NAME with ARG-LIST and BODY."
>       (let ((defined-p (fboundp function)))
>         (if defined-p
>             `(defalias ',name ',function)
>           `(defun ,name ,arg-list ,@body))))
> 
> It would be better to check at runtime:
> 
>     (defmacro defun-mh (name function arg-list &rest body)
>       `(if (fboundp ',function)
>            (defalias ',name ',function)
>          (defun ,name ,arg-list ,@body)))
> 
> And/or require `mail-abbrev' at compile time
> 
> --- i/lisp/mh-e/mh-compat.el
> +++ w/lisp/mh-e/mh-compat.el
> @@ -260,7 +260,7 @@ 'mh-line-end-position
>        'line-end-position
>      'point-at-eol))
>  
> -(mh-require 'mailabbrev nil t)
> +(eval-and-compile (mh-require 'mailabbrev nil t))
>  (defun-mh mh-mail-abbrev-make-syntax-table
>    mail-abbrev-make-syntax-table ()
>    "Emacs 21 and XEmacs don't have `mail-abbrev-make-syntax-table'.

Thanks, Noam!

I did some light testing of Noam's change to defun-mh plus Glenn's
patch.  The problem that I reported is gone, and I haven't seen any
other issues.  I did the testing with both Emacs 25.1.90 and master
(7cb7a58).

Does anyone on the MH-E dev team have any concerns about this
combination of changes?

mike




Information forwarded to bug-gnu-emacs <at> gnu.org, mh-e-devel <at> lists.sourceforge.net:
bug#25552; Package emacs,mh-e. (Fri, 03 Feb 2017 02:45:02 GMT) Full text and rfc822 format available.

Message #39 received at 25552 <at> debbugs.gnu.org (full text, mbox):

From: Jeffrey Honig <jch <at> honig.net>
To: Mike Kupfer <mkupfer <at> alum.berkeley.edu>
Cc: rgm <at> gnu.org, yamaoka <at> jpl.org, Bill Wohler <wohler <at> newt.com>,
 25552 <at> debbugs.gnu.org, npostavs <at> users.sourceforge.net
Subject: Re: bug#25552: 26.0.50; load cl unintendedly
Date: Thu, 2 Feb 2017 21:21:22 -0500
[Message part 1 (text/plain, inline)]
Bill should weigh in on this change, he did extensive work in this area.

Thanks

Jeff

-- 
Jeffrey C. Honig <jch <at> honig.net>
http://jch.honig.net
GnuPG ID:14E29E13 <http://jch.honig.net/Home/pgp_key>
Keybase: jchonig <https://keybase.io/jchonig>

On Thu, Feb 2, 2017 at 9:05 PM, Mike Kupfer <mkupfer <at> alum.berkeley.edu>
wrote:

> npostavs <at> users.sourceforge.net wrote:
>
> > Mike Kupfer <mkupfer <at> alum.berkeley.edu> writes:
> >
> > > Hi Katsumi and Glenn, I applied Glenn's patch to 25.1.90, and I'm
> afraid
> > > that it introduced a failure.
> [...]
> > I guess it's because defun-mh checks whether the alias target is fbound
> > at compile time:
> >
> >     (defmacro defun-mh (name function arg-list &rest body)
> >       "Create function NAME.
> >     If FUNCTION exists, then NAME becomes an alias for FUNCTION.
> >     Otherwise, create function NAME with ARG-LIST and BODY."
> >       (let ((defined-p (fboundp function)))
> >         (if defined-p
> >             `(defalias ',name ',function)
> >           `(defun ,name ,arg-list ,@body))))
> >
> > It would be better to check at runtime:
> >
> >     (defmacro defun-mh (name function arg-list &rest body)
> >       `(if (fboundp ',function)
> >            (defalias ',name ',function)
> >          (defun ,name ,arg-list ,@body)))
> >
> > And/or require `mail-abbrev' at compile time
> >
> > --- i/lisp/mh-e/mh-compat.el
> > +++ w/lisp/mh-e/mh-compat.el
> > @@ -260,7 +260,7 @@ 'mh-line-end-position
> >        'line-end-position
> >      'point-at-eol))
> >
> > -(mh-require 'mailabbrev nil t)
> > +(eval-and-compile (mh-require 'mailabbrev nil t))
> >  (defun-mh mh-mail-abbrev-make-syntax-table
> >    mail-abbrev-make-syntax-table ()
> >    "Emacs 21 and XEmacs don't have `mail-abbrev-make-syntax-table'.
>
> Thanks, Noam!
>
> I did some light testing of Noam's change to defun-mh plus Glenn's
> patch.  The problem that I reported is gone, and I haven't seen any
> other issues.  I did the testing with both Emacs 25.1.90 and master
> (7cb7a58).
>
> Does anyone on the MH-E dev team have any concerns about this
> combination of changes?
>
> mike
>
>
>
> ------------------------------------------------------------
> ------------------
> Check out the vibrant tech community on one of the world's most
> engaging tech sites, SlashDot.org! http://sdm.link/slashdot
> _______________________________________________
> mh-e-devel mailing list
> mh-e-devel <at> lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/mh-e-devel
>
[Message part 2 (text/html, inline)]

Information forwarded to bug-gnu-emacs <at> gnu.org, mh-e-devel <at> lists.sourceforge.net:
bug#25552; Package emacs,mh-e. (Fri, 03 Feb 2017 06:32:01 GMT) Full text and rfc822 format available.

Message #42 received at 25552 <at> debbugs.gnu.org (full text, mbox):

From: Bill Wohler <wohler <at> newt.com>
To: Jeffrey Honig <jch <at> honig.net>
Cc: rgm <at> gnu.org, yamaoka <at> jpl.org, npostavs <at> users.sourceforge.net,
 25552 <at> debbugs.gnu.org, Mike Kupfer <mkupfer <at> alum.berkeley.edu>
Subject: Re: bug#25552: 26.0.50; load cl unintendedly
Date: Thu, 02 Feb 2017 22:30:57 -0800
I don't have any objections if it runs on all supported versions of
Emacs that we support (a conversation we should probably have again
since we've had an Emacs release).

I'm happy to say we support the version of Emacs in Debian stable, which
is 24 and is what I'm running. I'll test the patch this weekend and reply.

Jeff, in the past, you ran the oldest version. What are you running now?
If it's older than 24 or 25, can you please test this patch as well?

Jeffrey Honig <jch <at> honig.net> wrote:

> Bill should weigh in on this change, he did extensive work in this area.
> 
> Thanks
> 
> Jeff
> 
> --
> Jeffrey C. Honig <jch <at> honig.net>
> http://jch.honig.net
> GnuPG ID:14E29E13
> Keybase: jchonig
> 
> On Thu, Feb 2, 2017 at 9:05 PM, Mike Kupfer <mkupfer <at> alum.berkeley.edu> wrote:
> 
>     npostavs <at> users.sourceforge.net wrote:
>    
>     > Mike Kupfer <mkupfer <at> alum.berkeley.edu> writes:
>     >
>     > > Hi Katsumi and Glenn, I applied Glenn's patch to 25.1.90, and I'm afraid
>     > > that it introduced a failure.
>     [...]
>     > I guess it's because defun-mh checks whether the alias target is fbound
>     > at compile time:
>     >
>     >     (defmacro defun-mh (name function arg-list &rest body)
>     >       "Create function NAME.
>     >     If FUNCTION exists, then NAME becomes an alias for FUNCTION.
>     >     Otherwise, create function NAME with ARG-LIST and BODY."
>     >       (let ((defined-p (fboundp function)))
>     >         (if defined-p
>     >             `(defalias ',name ',function)
>     >           `(defun ,name ,arg-list ,@body))))
>     >
>     > It would be better to check at runtime:
>     >
>     >     (defmacro defun-mh (name function arg-list &rest body)
>     >       `(if (fboundp ',function)
>     >            (defalias ',name ',function)
>     >          (defun ,name ,arg-list ,@body)))
>     >
>     > And/or require `mail-abbrev' at compile time
>     >
>     > --- i/lisp/mh-e/mh-compat.el
>     > +++ w/lisp/mh-e/mh-compat.el
>     > @@ -260,7 +260,7 @@ 'mh-line-end-position
>     >        'line-end-position
>     >      'point-at-eol))
>     >
>     > -(mh-require 'mailabbrev nil t)
>     > +(eval-and-compile (mh-require 'mailabbrev nil t))
>     >  (defun-mh mh-mail-abbrev-make-syntax-table
>     >    mail-abbrev-make-syntax-table ()
>     >    "Emacs 21 and XEmacs don't have `mail-abbrev-make-syntax-table'.
>    
>     Thanks, Noam!
>    
>     I did some light testing of Noam's change to defun-mh plus Glenn's
>     patch.  The problem that I reported is gone, and I haven't seen any
>     other issues.  I did the testing with both Emacs 25.1.90 and master
>     (7cb7a58).
>    
>     Does anyone on the MH-E dev team have any concerns about this
>     combination of changes?
>    
>     mike
> 
>     ------------------------------------------------------------------------------
>     Check out the vibrant tech community on one of the world's most
>     engaging tech sites, SlashDot.org! http://sdm.link/slashdot
>     _______________________________________________
>     mh-e-devel mailing list
>     mh-e-devel <at> lists.sourceforge.net
>     https://lists.sourceforge.net/lists/listinfo/mh-e-devel
> 
> 
> ----------------------------------------------------
> Alternatives:
> 
> ----------------------------------------------------

-- 
Bill Wohler <wohler <at> newt.com> aka <Bill.Wohler <at> nasa.gov>
http://www.newt.com/wohler/
GnuPG ID:610BD9AD




Information forwarded to bug-gnu-emacs <at> gnu.org, mh-e-devel <at> lists.sourceforge.net:
bug#25552; Package emacs,mh-e. (Mon, 06 Feb 2017 01:27:01 GMT) Full text and rfc822 format available.

Message #45 received at 25552 <at> debbugs.gnu.org (full text, mbox):

From: Jeffrey Honig <jch <at> honig.net>
To: Bill Wohler <wohler <at> newt.com>
Cc: rgm <at> gnu.org, yamaoka <at> jpl.org, npostavs <at> users.sourceforge.net,
 25552 <at> debbugs.gnu.org, Mike Kupfer <mkupfer <at> alum.berkeley.edu>
Subject: Re: bug#25552: 26.0.50; load cl unintendedly
Date: Sun, 5 Feb 2017 20:25:35 -0500
[Message part 1 (text/plain, inline)]
On Fri, Feb 3, 2017 at 1:30 AM, Bill Wohler <wohler <at> newt.com> wrote:

> Jeff, in the past, you ran the oldest version. What are you running now?
> If it's older than 24 or 25, can you please test this patch as well?
>

I'm on 25 and occasionally build and run master.

Thanks

Jeff

-- 
Jeffrey C. Honig <jch <at> honig.net>
http://jch.honig.net
GnuPG ID:14E29E13 <http://jch.honig.net/Home/pgp_key>
Keybase: jchonig <https://keybase.io/jchonig>
[Message part 2 (text/html, inline)]

Information forwarded to bug-gnu-emacs <at> gnu.org, mh-e-devel <at> lists.sourceforge.net:
bug#25552; Package emacs,mh-e. (Mon, 06 Feb 2017 02:04:01 GMT) Full text and rfc822 format available.

Message #48 received at 25552 <at> debbugs.gnu.org (full text, mbox):

From: Glenn Morris <rgm <at> gnu.org>
To: Bill Wohler <wohler <at> newt.com>
Cc: yamaoka <at> jpl.org, Mike Kupfer <mkupfer <at> alum.berkeley.edu>,
 25552 <at> debbugs.gnu.org, Jeffrey Honig <jch <at> honig.net>,
 npostavs <at> users.sourceforge.net
Subject: Re: bug#25552: 26.0.50; load cl unintendedly
Date: Sun, 05 Feb 2017 21:03:40 -0500
Bill Wohler wrote:

> I don't have any objections if it runs on all supported versions of
> Emacs that we support (a conversation we should probably have again
> since we've had an Emacs release).
>
> I'm happy to say we support the version of Emacs in Debian stable, which
> is 24 and is what I'm running. I'll test the patch this weekend and reply.

I see that Debian stable ships Emacs 24.4, which includes cl-lib (so
does 24.3, which is 4 years old). It's fine to load cl-lib at runtime.
So if you were willing to make a larger change (cl to cl-lib), you can
have code which is simpler going forwards (no need for mh-require-cl etc).
cl-lib is also available from elpa.gnu.org for Emacs older than 24.3.

Separate from the above:
i) I think all uses of mh-require should be placed within eval-and-compile
(the compiler does this automatically for plain "require", but does not
know to do it for mh-require).

ii) If you make that defun-mh change, I'm guessing there will no longer
be a need for mh-gnus to be no-byte-compile.




Information forwarded to bug-gnu-emacs <at> gnu.org, mh-e-devel <at> lists.sourceforge.net:
bug#25552; Package emacs,mh-e. (Sun, 09 Apr 2017 12:00:02 GMT) Full text and rfc822 format available.

Message #51 received at 25552 <at> debbugs.gnu.org (full text, mbox):

From: npostavs <at> users.sourceforge.net
To: Mike Kupfer <mkupfer <at> alum.berkeley.edu>
Cc: rgm <at> gnu.org, yamaoka <at> jpl.org, 25552 <at> debbugs.gnu.org
Subject: Re: bug#25552: 26.0.50; load cl unintendedly
Date: Sun, 09 Apr 2017 08:01:12 -0400
Ping?

Mike Kupfer <mkupfer <at> alum.berkeley.edu> writes:

> I did some light testing of Noam's change to defun-mh plus Glenn's
> patch.  The problem that I reported is gone, and I haven't seen any
> other issues.  I did the testing with both Emacs 25.1.90 and master
> (7cb7a58).
>
> Does anyone on the MH-E dev team have any concerns about this
> combination of changes?

Jeffrey Honig <jch <at> honig.net> writes:

> Bill should weigh in on this change, he did extensive work in this area.

Bill Wohler <wohler <at> newt.com> writes:

> I don't have any objections if it runs on all supported versions of
> Emacs that we support (a conversation we should probably have again
> since we've had an Emacs release).
>
> I'm happy to say we support the version of Emacs in Debian stable, which
> is 24 and is what I'm running. I'll test the patch this weekend and reply.
>
> Jeff, in the past, you ran the oldest version. What are you running now?
> If it's older than 24 or 25, can you please test this patch as well?
>
> Jeffrey Honig <jch <at> honig.net> wrote:
>

Jeffrey Honig <jch <at> honig.net> writes:
>
> I'm on 25 and occasionally build and run master.





Information forwarded to bug-gnu-emacs <at> gnu.org, mh-e-devel <at> lists.sourceforge.net:
bug#25552; Package emacs,mh-e. (Sun, 09 Apr 2017 14:26:01 GMT) Full text and rfc822 format available.

Message #54 received at 25552 <at> debbugs.gnu.org (full text, mbox):

From: Mike Kupfer <mkupfer <at> alum.berkeley.edu>
To: npostavs <at> users.sourceforge.net
Cc: rgm <at> gnu.org, yamaoka <at> jpl.org, 25552 <at> debbugs.gnu.org
Subject: Re: bug#25552: 26.0.50; load cl unintendedly
Date: Sun, 09 Apr 2017 07:25:46 -0700
npostavs <at> users.sourceforge.net wrote:

> Ping?

MH-E has an internal test suite that I've been meaning to try with the 2
patches, but I've been distracted with other things like getting the
family taxes done.  I'll try to get that done before the end of the
week.  Sorry about the delay.

I'm confused by Bill Wohler's statement about supported versions of
Emacs.  I thought we had switched to just supporting the current Emacs
version, rather than doing a separate MH-E release that supports
multiple Emacs versions.  I'll follow up with Bill about that.

mike




Information forwarded to bug-gnu-emacs <at> gnu.org, mh-e-devel <at> lists.sourceforge.net:
bug#25552; Package emacs,mh-e. (Fri, 14 Apr 2017 01:31:02 GMT) Full text and rfc822 format available.

Message #57 received at 25552 <at> debbugs.gnu.org (full text, mbox):

From: Mike Kupfer <mkupfer <at> alum.berkeley.edu>
To: npostavs <at> users.sourceforge.net
Cc: rgm <at> gnu.org, yamaoka <at> jpl.org, mh-e-devel <at> lists.sourceforge.net,
 25552 <at> debbugs.gnu.org
Subject: Re: bug#25552: 26.0.50; load cl unintendedly
Date: Thu, 13 Apr 2017 18:30:13 -0700
Mike Kupfer wrote:

> MH-E has an internal test suite that I've been meaning to try with the 2
> patches, but I've been distracted with other things like getting the
> family taxes done.  I'll try to get that done before the end of the
> week.

Done.  The 2 patches do not introduce any problems with the internal
tests.

> I thought we had switched to just supporting the current Emacs
> version, rather than doing a separate MH-E release that supports
> multiple Emacs versions.

Yes, I've confirmed with Bill Wohler that that's what we're doing.

I'm happy for either you or Glenn to push those patches, but I can do it
if you prefer (probably next week sometime).

Oh, and to close the loop with some suggestions that Glenn made back in
February (e.g., use cl-lib instead of cl)...  I do plan to look into
those suggestions, but I don't know how long it will take me.  So fixing
the immediate cl problem now seems to me like a good thing.

cheers,
mike




Information forwarded to bug-gnu-emacs <at> gnu.org, mh-e-devel <at> lists.sourceforge.net:
bug#25552; Package emacs,mh-e. (Fri, 14 Apr 2017 14:37:02 GMT) Full text and rfc822 format available.

Message #60 received at 25552 <at> debbugs.gnu.org (full text, mbox):

From: Noam Postavsky <npostavs <at> users.sourceforge.net>
To: Mike Kupfer <mkupfer <at> alum.berkeley.edu>
Cc: Glenn Morris <rgm <at> gnu.org>, mh-e-devel <at> lists.sourceforge.net,
 25552 <at> debbugs.gnu.org
Subject: Re: bug#25552: 26.0.50; load cl unintendedly
Date: Fri, 14 Apr 2017 10:36:02 -0400
On Thu, Apr 13, 2017 at 9:30 PM, Mike Kupfer <mkupfer <at> alum.berkeley.edu> wrote:
>
>> I thought we had switched to just supporting the current Emacs
>> version, rather than doing a separate MH-E release that supports
>> multiple Emacs versions.
>
> Yes, I've confirmed with Bill Wohler that that's what we're doing.
>
> I'm happy for either you or Glenn to push those patches, but I can do it
> if you prefer (probably next week sometime).
>
> Oh, and to close the loop with some suggestions that Glenn made back in
> February (e.g., use cl-lib instead of cl)...  I do plan to look into
> those suggestions, but I don't know how long it will take me.  So fixing
> the immediate cl problem now seems to me like a good thing.

That all sounds fine, push at your convenience, there's no special urgency.




Information forwarded to bug-gnu-emacs <at> gnu.org, mh-e-devel <at> lists.sourceforge.net:
bug#25552; Package emacs,mh-e. (Fri, 14 Apr 2017 17:07:02 GMT) Full text and rfc822 format available.

Message #63 received at 25552 <at> debbugs.gnu.org (full text, mbox):

From: Glenn Morris <rgm <at> gnu.org>
To: Mike Kupfer <mkupfer <at> alum.berkeley.edu>
Cc: yamaoka <at> jpl.org, 25552 <at> debbugs.gnu.org, npostavs <at> users.sourceforge.net
Subject: Re: bug#25552: 26.0.50; load cl unintendedly
Date: Fri, 14 Apr 2017 13:05:45 -0400
Mike Kupfer wrote:

>> I thought we had switched to just supporting the current Emacs
>> version, rather than doing a separate MH-E release that supports
>> multiple Emacs versions.
>
> Yes, I've confirmed with Bill Wohler that that's what we're doing.

So just to give you another thing to think about... :)

Is it then worth it to retain a separate mh-e repository, or does it
just make more work? Eg Gnus abandoned its standalone repo in favour of
the Emacs one.

PS Regardless of the above it would also be nice to get the tests you
referred to into the test/ directory in the Emacs repo.




Information forwarded to bug-gnu-emacs <at> gnu.org, mh-e-devel <at> lists.sourceforge.net:
bug#25552; Package emacs,mh-e. (Sat, 15 Apr 2017 18:19:02 GMT) Full text and rfc822 format available.

Message #66 received at 25552 <at> debbugs.gnu.org (full text, mbox):

From: Bill Wohler <wohler <at> newt.com>
To: Glenn Morris <rgm <at> gnu.org>
Cc: yamaoka <at> jpl.org, npostavs <at> users.sourceforge.net,
 mh-e-devel <at> lists.sourceforge.net, 25552 <at> debbugs.gnu.org,
 Mike Kupfer <mkupfer <at> alum.berkeley.edu>
Subject: Re: bug#25552: 26.0.50; load cl unintendedly
Date: Sat, 15 Apr 2017 11:17:39 -0700
Glenn Morris <rgm <at> gnu.org> wrote:

> Mike Kupfer wrote:
> 
> >> I thought we had switched to just supporting the current Emacs
> >> version, rather than doing a separate MH-E release that supports
> >> multiple Emacs versions.
> >
> > Yes, I've confirmed with Bill Wohler that that's what we're doing.
> 
> So just to give you another thing to think about... :)

Any time!

> Is it then worth it to retain a separate mh-e repository, or does it
> just make more work? Eg Gnus abandoned its standalone repo in favour of
> the Emacs one.

There's a couple of scripts that can probably be moved to a new
admin/mh-e directory.

There are files for XEmacs and Debian. Those could probably be retired.

However, we also maintain the files for http://mh-e.sourceforge.net/. I
don't see the files for http://www.gnus.org in the Emacs repository.

> PS Regardless of the above it would also be nice to get the tests you
> referred to into the test/ directory in the Emacs repo.

No objection.

-- 
Bill Wohler <wohler <at> newt.com> aka <Bill.Wohler <at> nasa.gov>
http://www.newt.com/wohler/
GnuPG ID:610BD9AD




Information forwarded to bug-gnu-emacs <at> gnu.org, mh-e-devel <at> lists.sourceforge.net:
bug#25552; Package emacs,mh-e. (Mon, 01 May 2017 05:12:01 GMT) Full text and rfc822 format available.

Message #69 received at 25552 <at> debbugs.gnu.org (full text, mbox):

From: Bill Wohler <wohler <at> newt.com>
To: Noam Postavsky <npostavs <at> users.sourceforge.net>
Cc: rgm <at> gnu.org, mh-e-devel <at> lists.sourceforge.net, 25552 <at> debbugs.gnu.org,
 Mike Kupfer <mkupfer <at> alum.berkeley.edu>
Subject: Re: bug#25552: 26.0.50; load cl unintendedly
Date: Sun, 30 Apr 2017 22:10:40 -0700
[Message part 1 (text/plain, inline)]
Noam Postavsky <npostavs <at> users.sourceforge.net> wrote:

> On Thu, Apr 13, 2017 at 9:30 PM, Mike Kupfer <mkupfer <at> alum.berkeley.edu> wrote:
> >
> >> I thought we had switched to just supporting the current Emacs
> >> version, rather than doing a separate MH-E release that supports
> >> multiple Emacs versions.
> >
> > Yes, I've confirmed with Bill Wohler that that's what we're doing.
> >
> > I'm happy for either you or Glenn to push those patches, but I can do it
> > if you prefer (probably next week sometime).
> >
> > Oh, and to close the loop with some suggestions that Glenn made back in
> > February (e.g., use cl-lib instead of cl)...  I do plan to look into
> > those suggestions, but I don't know how long it will take me.  So fixing
> > the immediate cl problem now seems to me like a good thing.
> 
> That all sounds fine, push at your convenience, there's no special urgency.

I tested what I think we have so far (appended) and haven't noticed
anything amiss. Please push what you have at your convenience, as I
don't think I see it on master yet.

I tried to add eval-and-compile to mailabbrev, but got the following
compilation error:

    mh-e/mh-compat.el:263:1:Error: Symbol’s function definition is void: mh-require

-- 
Bill Wohler <wohler <at> newt.com> aka <Bill.Wohler <at> nasa.gov>
http://www.newt.com/wohler/
GnuPG ID:610BD9AD

[mh-e.diff (text/x-diff, inline)]
diff --git a/lisp/mh-e/mh-acros.el b/lisp/mh-e/mh-acros.el
index 0c89efbe3c..2e778eafb9 100644
--- a/lisp/mh-e/mh-acros.el
+++ b/lisp/mh-e/mh-acros.el
@@ -81,7 +81,7 @@ mh-do-in-xemacs
 ;;;###mh-autoload
 (defmacro mh-funcall-if-exists (function &rest args)
   "Call FUNCTION with ARGS as parameters if it exists."
-  (when (fboundp function)
+   (when (fboundp function)
     `(when (fboundp ',function)
        (funcall ',function ,@args))))
 
@@ -90,10 +90,9 @@ defun-mh
   "Create function NAME.
 If FUNCTION exists, then NAME becomes an alias for FUNCTION.
 Otherwise, create function NAME with ARG-LIST and BODY."
-  (let ((defined-p (fboundp function)))
-    (if defined-p
-        `(defalias ',name ',function)
-      `(defun ,name ,arg-list ,@body))))
+  `(if (fboundp ',function)
+       (defalias ',name ',function)
+     (defun ,name ,arg-list ,@body)))
 (put 'defun-mh 'lisp-indent-function 'defun)
 (put 'defun-mh 'doc-string-elt 4)
 
diff --git a/lisp/mh-e/mh-compat.el b/lisp/mh-e/mh-compat.el
index 3f3990e869..099fc9bbba 100644
--- a/lisp/mh-e/mh-compat.el
+++ b/lisp/mh-e/mh-compat.el
@@ -40,7 +40,7 @@
 ;; Items are listed alphabetically (except for mh-require which is
 ;; needed sooner it would normally appear).
 
-(require 'mh-acros)
+(eval-when-compile (require 'mh-acros))
 
 (mh-do-in-gnu-emacs
   (defalias 'mh-require 'require))
@@ -374,7 +374,6 @@ mh-write-file-functions
 (provide 'mh-compat)
 
 ;; Local Variables:
-;; no-byte-compile: t
 ;; indent-tabs-mode: nil
 ;; sentence-end-double-space: nil
 ;; End:

Information forwarded to bug-gnu-emacs <at> gnu.org, mh-e-devel <at> lists.sourceforge.net:
bug#25552; Package emacs,mh-e. (Mon, 01 May 2017 13:44:01 GMT) Full text and rfc822 format available.

Message #72 received at 25552 <at> debbugs.gnu.org (full text, mbox):

From: Mike Kupfer <mkupfer <at> alum.berkeley.edu>
To: Bill Wohler <wohler <at> newt.com>
Cc: rgm <at> gnu.org, mh-e-devel <at> lists.sourceforge.net, 25552 <at> debbugs.gnu.org,
 Noam Postavsky <npostavs <at> users.sourceforge.net>
Subject: Re: bug#25552: 26.0.50; load cl unintendedly
Date: Mon, 01 May 2017 06:43:16 -0700
Bill Wohler wrote:

> I tested what I think we have so far (appended) and haven't noticed
> anything amiss. Please push what you have at your convenience, as I
> don't think I see it on master yet.

Yeah, I haven't quite found the time to finish this off.  If I don't get
to it today, it's on my calendar for Thursday.

mike




bug marked as fixed in version 26.1, send any further explanations to 25552 <at> debbugs.gnu.org and Katsumi Yamaoka <yamaoka <at> jpl.org> Request was from Glenn Morris <rgm <at> gnu.org> to control <at> debbugs.gnu.org. (Fri, 05 May 2017 18:09:01 GMT) Full text and rfc822 format available.

bug archived. Request was from Debbugs Internal Request <help-debbugs <at> gnu.org> to internal_control <at> debbugs.gnu.org. (Sat, 03 Jun 2017 11:24:05 GMT) Full text and rfc822 format available.

This bug report was last modified 8 years and 15 days ago.

Previous Next


GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson.