unofficial mirror of bug-gnu-emacs@gnu.org 
 help / color / mirror / code / Atom feed
* bug#25552: 26.0.50; load cl unintendedly
@ 2017-01-27  1:24 Katsumi Yamaoka
  2017-01-27  1:50 ` Katsumi Yamaoka
                   ` (5 more replies)
  0 siblings, 6 replies; 22+ messages in thread
From: Katsumi Yamaoka @ 2017-01-27  1:24 UTC (permalink / raw)
  To: 25552

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,





^ permalink raw reply	[flat|nested] 22+ messages in thread

* bug#25552: 26.0.50; load cl unintendedly
  2017-01-27  1:24 bug#25552: 26.0.50; load cl unintendedly Katsumi Yamaoka
@ 2017-01-27  1:50 ` Katsumi Yamaoka
  2017-01-29 17:03 ` npostavs
                   ` (4 subsequent siblings)
  5 siblings, 0 replies; 22+ messages in thread
From: Katsumi Yamaoka @ 2017-01-27  1:50 UTC (permalink / raw)
  To: 25552

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...





^ permalink raw reply	[flat|nested] 22+ messages in thread

* bug#25552: 26.0.50; load cl unintendedly
  2017-01-27  1:24 bug#25552: 26.0.50; load cl unintendedly Katsumi Yamaoka
  2017-01-27  1:50 ` Katsumi Yamaoka
@ 2017-01-29 17:03 ` npostavs
  2017-01-30  3:37   ` Mark Oteiza
  2017-01-30 22:35 ` Glenn Morris
                   ` (3 subsequent siblings)
  5 siblings, 1 reply; 22+ messages in thread
From: npostavs @ 2017-01-29 17:03 UTC (permalink / raw)
  To: Katsumi Yamaoka; +Cc: 25552

Katsumi Yamaoka <yamaoka@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.






^ permalink raw reply	[flat|nested] 22+ messages in thread

* bug#25552: 26.0.50; load cl unintendedly
  2017-01-29 17:03 ` npostavs
@ 2017-01-30  3:37   ` Mark Oteiza
  0 siblings, 0 replies; 22+ messages in thread
From: Mark Oteiza @ 2017-01-30  3:37 UTC (permalink / raw)
  To: npostavs; +Cc: Katsumi Yamaoka, 25552

npostavs@users.sourceforge.net writes:

> Katsumi Yamaoka <yamaoka@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.





^ permalink raw reply	[flat|nested] 22+ messages in thread

* bug#25552: 26.0.50; load cl unintendedly
  2017-01-27  1:24 bug#25552: 26.0.50; load cl unintendedly Katsumi Yamaoka
  2017-01-27  1:50 ` Katsumi Yamaoka
  2017-01-29 17:03 ` npostavs
@ 2017-01-30 22:35 ` Glenn Morris
  2017-01-31 22:39   ` Glenn Morris
       [not found] ` <b4m60kuk98u.fsf@jpl.org>
                   ` (2 subsequent siblings)
  5 siblings, 1 reply; 22+ messages in thread
From: Glenn Morris @ 2017-01-30 22:35 UTC (permalink / raw)
  To: Katsumi Yamaoka; +Cc: 25552


The real (and apparently long-standing) bug here is that

emacs -Q -l mh-e

loads cl.





^ permalink raw reply	[flat|nested] 22+ messages in thread

* bug#25552: 26.0.50; load cl unintendedly
  2017-01-30 22:35 ` Glenn Morris
@ 2017-01-31 22:39   ` Glenn Morris
  2017-02-01  1:09     ` Katsumi Yamaoka
  0 siblings, 1 reply; 22+ messages in thread
From: Glenn Morris @ 2017-01-31 22:39 UTC (permalink / raw)
  To: Katsumi Yamaoka; +Cc: 25552

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:





^ permalink raw reply	[flat|nested] 22+ messages in thread

* bug#25552: 26.0.50; load cl unintendedly
  2017-01-31 22:39   ` Glenn Morris
@ 2017-02-01  1:09     ` Katsumi Yamaoka
  0 siblings, 0 replies; 22+ messages in thread
From: Katsumi Yamaoka @ 2017-02-01  1:09 UTC (permalink / raw)
  To: 25552

[-- Attachment #1: Type: text/plain, Size: 669 bytes --]

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,

[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #2: Type: text/x-patch, Size: 494 bytes --]

--- 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:

^ permalink raw reply	[flat|nested] 22+ messages in thread

* bug#25552: 26.0.50; load cl unintendedly
       [not found] ` <b4m60kuk98u.fsf@jpl.org>
@ 2017-02-01  4:02   ` Mike Kupfer
  0 siblings, 0 replies; 22+ messages in thread
From: Mike Kupfer @ 2017-02-01  4:02 UTC (permalink / raw)
  To: Katsumi Yamaoka, Glenn Morris; +Cc: 25552

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





^ permalink raw reply	[flat|nested] 22+ messages in thread

* bug#25552: 26.0.50; load cl unintendedly
       [not found] ` <17104.1485921740@alto>
@ 2017-02-01 13:51   ` npostavs
  2017-02-03  2:05     ` Mike Kupfer
  0 siblings, 1 reply; 22+ messages in thread
From: npostavs @ 2017-02-01 13:51 UTC (permalink / raw)
  To: Mike Kupfer; +Cc: Katsumi Yamaoka, 25552

Mike Kupfer <mkupfer@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'.





^ permalink raw reply	[flat|nested] 22+ messages in thread

* bug#25552: 26.0.50; load cl unintendedly
  2017-02-01 13:51   ` npostavs
@ 2017-02-03  2:05     ` Mike Kupfer
  2017-02-03  2:21       ` Jeffrey Honig
                         ` (2 more replies)
  0 siblings, 3 replies; 22+ messages in thread
From: Mike Kupfer @ 2017-02-03  2:05 UTC (permalink / raw)
  To: npostavs, 25552; +Cc: yamaoka

npostavs@users.sourceforge.net wrote:

> Mike Kupfer <mkupfer@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





^ permalink raw reply	[flat|nested] 22+ messages in thread

* bug#25552: 26.0.50; load cl unintendedly
  2017-02-03  2:05     ` Mike Kupfer
@ 2017-02-03  2:21       ` Jeffrey Honig
       [not found]       ` <CAC5WE8qFGjt5bLsbVJrvUttPOom8nN+Xe-WuW1zTvpaHvf=5BQ@mail.gmail.com>
  2017-04-09 12:01       ` npostavs
  2 siblings, 0 replies; 22+ messages in thread
From: Jeffrey Honig @ 2017-02-03  2:21 UTC (permalink / raw)
  To: Mike Kupfer; +Cc: yamaoka, Bill Wohler, 25552, npostavs

[-- Attachment #1: Type: text/plain, Size: 2502 bytes --]

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

Thanks

Jeff

-- 
Jeffrey C. Honig <jch@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@alum.berkeley.edu>
wrote:

> npostavs@users.sourceforge.net wrote:
>
> > Mike Kupfer <mkupfer@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@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/mh-e-devel
>

[-- Attachment #2: Type: text/html, Size: 4260 bytes --]

^ permalink raw reply	[flat|nested] 22+ messages in thread

* bug#25552: 26.0.50; load cl unintendedly
       [not found]       ` <CAC5WE8qFGjt5bLsbVJrvUttPOom8nN+Xe-WuW1zTvpaHvf=5BQ@mail.gmail.com>
@ 2017-02-03  6:30         ` Bill Wohler
  2017-02-06  1:25           ` Jeffrey Honig
  2017-02-06  2:03           ` Glenn Morris
  0 siblings, 2 replies; 22+ messages in thread
From: Bill Wohler @ 2017-02-03  6:30 UTC (permalink / raw)
  To: Jeffrey Honig; +Cc: yamaoka, Mike Kupfer, 25552, npostavs

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@honig.net> wrote:

> Bill should weigh in on this change, he did extensive work in this area.
> 
> Thanks
> 
> Jeff
> 
> --
> Jeffrey C. Honig <jch@honig.net>
> http://jch.honig.net
> GnuPG ID:14E29E13
> Keybase: jchonig
> 
> On Thu, Feb 2, 2017 at 9:05 PM, Mike Kupfer <mkupfer@alum.berkeley.edu> wrote:
> 
>     npostavs@users.sourceforge.net wrote:
>    
>     > Mike Kupfer <mkupfer@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@lists.sourceforge.net
>     https://lists.sourceforge.net/lists/listinfo/mh-e-devel
> 
> 
> ----------------------------------------------------
> Alternatives:
> 
> ----------------------------------------------------

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





^ permalink raw reply	[flat|nested] 22+ messages in thread

* bug#25552: 26.0.50; load cl unintendedly
  2017-02-03  6:30         ` Bill Wohler
@ 2017-02-06  1:25           ` Jeffrey Honig
  2017-02-06  2:03           ` Glenn Morris
  1 sibling, 0 replies; 22+ messages in thread
From: Jeffrey Honig @ 2017-02-06  1:25 UTC (permalink / raw)
  To: Bill Wohler; +Cc: yamaoka, Mike Kupfer, 25552, npostavs

[-- Attachment #1: Type: text/plain, Size: 441 bytes --]

On Fri, Feb 3, 2017 at 1:30 AM, Bill Wohler <wohler@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@honig.net>
http://jch.honig.net
GnuPG ID:14E29E13 <http://jch.honig.net/Home/pgp_key>
Keybase: jchonig <https://keybase.io/jchonig>

[-- Attachment #2: Type: text/html, Size: 1258 bytes --]

^ permalink raw reply	[flat|nested] 22+ messages in thread

* bug#25552: 26.0.50; load cl unintendedly
  2017-02-03  6:30         ` Bill Wohler
  2017-02-06  1:25           ` Jeffrey Honig
@ 2017-02-06  2:03           ` Glenn Morris
  1 sibling, 0 replies; 22+ messages in thread
From: Glenn Morris @ 2017-02-06  2:03 UTC (permalink / raw)
  To: Bill Wohler; +Cc: yamaoka, npostavs, Jeffrey Honig, 25552, Mike Kupfer

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.





^ permalink raw reply	[flat|nested] 22+ messages in thread

* bug#25552: 26.0.50; load cl unintendedly
  2017-02-03  2:05     ` Mike Kupfer
  2017-02-03  2:21       ` Jeffrey Honig
       [not found]       ` <CAC5WE8qFGjt5bLsbVJrvUttPOom8nN+Xe-WuW1zTvpaHvf=5BQ@mail.gmail.com>
@ 2017-04-09 12:01       ` npostavs
  2017-04-09 14:25         ` Mike Kupfer
  2 siblings, 1 reply; 22+ messages in thread
From: npostavs @ 2017-04-09 12:01 UTC (permalink / raw)
  To: Mike Kupfer; +Cc: yamaoka, 25552

Ping?

Mike Kupfer <mkupfer@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@honig.net> writes:

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

Bill Wohler <wohler@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@honig.net> wrote:
>

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






^ permalink raw reply	[flat|nested] 22+ messages in thread

* bug#25552: 26.0.50; load cl unintendedly
  2017-04-09 12:01       ` npostavs
@ 2017-04-09 14:25         ` Mike Kupfer
  2017-04-14  1:30           ` Mike Kupfer
       [not found]           ` <12659.1492133413@alto>
  0 siblings, 2 replies; 22+ messages in thread
From: Mike Kupfer @ 2017-04-09 14:25 UTC (permalink / raw)
  To: npostavs; +Cc: yamaoka, 25552

npostavs@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





^ permalink raw reply	[flat|nested] 22+ messages in thread

* bug#25552: 26.0.50; load cl unintendedly
  2017-04-09 14:25         ` Mike Kupfer
@ 2017-04-14  1:30           ` Mike Kupfer
       [not found]           ` <12659.1492133413@alto>
  1 sibling, 0 replies; 22+ messages in thread
From: Mike Kupfer @ 2017-04-14  1:30 UTC (permalink / raw)
  To: npostavs; +Cc: yamaoka, 25552

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





^ permalink raw reply	[flat|nested] 22+ messages in thread

* bug#25552: 26.0.50; load cl unintendedly
       [not found]           ` <12659.1492133413@alto>
@ 2017-04-14 14:36             ` Noam Postavsky
  2017-04-14 17:05             ` Glenn Morris
                               ` (2 subsequent siblings)
  3 siblings, 0 replies; 22+ messages in thread
From: Noam Postavsky @ 2017-04-14 14:36 UTC (permalink / raw)
  To: Mike Kupfer; +Cc: 25552

On Thu, Apr 13, 2017 at 9:30 PM, Mike Kupfer <mkupfer@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.





^ permalink raw reply	[flat|nested] 22+ messages in thread

* bug#25552: 26.0.50; load cl unintendedly
       [not found]           ` <12659.1492133413@alto>
  2017-04-14 14:36             ` Noam Postavsky
@ 2017-04-14 17:05             ` Glenn Morris
       [not found]             ` <4mefwu2a3a.fsf@fencepost.gnu.org>
       [not found]             ` <CAM-tV-9fuKGbSBY8sDfL5MvAq0iAua5-4USgRrD11AQ+C52Avg@mail.gmail.com>
  3 siblings, 0 replies; 22+ messages in thread
From: Glenn Morris @ 2017-04-14 17:05 UTC (permalink / raw)
  To: Mike Kupfer; +Cc: yamaoka, 25552, npostavs

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.





^ permalink raw reply	[flat|nested] 22+ messages in thread

* bug#25552: 26.0.50; load cl unintendedly
       [not found]             ` <4mefwu2a3a.fsf@fencepost.gnu.org>
@ 2017-04-15 18:17               ` Bill Wohler
  0 siblings, 0 replies; 22+ messages in thread
From: Bill Wohler @ 2017-04-15 18:17 UTC (permalink / raw)
  To: Glenn Morris; +Cc: yamaoka, mkupfer, 25552, npostavs

Glenn Morris <rgm@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@newt.com> aka <Bill.Wohler@nasa.gov>
http://www.newt.com/wohler/
GnuPG ID:610BD9AD





^ permalink raw reply	[flat|nested] 22+ messages in thread

* bug#25552: 26.0.50; load cl unintendedly
       [not found]             ` <CAM-tV-9fuKGbSBY8sDfL5MvAq0iAua5-4USgRrD11AQ+C52Avg@mail.gmail.com>
@ 2017-05-01  5:10               ` Bill Wohler
  0 siblings, 0 replies; 22+ messages in thread
From: Bill Wohler @ 2017-05-01  5:10 UTC (permalink / raw)
  To: Noam Postavsky; +Cc: 25552, mkupfer

[-- Attachment #1: Type: text/plain, Size: 1382 bytes --]

Noam Postavsky <npostavs@users.sourceforge.net> wrote:

> On Thu, Apr 13, 2017 at 9:30 PM, Mike Kupfer <mkupfer@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@newt.com> aka <Bill.Wohler@nasa.gov>
http://www.newt.com/wohler/
GnuPG ID:610BD9AD


[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #2: mh-e.diff --]
[-- Type: text/x-diff, Size: 1540 bytes --]

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:

^ permalink raw reply related	[flat|nested] 22+ messages in thread

* bug#25552: 26.0.50; load cl unintendedly
       [not found] ` <27497.1493615440@olgas.newt.com>
@ 2017-05-01 13:43   ` Mike Kupfer
  0 siblings, 0 replies; 22+ messages in thread
From: Mike Kupfer @ 2017-05-01 13:43 UTC (permalink / raw)
  To: Bill Wohler; +Cc: 25552, npostavs

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





^ permalink raw reply	[flat|nested] 22+ messages in thread

end of thread, other threads:[~2017-05-01 13:43 UTC | newest]

Thread overview: 22+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2017-01-27  1:24 bug#25552: 26.0.50; load cl unintendedly Katsumi Yamaoka
2017-01-27  1:50 ` Katsumi Yamaoka
2017-01-29 17:03 ` npostavs
2017-01-30  3:37   ` Mark Oteiza
2017-01-30 22:35 ` Glenn Morris
2017-01-31 22:39   ` Glenn Morris
2017-02-01  1:09     ` Katsumi Yamaoka
     [not found] ` <b4m60kuk98u.fsf@jpl.org>
2017-02-01  4:02   ` Mike Kupfer
     [not found] ` <17104.1485921740@alto>
2017-02-01 13:51   ` npostavs
2017-02-03  2:05     ` Mike Kupfer
2017-02-03  2:21       ` Jeffrey Honig
     [not found]       ` <CAC5WE8qFGjt5bLsbVJrvUttPOom8nN+Xe-WuW1zTvpaHvf=5BQ@mail.gmail.com>
2017-02-03  6:30         ` Bill Wohler
2017-02-06  1:25           ` Jeffrey Honig
2017-02-06  2:03           ` Glenn Morris
2017-04-09 12:01       ` npostavs
2017-04-09 14:25         ` Mike Kupfer
2017-04-14  1:30           ` Mike Kupfer
     [not found]           ` <12659.1492133413@alto>
2017-04-14 14:36             ` Noam Postavsky
2017-04-14 17:05             ` Glenn Morris
     [not found]             ` <4mefwu2a3a.fsf@fencepost.gnu.org>
2017-04-15 18:17               ` Bill Wohler
     [not found]             ` <CAM-tV-9fuKGbSBY8sDfL5MvAq0iAua5-4USgRrD11AQ+C52Avg@mail.gmail.com>
2017-05-01  5:10               ` Bill Wohler
     [not found] ` <27497.1493615440@olgas.newt.com>
2017-05-01 13:43   ` Mike Kupfer

Code repositories for project(s) associated with this public inbox

	https://git.savannah.gnu.org/cgit/emacs.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).