GNU bug report logs - #43385
27.1; Regression in `find-library'

Previous Next

Package: emacs;

Reported by: Drew Adams <drew.adams <at> oracle.com>

Date: Sun, 13 Sep 2020 21:26:02 UTC

Severity: normal

Tags: notabug

Found in version 27.1

Done: Lars Ingebrigtsen <larsi <at> gnus.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 43385 in the body.
You can then email your comments to 43385 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#43385; Package emacs. (Sun, 13 Sep 2020 21:26:02 GMT) Full text and rfc822 format available.

Acknowledgement sent to Drew Adams <drew.adams <at> oracle.com>:
New bug report received and forwarded. Copy sent to bug-gnu-emacs <at> gnu.org. (Sun, 13 Sep 2020 21:26:02 GMT) Full text and rfc822 format available.

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

From: Drew Adams <drew.adams <at> oracle.com>
To: bug-gnu-emacs <at> gnu.org
Subject: 27.1; Regression in `find-library'
Date: Sun, 13 Sep 2020 21:25:02 +0000 (UTC)
emacs -Q

M-x find-library RET mouse. TAB

No match.  It should show mouse.el and mouse.elc as completions.

This is a regression.

In GNU Emacs 27.1 (build 1, x86_64-w64-mingw32)
 of 2020-08-12 built on CIRROCUMULUS
Repository revision: 86d8d76aa36037184db0b2897c434cdaab1a9ae8
Repository branch: HEAD
Windowing system distributor 'Microsoft Corp.', version 10.0.18362
System Description: Microsoft Windows 10 Pro (v10.0.1903.18362.1016)




Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#43385; Package emacs. (Sun, 13 Sep 2020 23:26:02 GMT) Full text and rfc822 format available.

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

From: Lars Ingebrigtsen <larsi <at> gnus.org>
To: Drew Adams <drew.adams <at> oracle.com>
Cc: 43385 <at> debbugs.gnu.org
Subject: Re: bug#43385: 27.1; Regression in `find-library'
Date: Mon, 14 Sep 2020 01:25:01 +0200
Drew Adams <drew.adams <at> oracle.com> writes:

> emacs -Q
>
> M-x find-library RET mouse. TAB
>
> No match.  It should show mouse.el and mouse.elc as completions.

No, it shouldn't -- it should complete over library names, and the
library name is "mouse", not "mouse.el" or "mouse.elc".

(Closing this bug report.)

-- 
(domestic pets only, the antidote for overdose, milk.)
   bloggy blog: http://lars.ingebrigtsen.no




Added tag(s) notabug. Request was from Lars Ingebrigtsen <larsi <at> gnus.org> to control <at> debbugs.gnu.org. (Sun, 13 Sep 2020 23:26:02 GMT) Full text and rfc822 format available.

bug closed, send any further explanations to 43385 <at> debbugs.gnu.org and Drew Adams <drew.adams <at> oracle.com> Request was from Lars Ingebrigtsen <larsi <at> gnus.org> to control <at> debbugs.gnu.org. (Sun, 13 Sep 2020 23:26:02 GMT) Full text and rfc822 format available.

Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#43385; Package emacs. (Sun, 13 Sep 2020 23:52:02 GMT) Full text and rfc822 format available.

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

From: Drew Adams <drew.adams <at> oracle.com>
To: Lars Ingebrigtsen <larsi <at> gnus.org>
Cc: 43385 <at> debbugs.gnu.org
Subject: RE: bug#43385: 27.1; Regression in `find-library'
Date: Sun, 13 Sep 2020 23:49:08 +0000 (UTC)
> > emacs -Q
> >
> > M-x find-library RET mouse. TAB
> >
> > No match.  It should show mouse.el and mouse.elc as completions.
> 
> No, it shouldn't -- it should complete over library names, and the
> library name is "mouse", not "mouse.el" or "mouse.elc".
> 
> (Closing this bug report.)

I _really_ disagree.  The latter has always been the
behavior, since Day One.

It allows you to load either the .el or the .elc, au
choix, without needing to specify or even know where
those are located.

You CAN just provide the base name, with no extension,
which picks up one or the other, according to the
well-documented lookup behavior.  That too is a feature.

But it's just as much a feature to be able to specify
which one you want to load.  This is about LOADING.
Loading Lisp code can involve loading source or
byte-compiled code.  Users should be able to control
which gets loaded, when both are available (in the
`load-path').

All three, mouse, mouse.el, and mouse.elc, are library
names - ways to refer to a library.  Interactively, the
first is a shortcut for a complex lookup procedure to
get to one of the others.

This is a definite step backward, an incompatible
change - a regression that hurts users.  (And it's not
even called out in NEWS as an intentional change.)

I can't believe that you would defend this as an
improvement.  I've been able to specify which I want
since 1985.




Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#43385; Package emacs. (Mon, 14 Sep 2020 14:49:02 GMT) Full text and rfc822 format available.

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

From: Eli Zaretskii <eliz <at> gnu.org>
To: Lars Ingebrigtsen <larsi <at> gnus.org>
Cc: 43385 <at> debbugs.gnu.org, drew.adams <at> oracle.com
Subject: Re: bug#43385: 27.1; Regression in `find-library'
Date: Mon, 14 Sep 2020 17:48:17 +0300
> From: Lars Ingebrigtsen <larsi <at> gnus.org>
> Date: Mon, 14 Sep 2020 01:25:01 +0200
> Cc: 43385 <at> debbugs.gnu.org
> 
> Drew Adams <drew.adams <at> oracle.com> writes:
> 
> > emacs -Q
> >
> > M-x find-library RET mouse. TAB
> >
> > No match.  It should show mouse.el and mouse.elc as completions.
> 
> No, it shouldn't -- it should complete over library names, and the
> library name is "mouse", not "mouse.el" or "mouse.elc".

So you think this change from what Emacs 26.3 did is intentional?  Is
there some NEWS item to describe it?  And which change modified this
behavior?

In general, "M-x load-library RET" definitely does accept mouse.el, so
I'm not sure the current behavior is correct, or even intentional.




Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#43385; Package emacs. (Mon, 14 Sep 2020 14:52:02 GMT) Full text and rfc822 format available.

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

From: Lars Ingebrigtsen <larsi <at> gnus.org>
To: Eli Zaretskii <eliz <at> gnu.org>
Cc: 43385 <at> debbugs.gnu.org, drew.adams <at> oracle.com
Subject: Re: bug#43385: 27.1; Regression in `find-library'
Date: Mon, 14 Sep 2020 16:51:20 +0200
Eli Zaretskii <eliz <at> gnu.org> writes:

> So you think this change from what Emacs 26.3 did is intentional?  Is
> there some NEWS item to describe it?  And which change modified this
> behavior?
>
> In general, "M-x load-library RET" definitely does accept mouse.el, so
> I'm not sure the current behavior is correct, or even intentional.

That bit was intentional, but has now been reverted, because (in a
related bug report from Stefan) it was reported that it failed to
complete "org/o" now.

-- 
(domestic pets only, the antidote for overdose, milk.)
   bloggy blog: http://lars.ingebrigtsen.no




Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#43385; Package emacs. (Mon, 14 Sep 2020 15:08:02 GMT) Full text and rfc822 format available.

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

From: Drew Adams <drew.adams <at> oracle.com>
To: Lars Ingebrigtsen <larsi <at> gnus.org>
Cc: 43385 <at> debbugs.gnu.org
Subject: RE: bug#43385: 27.1; Regression in `find-library'
Date: Mon, 14 Sep 2020 15:04:55 +0000 (UTC)
> > No, it shouldn't -- it should complete over library names, and the
> > library name is "mouse", not "mouse.el" or "mouse.elc".
> >
> > (Closing this bug report.)
> 
> I _really_ disagree.  The latter has always been the
> behavior, since Day One.
> 
> It allows you to load either the .el or the .elc, au
> choix, without needing to specify or even know where
> those are located.
> 
> You CAN just provide the base name, with no extension,
> which picks up one or the other, according to the
> well-documented lookup behavior.  That too is a feature.
> 
> But it's just as much a feature to be able to specify
> which one you want to load.  This is about LOADING.
> Loading Lisp code can involve loading source or
> byte-compiled code.  Users should be able to control
> which gets loaded, when both are available (in the
> `load-path').
> 
> All three, mouse, mouse.el, and mouse.elc, are library
> names - ways to refer to a library.  Interactively, the
> first is a shortcut for a complex lookup procedure to
> get to one of the others.
> 
> This is a definite step backward, an incompatible
> change - a regression that hurts users.  (And it's not
> even called out in NEWS as an intentional change.)
> 
> I can't believe that you would defend this as an
> improvement.  I've been able to specify which I want
> since 1985.

I spoke here of "loading", not "finding" the library.
Sorry, that was a mistake.  (And `find-library', unlike
`load-library', which I was thinking of there, didn't
exist in 1985.)

But it points out precisely the problem.  `load-library'
does NOT have this regression.  Your argument about the
library being only "mouse" clearly doesn't apply for
`load-library': you can do `M-x load-library mouse. TAB'
and you get the expected completions.

`find-library' should behave the same way, as it always
has, before this regression.  Please reconsider.  Thx.




Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#43385; Package emacs. (Mon, 14 Sep 2020 15:22:02 GMT) Full text and rfc822 format available.

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

From: Drew Adams <drew.adams <at> oracle.com>
To: Eli Zaretskii <eliz <at> gnu.org>, Lars Ingebrigtsen <larsi <at> gnus.org>
Cc: 43385 <at> debbugs.gnu.org, drew.adams <at> oracle.com
Subject: RE: bug#43385: 27.1; Regression in `find-library'
Date: Mon, 14 Sep 2020 15:19:47 +0000 (UTC)
> > > emacs -Q
> > >
> > > M-x find-library RET mouse. TAB
> > >
> > > No match.  It should show mouse.el and mouse.elc as completions.
> >
> > No, it shouldn't -- it should complete over library names, and the
> > library name is "mouse", not "mouse.el" or "mouse.elc".
> 
> So you think this change from what Emacs 26.3 did is intentional?  Is
> there some NEWS item to describe it?  And which change modified this
> behavior?
> 
> In general, "M-x load-library RET" definitely does accept mouse.el, so
> I'm not sure the current behavior is correct, or even intentional.

To be clear, I confused things by speaking of
"loading" the library.  I myself lost track of
the fact that this bug report is instead about
`find-library'.  `load-library' does not have
the problem (regression) that `find-library'
suffers from.  I think `find-library' should
be fixed to behave as before, which is similar
to how `load-library' behaves.




bug archived. Request was from Debbugs Internal Request <help-debbugs <at> gnu.org> to internal_control <at> debbugs.gnu.org. (Tue, 13 Oct 2020 11:24:08 GMT) Full text and rfc822 format available.

This bug report was last modified 4 years and 245 days ago.

Previous Next


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